EdJoJob (Thu, 29 Aug 2019 22:11:29 GMT):
Has joined the channel.

dhuseby (Thu, 29 Aug 2019 23:04:46 GMT):
Has joined the channel.

dhuseby (Thu, 29 Aug 2019 23:04:55 GMT):
hello! welcome

ajsutton (Fri, 30 Aug 2019 02:01:35 GMT):
Has joined the channel.

ajsutton (Fri, 30 Aug 2019 02:02:12 GMT):
Nice be(su?) here...

ajsutton (Fri, 30 Aug 2019 02:02:12 GMT):
Nice to be(su?) here...

joshuafernandes (Fri, 30 Aug 2019 02:48:54 GMT):
Has joined the channel.

joshuafernandes (Fri, 30 Aug 2019 02:49:23 GMT):
Ola!

macfarla (Fri, 30 Aug 2019 03:46:22 GMT):
Has joined the channel.

macfarla (Fri, 30 Aug 2019 03:46:22 GMT):
greetings

bretthenderson (Fri, 30 Aug 2019 03:59:14 GMT):
Has joined the channel.

bretthenderson (Fri, 30 Aug 2019 03:59:14 GMT):
Hi David.

VijayMichalik (Fri, 30 Aug 2019 09:34:27 GMT):
Has joined the channel.

faraggi (Fri, 30 Aug 2019 09:59:32 GMT):
Has joined the channel.

faraggi (Fri, 30 Aug 2019 09:59:32 GMT):
Hello everyone! This new place is nice! *There's so much room for activities! *

Hyungsuk Kang (Fri, 30 Aug 2019 10:57:37 GMT):
Has joined the channel.

Hyungsuk Kang (Fri, 30 Aug 2019 10:57:37 GMT):
hello

shemnon (Fri, 30 Aug 2019 14:26:34 GMT):
Has joined the channel.

shemnon (Fri, 30 Aug 2019 14:27:32 GMT):
Hello everyone!

rjones (Fri, 30 Aug 2019 15:08:28 GMT):
joshuafernandes

rjones (Fri, 30 Aug 2019 15:11:00 GMT):
joshuafernandes

rjones (Fri, 30 Aug 2019 15:43:15 GMT):
joshuafernandes

Khaled.MH (Fri, 30 Aug 2019 16:12:28 GMT):
Has joined the channel.

rjones (Fri, 30 Aug 2019 16:27:26 GMT):
Has left the channel.

VipinB (Fri, 30 Aug 2019 18:56:02 GMT):
Has joined the channel.

VipinB (Fri, 30 Aug 2019 18:56:26 GMT):
Welcome #besu

HLFPOC (Sat, 31 Aug 2019 11:19:51 GMT):
Has joined the channel.

lucassaldanha (Sat, 31 Aug 2019 15:24:16 GMT):
Has joined the channel.

faraggi (Mon, 02 Sep 2019 13:51:21 GMT):
*PSA: * Hello and welcome everyone to the Hyperledger #besu community chat. In the spirit of improving the way we communicate and the information you receive, we've put together a short survey to gather your feedback. All answers are optional, and we'd love to hear what you have to say! https://forms.gle/4Jddy7bSPFa9a2zz6

yacovm (Mon, 02 Sep 2019 14:15:10 GMT):
Has joined the channel.

arner (Mon, 02 Sep 2019 18:04:07 GMT):
Has joined the channel.

RicardoMurillo (Mon, 02 Sep 2019 22:03:07 GMT):
Has joined the channel.

RicardoMurillo (Mon, 02 Sep 2019 22:03:08 GMT):
Hi Felipe!

faraggi (Tue, 03 Sep 2019 08:36:46 GMT):
Hello @RicardoMurillo , welcome.

rai (Tue, 03 Sep 2019 13:06:29 GMT):
Has joined the channel.

rai (Tue, 03 Sep 2019 13:06:30 GMT):
:besu:

guoger (Wed, 04 Sep 2019 05:37:08 GMT):
Has joined the channel.

rjones (Wed, 04 Sep 2019 15:57:17 GMT):
Has joined the channel.

rjones (Wed, 04 Sep 2019 22:21:28 GMT):
:besu:

rjones (Wed, 04 Sep 2019 22:21:44 GMT):
(that's the new `:besu:` emoji

ajsutton (Wed, 04 Sep 2019 22:34:32 GMT):
It's not official until you have an emoji. :) :besu:

shemnon (Wed, 04 Sep 2019 22:40:15 GMT):
All your :besu: are belong to :hyperledger:

shahankhatch (Wed, 04 Sep 2019 23:14:52 GMT):
Has joined the channel.

faraggi (Thu, 05 Sep 2019 08:47:43 GMT):
@rjones I tried uploading it yesterday and couldn't find out how. thanks.

Hyungsuk Kang (Thu, 05 Sep 2019 18:01:24 GMT):
is besu pantheon? if it is, can I just jump straight to its quickstart tutorials?

shemnon (Thu, 05 Sep 2019 18:06:17 GMT):
Yes, with some name changes. We haven't moved the repos over yet but it is anticipated to include stuff like quickstart.

shemnon (Thu, 05 Sep 2019 18:06:51 GMT):
so stuff like `bin/pantheon` might becomes `bin/besu` but all the options should remain the same.

RealDeanZhao (Fri, 06 Sep 2019 02:37:38 GMT):
Has joined the channel.

faraggi (Fri, 06 Sep 2019 07:15:39 GMT):
@Hyungsuk Kang Sure! jump right in and if you have any questions, don't hesitate to ask them here.

VipinB (Fri, 06 Sep 2019 15:22:56 GMT):
Any data on privacy? We are now meeting on the Privacy and confidentiality subgroup of the Architecture WG. We were wondering about Orion? We would appreciate if a privacy expert from Besu takes a look at our paper

shemnon (Fri, 06 Sep 2019 15:31:45 GMT):
None of our engineers working on privacy are currently in this rocket chat. Let me see if I can get them to onboard and discuss.

binhn (Fri, 06 Sep 2019 15:51:35 GMT):
Has joined the channel.

AnilSingh (Fri, 06 Sep 2019 16:58:36 GMT):
Has joined the channel.

madelinemurray (Fri, 06 Sep 2019 23:11:33 GMT):
Has joined the channel.

madelinemurray (Fri, 06 Sep 2019 23:11:34 GMT):
@VipinB - is there specific information you're looking for? I can organise for someone to look at the paper if you point me in the direction of it. Here's links to the privacy and Orion documentation (the Pantheon documentation will be rebranded as Besu documentation shortly): https://docs.pantheon.pegasys.tech/en/latest/Concepts/Privacy/Private-Transaction-Processing/ https://docs.pantheon.pegasys.tech/en/latest/Concepts/Privacy/Privacy-Groups/ https://docs.orion.pegasys.tech/en/latest/

VipinB (Sat, 07 Sep 2019 00:32:29 GMT):
Thanks @madelinemurray That is a good start. Will you (or one of your associates) be able to do a presentation on the Privacy and Confidentiality sub group call 2 weeks from today at 11 am EDT (3 pm UTC) the call is run by Mic Bowman. He will have someone from TCF (Trusted Computing Framework- soon to be renamed) presenting as well. Our output will be a cross platform paper on Privacy put out by the Architecture Working Group. We have already put out papers on Consensus and Smart Contracts; we are working on Interoperability and Privacy and Confidentiality. We normally have sections that are more generic, stating the problem and then sections on the individual frameworks in Hyperledger on the topic, which call out the ways in which they have solved the problem and the differences in their approach. By doing this we also hope to make the Engineers look at ways in which others have solved the same problem and to get feedback from the community members on how to improve their solutions.

madelinemurray (Sat, 07 Sep 2019 00:38:48 GMT):
@VipinB - can you send me the links to the Consensus and Smart Contracts papers please. That'll help me figure out who's best to get involved in presenting.

VipinB (Sat, 07 Sep 2019 00:44:21 GMT):
The wiki for the Architecture working group is https://wiki.hyperledger.org/display/AWG the papers are linked from there under the heading "Links to completed work". In fact those papers need updates from Besu as well as we intend to keep them uptodate and function as living documents.

iikirilov (Sat, 07 Sep 2019 14:26:34 GMT):
Has joined the channel.

iikirilov (Sat, 07 Sep 2019 14:38:31 GMT):
Greetings all - @VipinB I am your contact for all things privacy regarding Besu.

VipinB (Sat, 07 Sep 2019 19:43:14 GMT):
@iikirilov Thanks. I will post your contact on the AWG. We can interact there #architecture-wg

trent.mohay (Sun, 08 Sep 2019 23:01:49 GMT):
Has joined the channel.

antonydenyer (Mon, 09 Sep 2019 10:22:17 GMT):
Has joined the channel.

mbaxter (Mon, 09 Sep 2019 13:29:38 GMT):
Has joined the channel.

Hyungsuk Kang (Mon, 09 Sep 2019 13:37:24 GMT):
Is community activities supported?

shemnon (Mon, 09 Sep 2019 14:25:22 GMT):
Can you clarify what you mean by community activities?

Hyungsuk Kang (Mon, 09 Sep 2019 14:32:38 GMT):
sorry, the detail is that I want to teach or make courses on how to make private blockchain with Pantheon(Hyperledger Besu).

Hyungsuk Kang (Mon, 09 Sep 2019 14:33:13 GMT):
Is there a technical ambassador program where I can have consistent support or feedback?

faraggi (Mon, 09 Sep 2019 15:53:53 GMT):
@Hyungsuk Kang Hi! We're currently working on an ambassador program. We're still working out the details, but the idea is to give you more in depth support and feedback. We have a couple of requirements to becoming one, like having done the Besu Certification. PM for more details if this interests you.

Kaia2104 (Tue, 10 Sep 2019 02:28:54 GMT):
Has joined the channel.

Kaia2104 (Tue, 10 Sep 2019 02:28:58 GMT):
Thanks Vipin, who is the right person to touch base with about updating those papers with Hyperledger besu content? I can get in touch with them. :)

VipinB (Tue, 10 Sep 2019 04:38:05 GMT):
I think @rjagadee the chair of the AWG

faraggi (Tue, 10 Sep 2019 10:05:04 GMT):
^ Just FYI, this is our certification program: https://learn.consensys.net/catalog/info/id:151 (still not renamed)

grace.hartley (Wed, 11 Sep 2019 18:33:06 GMT):
Has joined the channel.

NicolasMassart (Wed, 11 Sep 2019 22:14:06 GMT):
Has joined the channel.

Kaia2104 (Thu, 12 Sep 2019 05:58:06 GMT):
Thanks! @rjagadee anything I can help with on the updates?

ajsutton (Thu, 12 Sep 2019 15:21:38 GMT):
We plan to migrate the PegaSysEng/pantheon repo to hyperledger/besu and do the tech.pegasys.pantheon to org.hyperledger.besu rename on 16 Sept AEST (UTC+10). There will be a code freeze from 1600 on 15 Sept AEST (UTC+10) until the migration is completed. We'll notify this channel when that is complete. Any work not on the master branch of the PegaSysEng/pantheon repo by the time of the code freeze will need to be manually migrated to the new namespace and applied to a fresh clone of the new hyperledger/besu repo.

faisal.khan (Thu, 12 Sep 2019 15:57:56 GMT):
Has joined the channel.

faisal.khan (Thu, 12 Sep 2019 15:58:55 GMT):
:besu:

shemnon (Thu, 12 Sep 2019 16:26:46 GMT):
We are starting our #HyperledgerBesu contributor calls next week with an APAC/AMER friendly time, 0100 UTC on 17 Sep (or 11am Brisbane Tues 17 Sep, 9pm SF Mon 16 Sep) - https://wiki.hyperledger.org/display/BESU/2019-09-17+Besu+Contributor+Call Our next call will be an EMEA/AMER friendly time at 1500 UTC on Tues 1 Oct (or 5pm Paris/Berlin, 11am New York, no agenda yet). Calls will be bi-weekly and will alternate APAC/EMEA friendliness.

shemnon (Thu, 12 Sep 2019 16:26:46 GMT):
We are starting our #HyperledgerBesu contributor calls next week with an APAC/AMER friendly time, 0100 UTC on 17 Sep (or 11am Brisbane Tues 17 Sep, 9pm New York Mon 16 Sep) - https://wiki.hyperledger.org/display/BESU/2019-09-17+Besu+Contributor+Call Our next call will be an EMEA/AMER friendly time at 1500 UTC on Tues 1 Oct (or 5pm Paris/Berlin, 11am New York, no agenda yet). Calls will be bi-weekly and will alternate APAC/EMEA friendliness.

joshuafernandes (Thu, 12 Sep 2019 22:52:10 GMT):
@here: - We will be migrating the PegaSysEng/pantheon repo to hyperledger/besu and doing the tech.pegasys.pantheon to org.hyperledger.besu rename on 16 Sept AEST (UTC+10). There will be a code freeze from 1600 on 15 Sept AEST (UTC+10) until the migration is completed. We'll notify this channel when that is complete. Any work not on the master branch of the PegaSysEng/pantheon repo by the time of the code freeze will need to be manually migrated to the new namespace and applied to a fresh clone of the new hyperledger/besu repo. - Docs for besu will be up on https://besu.hyperledger.org mid next week. https://docs.pantheon.pegasys.tech will still exist for a bit till 1.3.1 at which point we will do a redirect to https://besu.hyperledger.org - Please subscribe to the Besu mailing list here: https://lists.hyperledger.org/g/besu/join, more details at https://wiki.hyperledger.org/display/BESU/Hyperledger+Besu.

usmansaleem (Fri, 13 Sep 2019 00:20:46 GMT):
Has joined the channel.

drinkcoffee (Fri, 13 Sep 2019 01:32:17 GMT):
Has joined the channel.

jframe (Fri, 13 Sep 2019 01:45:09 GMT):
Has joined the channel.

roderik (Fri, 13 Sep 2019 08:40:56 GMT):
Has joined the channel.

roderik (Fri, 13 Sep 2019 09:22:37 GMT):
Will the docker containers stay on dockerhub under the old container name, or move to somewhere else?

rjones (Fri, 13 Sep 2019 11:29:23 GMT):
@roderik https://cloud.docker.com/u/hyperledger/repository/docker/hyperledger/besu

roderik (Fri, 13 Sep 2019 11:39:58 GMT):
@rjones nice, but the stable tags are not there yet: https://hub.docker.com/r/hyperledger/besu/tags

rjones (Fri, 13 Sep 2019 12:12:58 GMT):
right, I was pointing out where I expect them to land.

rjones (Fri, 13 Sep 2019 12:13:54 GMT):
@roderik please keep in mind - I'm not working on Besu, I'm a functionary for Hyperledger ;)

rjones (Fri, 13 Sep 2019 12:13:54 GMT):
@roderik please keep in mind - I'm not working on :besu: , I'm a functionary for Hyperledger ;)

roderik (Fri, 13 Sep 2019 12:28:37 GMT):
:thumbsup:

shemnon (Fri, 13 Sep 2019 13:55:51 GMT):
I would expect those to start landing next week, after the codebase rename and move.

shemnon (Fri, 13 Sep 2019 13:56:41 GMT):
but if it ever had a pantheon name it will get renamed, to besu.

VipinB (Fri, 13 Sep 2019 14:22:01 GMT):
You mean 0100 UTC on 17 Sep (or 11am Brisbane Tues 17 Sep, *6*pm SF Mon 16 Sep)

shemnon (Fri, 13 Sep 2019 14:25:56 GMT):
Yea, I got SF and NY mixed up. SF is 6pm NY is 9pm, on 17 sep.

shemnon (Fri, 13 Sep 2019 14:25:56 GMT):
Yea, I got SF and NY mixed up. SF is 6pm NY is 9pm, on 17 sep. I edited the prior chat message to fix it. (and wow, you can edit messages days later !?!)

shemnon (Fri, 13 Sep 2019 14:26:21 GMT):
wiki page has it right.

rjones (Fri, 13 Sep 2019 15:06:29 GMT):
@shemnon I can change that setting (edit length) but I really have no interest in micro-managing stuff like that

shemnon (Fri, 13 Sep 2019 15:07:26 GMT):
I'm it is an option to be honest. Gitter and slack have like 15 min limits. No need to tweak knobs.

rjones (Fri, 13 Sep 2019 15:07:39 GMT):
but that is literally my job

shemnon (Fri, 13 Sep 2019 15:07:54 GMT):
I like being able to go back and correct errors like this.

VipinB (Fri, 13 Sep 2019 15:08:49 GMT):
I think it is OK to change messages if that is not what you meant or made an error... This is not an immutable record- we have too many things like that

VipinB (Fri, 13 Sep 2019 15:09:52 GMT):
It is also not a malicious thing- not everything is, this ability to change (by the original author) should not be limited.

rjones (Fri, 13 Sep 2019 15:10:53 GMT):
should not, may not, or must not?

shemnon (Fri, 13 Sep 2019 15:11:20 GMT):
I also think that unless we see malicious actions (gaslighting edit/i-never-said-that stuff) with the editing we leave it as-is. So should not.

josh-richardson (Fri, 13 Sep 2019 15:26:02 GMT):
Has joined the channel.

knagware9 (Fri, 13 Sep 2019 16:07:18 GMT):
Has joined the channel.

pinges (Mon, 16 Sep 2019 00:27:30 GMT):
Has joined the channel.

joshuafernandes (Mon, 16 Sep 2019 02:50:17 GMT):
@here: https://github.com/hyperledger/besu is now ready to go - code from pantheon has been migrated across

swkim109 (Mon, 16 Sep 2019 03:52:06 GMT):
Has joined the channel.

swkim109 (Mon, 16 Sep 2019 03:52:49 GMT):
Hello! Besu!

swkim109 (Mon, 16 Sep 2019 03:52:49 GMT):
Hello! Besu! :besu:

HLFPOC (Mon, 16 Sep 2019 05:26:35 GMT):
Hello team, In order to learn and start application development using :besu: , is learning ethereum a prerequisite or all the concepts will be covered under besu documentation ?

madelinemurray (Mon, 16 Sep 2019 06:03:51 GMT):
Besu documentation doesn't cover all Ethereum concepts. Have you got experience developing using other Ethereum clients? If so, the Besu docs cover concepts that are specific to Besu.

HLFPOC (Mon, 16 Sep 2019 08:51:46 GMT):
Thanks for your reply, I don't have hands on experience with any of the Ethereum clients. Can you recommend me some tutorials/documentation to start with ?

NicolasMassart (Mon, 16 Sep 2019 08:57:26 GMT):
What kind of development do you want to do? protocol dev, like contribute to Besu or develop dapps and smart contracts?

faraggi (Mon, 16 Sep 2019 09:03:13 GMT):
What development experience do you have? Its helpful to know in order to guide you a bit more.

HLFPOC (Mon, 16 Sep 2019 09:51:04 GMT):
I am a software developer and have experience on developing applications using Hyperledger fabric. Right now I am looking to develop Dapps using Besu.

GinaRubino (Mon, 16 Sep 2019 11:21:36 GMT):
Has joined the channel.

jakehaugen (Mon, 16 Sep 2019 14:17:52 GMT):
Has joined the channel.

faraggi (Mon, 16 Sep 2019 14:42:53 GMT):
In that case, I would recommend doing a refresher on ethereum basics. You already know solidity, which is a great stepping stone, but some things on the protocol level change quite a lot. Afterall, Besu is a ethereum client and you'll need to know the full stack at least a bit.

faraggi (Mon, 16 Sep 2019 14:43:45 GMT):
Having said that; feel free to ask questions you aren't sure are generic ethereum or besu-specific, and we'll do our best to answer them, or to point you to the correct place.

tommyjay (Mon, 16 Sep 2019 14:57:35 GMT):
Has joined the channel.

HLFPOC (Mon, 16 Sep 2019 15:11:39 GMT):
Sure, Thanks a lot

timbeiko (Mon, 16 Sep 2019 15:13:52 GMT):
Has joined the channel.

rjones (Mon, 16 Sep 2019 15:35:22 GMT):
Has left the channel.

Silona (Mon, 16 Sep 2019 18:19:33 GMT):
Has joined the channel.

cristpereirag (Mon, 16 Sep 2019 20:59:42 GMT):
Has joined the channel.

cristpereirag (Mon, 16 Sep 2019 21:00:58 GMT):
Hi everyone! one question, it will be posible to create tokens like erc-20 or erc-721 in Besu just like in ethereum?

shemnon (Mon, 16 Sep 2019 21:24:08 GMT):
Yes, Besu has the full EVM implementation. If you connect to mainnet you can interact with existing ERC-20 tokens. If you create a private network you can still do ERC-20 tokens as well on your private network.

shemnon (Mon, 16 Sep 2019 21:24:16 GMT):
Same as ERC-721

cristpereirag (Mon, 16 Sep 2019 21:29:04 GMT):
Thanks for that info! So, if I already have a working token on Ethereum mainnet, I can use it on my Besu network?

carlosfaria (Mon, 16 Sep 2019 21:32:18 GMT):
Has joined the channel.

swkim109 (Tue, 17 Sep 2019 01:05:39 GMT):
I think you can deploy it on Besu without any change in contracts.

ajsutton (Tue, 17 Sep 2019 01:24:49 GMT):
Yep exactly. And you can also sync Besu to MainNet and use the existing contract.

EdJoJob (Tue, 17 Sep 2019 03:19:15 GMT):
Hi all, a _very_ basic and not-at-all comprehensive guide to getting started with contributing to Hyperledger Besu is at https://wiki.hyperledger.org/display/BESU/How+to+Contribute

daisuke1983 (Tue, 17 Sep 2019 03:48:59 GMT):
Has joined the channel.

drinkcoffee (Tue, 17 Sep 2019 03:49:09 GMT):
Version is StateTrieAccountValue: see line 101. https://github.com/PegaSysEng/sidechains-besu/blob/master/ethereum/core/src/main/java/org/hyperledger/besu/ethereum/worldstate/StateTrieAccountValue.java Questions: - What is the version for? - Has this field been enabled / are people using it? The Sidechains team have also extended the account state stored in World State. Our implementation starts with set of flags which can be used to determine if the world state has extra information. If the flags don't exist, then nothing is stored. If the (optional) version data isn't in active use, then it would be good if it could use the same mechanism.

shemnon (Tue, 17 Sep 2019 03:50:15 GMT):
It is for EIP-1702

shemnon (Tue, 17 Sep 2019 03:50:44 GMT):
https://github.com/ethereum/EIPs/blob/master/EIPS/eip-1702.md

shemnon (Tue, 17 Sep 2019 03:51:43 GMT):
No one is using it yet. It may disappear. Since this affects world state we should be careful using it for anything not in an EIP.

drinkcoffee (Tue, 17 Sep 2019 04:01:41 GMT):
Thanks for the quick response. World state is something which is local to a node isn't it? As such, isn't it up to the individual Ethereum Client implementation how it stores its information? Obviously we have to be careful to not cause state explosion.

shemnon (Tue, 17 Sep 2019 04:02:07 GMT):
No, this is what is used to calculate the world state hash as part of each block.

shemnon (Tue, 17 Sep 2019 04:03:06 GMT):
The RLP generated is thrown into a patricia tree (based on the account) and that is where consensus is derived to an extent.

shemnon (Tue, 17 Sep 2019 04:04:29 GMT):
It's meant as a flag for introducing backwards incompatible change into the EVM or adding the eWASM VM.

drinkcoffee (Tue, 17 Sep 2019 04:04:51 GMT):
Hmmmm.... so, indirectly, the local RLP of the world state leaks. As such, for MainNet compatibility, we need to ensure any changes are transparent.

drinkcoffee (Tue, 17 Sep 2019 04:04:54 GMT):
ok

shemnon (Tue, 17 Sep 2019 04:05:02 GMT):
basically.

drinkcoffee (Tue, 17 Sep 2019 04:05:54 GMT):
I will deal with this after the sidechains merge / update to besu. Almost done.

RealDeanZhao (Tue, 17 Sep 2019 06:23:04 GMT):
Hi, there are no docker images for tag 1.3.0 and latest. Can I use 1.2.4-SNAPSHOT?

bretthenderson (Tue, 17 Sep 2019 06:49:06 GMT):
Release 1.3.0 isn't out yet, so the latest is the 1.2.4-SNAPSHOT

RealDeanZhao (Tue, 17 Sep 2019 06:57:19 GMT):
Thanks, i will try 1.2.4

drinkcoffee (Tue, 17 Sep 2019 07:15:07 GMT):
@ajsutton I put a pull request in (https://github.com/hyperledger/besu/pull/17). It is just tiny. What is the process from here? Should I contact someone directly, or is there a daily / weekly review?

RealDeanZhao (Tue, 17 Sep 2019 07:18:05 GMT):
```2019-09-17 07:16:22.812+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, wait for peers. 2019-09-17 07:16:23.042+00:00 | pool-9-thread-1 | INFO | BlockMiner | Produced and imported block #1,579 / 0 tx / 0 om / 0 (0.0%) gas / (0xc08d129373fbcd02f851d026391135348af7f8520e08625fe19eaa3b9f61279b) in 0.040s 2019-09-17 07:16:24.090+00:00 | pool-9-thread-2 | INFO | BlockMiner | Produced and imported block #1,580 / 0 tx / 0 om / 0 (0.0%) gas / (0x0fbea57c2d63dd6ddc708fdf5898916ffa4d9a7c0a5548eb584748cc3fb8ce7e) in 0.088s 2019-09-17 07:16:25.014+00:00 | pool-9-thread-1 | INFO | BlockMiner | Produced and imported block #1,581```

RealDeanZhao (Tue, 17 Sep 2019 07:18:52 GMT):
I start a node use dev network, the syncing result is still false after 30 minutes.

RealDeanZhao (Tue, 17 Sep 2019 07:24:51 GMT):
```docker volume create besu_dev_volume docker run \ -p 8545:8545 \ -p 8546:8546 \ -p 30303:30303 \ -v besu_dev_volume:/var/lib/besu \ hyperledger/besu:develop \ --data-path=/var/lib/besu \ --miner-enabled \ --miner-coinbase fe3b557e8fb62b89f4916b721be55ceb828dbd73 \ --network=dev \ --rpc-http-enabled \ --rpc-ws-enabled \ --graphql-http-enabled \ --rpc-http-host=0.0.0.0 \ --rpc-ws-host=0.0.0.0 \ --graphql-http-host=0.0.0.0 ```

faraggi (Tue, 17 Sep 2019 10:56:32 GMT):
@drinkcoffee The review process and reaction time will be posted to the wiki in the following days. In practice, the reviews will depend on criticalness of the commit + difficulty to review. Normally, we will recommend nudging after a determined time without maintainer action. This will also be covered in the wiki.

NicolasMassart (Tue, 17 Sep 2019 11:01:10 GMT):
@RealDeanZhao can you post the command lines used to run your other nodes on this dev network?

antoniosngular (Tue, 17 Sep 2019 11:02:42 GMT):
Has joined the channel.

RealDeanZhao (Tue, 17 Sep 2019 11:04:04 GMT):
I didn't use the commands to start other nodes.

RealDeanZhao (Tue, 17 Sep 2019 11:04:35 GMT):
I followed this guide to start a node for testing. https://besu.hyperledger.org/en/latest/HowTo/Get-Started/Starting-node/

NicolasMassart (Tue, 17 Sep 2019 11:06:08 GMT):
So you have only one node?

RealDeanZhao (Tue, 17 Sep 2019 11:06:13 GMT):
yes

RealDeanZhao (Tue, 17 Sep 2019 11:06:33 GMT):
I just want to test it locally

NicolasMassart (Tue, 17 Sep 2019 11:07:46 GMT):
Then it's expected that it doesn't sync if it's alone. Your network is just this node and as you can see in the logs, it generates blocks `Produced and imported block #1,581` so that's ok. You can work with this. It's just a one node dentwork, but enough to test.

NicolasMassart (Tue, 17 Sep 2019 11:07:46 GMT):
Then it's expected that it doesn't sync if it's alone. Your network is just this node and as you can see in the logs, it generates blocks `Produced and imported block #1,581` so that's ok. You can work with this. It's just a one node network, but enough to test.

RealDeanZhao (Tue, 17 Sep 2019 11:13:14 GMT):
thanks. Is there a eea client library for java like web3.js-eea?

NicolasMassart (Tue, 17 Sep 2019 11:18:51 GMT):
@RealDeanZhao of course. You can use Web3j : https://github.com/web3j/web3j

nicktodorov (Tue, 17 Sep 2019 14:07:58 GMT):
Has joined the channel.

sagregg (Tue, 17 Sep 2019 19:06:57 GMT):
Has joined the channel.

hmijail (Tue, 17 Sep 2019 23:05:58 GMT):
Has joined the channel.

drinkcoffee (Wed, 18 Sep 2019 02:10:39 GMT):
Hey @shemnon , I had a re-read of the version stuff (https://github.com/ethereum/EIPs/blob/master/EIPS/eip-1702.md). The version field is supposed to be 256 bits, and in Besu we only are storing it in an int (32 bits). Obviously, we could take a long time to get to (2**32)+1 assuming sequential versions. In the EIP they talk about "32", but those are 32 bytes....

ajsutton (Wed, 18 Sep 2019 02:12:05 GMT):
I'd say the most important thing about EIP-1702 is that it has not been finalised. There are a few concerns raised about it and so it will almost certainly change before it actually goes into a hard fork. I suspect any attempt to depend on it will lead you into a very difficult spot.

drinkcoffee (Wed, 18 Sep 2019 02:26:17 GMT):
The Sidechains team are creating an extension to the account state. The goal is for it to extend the MainNet account state. I think the best way will be to have a bit set at the top of the nonce field. If that is set, then it means the data is in "Crosschain extension format", otherwise is in MainNet format. However, the version field seems to be also a good possibility - once the field is definitely going to be locked in.

shemnon (Wed, 18 Sep 2019 02:52:15 GMT):
So if the state needs to be stored on mainnet we can only do to nonces and the version field what is defined. on a side chain, less restrictions. But we need to keep evolutionary concerns in mind too in case the use of the fields diverges.

shemnon (Wed, 18 Sep 2019 02:53:15 GMT):
the field as an int was done before the EIP PR added the 2^256 range, and that was chosen because of the long standing obsession with keccak hash sizes.

shemnon (Wed, 18 Sep 2019 02:53:47 GMT):
it can move but there are other things that would need to move with it type wise.

drinkcoffee (Wed, 18 Sep 2019 04:36:44 GMT):
makes sense

drinkcoffee (Wed, 18 Sep 2019 04:38:34 GMT):
agreed. The plan is for this to be just on sidechains / private blockchains. If we end up having this on Ethereum MainNet, we would have to adapt it and probably would use the version feature to indicate the extra information is present.

shemnon (Wed, 18 Sep 2019 04:39:18 GMT):
will this be enabled via a feature flag? such as something in the genesis config block?

jacobsaur (Wed, 18 Sep 2019 13:43:22 GMT):
Has joined the channel.

VipinB (Wed, 18 Sep 2019 15:27:58 GMT):
Is there any material on Sybil attack prevention in Besu or Ethereum mainnet. We are developing some material on this in the #identity-wg

faraggi (Thu, 19 Sep 2019 09:11:36 GMT):
Just another reminder to help us by answering our community survey. In the spirit of improving the way we communicate and the information you receive, we've put together a short survey to gather your feedback. All answers are optional, and we'd love to hear what you have to say! https://forms.gle/WqaU3juZnAF9Sz257

kiichi (Thu, 19 Sep 2019 09:57:52 GMT):
Has joined the channel.

joshuafernandes (Fri, 20 Sep 2019 00:24:31 GMT):
@here: Updates to License checks & Copyright for when you commit to Besu : - Spotless will no longer be used to add / check the copyrights & license. It doesnt cater to the fact that there are multiple Copyrights that users can leave and will replace anything put in with the text in the license file - You will need to add in a SPDX-License-Identifier like so /* SPDX-License-Identifier: Apache-2.0 */ - this will break your build if this isn't in !! If you use Intellij you can set it to auto insert https://www.jetbrains.com/help/idea/copyright.html - I have updated the wiki section to in HLF to reflect the above too https://wiki.hyperledger.org/display/BESU/How+to+Contribute#HowtoContribute-CopyrightandLicense

joshuafernandes (Fri, 20 Sep 2019 00:24:31 GMT):
@here: Updates to License checks & Copyright for when you commit to Besu : - Spotless will no longer be used to add / check the copyrights & license. It doesnt cater to the fact that there are multiple Copyrights that users can leave and will replace anything put in with the text in the license file - You will need to add in a SPDX-License-Identifier like so ` /* SPDX-License-Identifier: Apache-2.0 */ `- this will break your build if this isn't in !! If you use Intellij you can set it to auto insert https://www.jetbrains.com/help/idea/copyright.html - I have updated the wiki section to in HLF to reflect the above too https://wiki.hyperledger.org/display/BESU/How+to+Contribute#HowtoContribute-CopyrightandLicense

kiichi (Fri, 20 Sep 2019 01:38:00 GMT):
Hi! I took this tutorial.

kiichi (Fri, 20 Sep 2019 01:54:45 GMT):
Hi! I want you help this error. :pray: For making PoA using Clique by linux VM, I wrote code with this tutorial. https://docs.pantheon.pegasys.tech/en/1.2.3/Tutorials/Private-Network/Create-Private-Clique-Network/ Environment Pantheon version 1.2.3 - Mac high sierra - Java 11 - VM: ubuntu/trusty64 Tutorial : Section4. Start First Node as Bootnode When I wrote this code for boot node `pantheon --data-path=data --genesis-file=../cliqueGenesis.json --bootnodes --network-id 123 --rpc-http-enabled --rpc-http-api=ETH,NET,CLIQUE --host-whitelist="*" --rpc-http-cors-origins="all" ` Then ↓error

kiichi (Fri, 20 Sep 2019 01:55:10 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=RthhQydcSrjemg743)
terminal.png

kiichi (Fri, 20 Sep 2019 01:55:59 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=KaS4PDoQjznaS4KK2)
dir.png

joshuafernandes (Fri, 20 Sep 2019 04:32:06 GMT):
Hello @kiichi could I get you to confirm that all the keys, config etc is on your linux vm (i.e the contents of dir.png are on your vm and not on the mac)?

joshuafernandes (Fri, 20 Sep 2019 04:32:06 GMT):
Hello @kiichi could I get you to confirm that all the keys, config etc is on your linux vm (i.e the contents of dir.png are on your vm and not on the mac)? and your filesystem has rw permissions

joshuafernandes (Fri, 20 Sep 2019 04:32:06 GMT):
Hello @kiichi could I get you to confirm that all the keys, config etc is on your linux vm (i.e the contents of dir.png are on your vm and not on the mac)? and your filesystem has rw permissions. If that is all good, could you try using an absolute path for the data dir please? Maybe create a directory eg: `/tmp/someFolderName` and pass that in like so: `--data-path=/tmp/someFolderName`

kiichi (Fri, 20 Sep 2019 05:28:43 GMT):
Thanks for your help! Although I tried and checked this, I got error.:sweat_smile: I googled error message. `org.rocksdb.rocksdbexception while fsync a directory invalid argument` I know this bug depends on sync-share-folder maybe. Anyway, I will try this tutorial with cloud Linux and challenge this problem. :grinning:

kiichi (Fri, 20 Sep 2019 05:28:43 GMT):
Thanks for your help! Although I tried and checked this, I got error. :sweat_smile: I googled error message. `org.rocksdb.rocksdbexception while fsync a directory invalid argument` I know this bug depends on sync-share-folder maybe. Anyway, I will try this tutorial with cloud Linux and challenge this problem. :grinning:

joshuafernandes (Fri, 20 Sep 2019 05:40:26 GMT):
No worries, I believe the error is related to it trying to write but not being able to, if you ran the tutorial natively on your Mac you should have no trouble with this

kiichi (Fri, 20 Sep 2019 06:16:58 GMT):
I have no trouble with this by MacOS:grin: Thanks!

yunho.chung (Fri, 20 Sep 2019 09:52:32 GMT):
Has joined the channel.

yunho.chung (Fri, 20 Sep 2019 09:55:56 GMT):
Hi! I modified "deployContract.js" in web3js-eea examples. from " privateFor: [orion.node2.publicKey]" to privateFor: [orion.node2.publicKey, orion.node3.publicKey] and.. I ran "node storeValueFromNode1.js" and get data as output: "0x". Can I get some tip?

VipinB (Fri, 20 Sep 2019 16:14:13 GMT):
Thanks to besu privacy experts for the presentation on architecture WG

VipinB (Fri, 20 Sep 2019 16:14:38 GMT):
Hopefully you found our questions useful and not just annoying

antonydenyer (Fri, 20 Sep 2019 16:39:02 GMT):
It's always good when you have interesting questions

joshuafernandes (Sun, 22 Sep 2019 23:53:04 GMT):
@here: the dates for the next couple Besu releases for Australia/Americas: 1.2.4: 23/24 Sept 1.3: 3/4 Oct

waleed (Sun, 22 Sep 2019 23:58:12 GMT):
Has joined the channel.

joshuafernandes (Mon, 23 Sep 2019 00:17:49 GMT):
1.2.4 currently slated in for 0800 AEST 24/9

faraggi (Mon, 23 Sep 2019 10:03:14 GMT):
Quick reminder for everyone who's got outstanding PRs or unanswered comments to leave a msg here (ping me if you wish) with a link to them. Sometimes we loose track of those and need nudging to help us out.

cjhare (Mon, 23 Sep 2019 22:02:28 GMT):
Has joined the channel.

EdJoJob (Mon, 23 Sep 2019 22:05:37 GMT):
We're beginning the release process for besu, please don't merge anything to master until further notice

EdJoJob (Tue, 24 Sep 2019 02:14:23 GMT):
It's now safe to merge into master again.

faraggi (Tue, 24 Sep 2019 07:58:49 GMT):
chainsafe

faraggi (Tue, 24 Sep 2019 14:08:09 GMT):
Hyperledger Besu 1.2.4 has been released! Download here: https://github.com/hyperledger/besu/releases/tag/1.2.4

faraggi (Tue, 24 Sep 2019 14:44:20 GMT):
Changelog: https://github.com/hyperledger/besu/blob/master/CHANGELOG.md#124

RealDeanZhao (Wed, 25 Sep 2019 05:38:16 GMT):

Clipboard - September 25, 2019 1:38 PM

RealDeanZhao (Wed, 25 Sep 2019 05:40:37 GMT):
Could someone help explain, in a consortium network, should each org have one boot_node, miner_node and validator node?

NicolasMassart (Wed, 25 Sep 2019 07:13:54 GMT):
No it's just that the quickstart shows all kind of nodes here a bootnode to help all other nodes find each others, a minernode (it's PoW quickstart here) and 3 regular nodes (not mining). It also has one node called RPC that's used as an entrypoint on the network.

RealDeanZhao (Wed, 25 Sep 2019 07:43:41 GMT):
So for a consortium network use IBFT consensus, we only need one boot node for the network, one regular node for each org and some rpc nodes as the entrypoint? Does the rpc node also do same thing like the regular node? They don't have much difference except exposing the rpc endpint.

RealDeanZhao (Wed, 25 Sep 2019 07:45:20 GMT):
Does the regular node have full block and state data?

RealDeanZhao (Wed, 25 Sep 2019 07:45:20 GMT):
Does the boot node, regular node and rpc node have full block and state data?

NicolasMassart (Wed, 25 Sep 2019 07:50:16 GMT):
Exactly. All nodes are syncing the same way, even the bootnode. So for an IBFT2 network, you need 1 node also used as a bootnode, plan to have 2+ bootnodes in case of failure of one of them, then you have other nodes on which you can also activate RPC, and of course some of them have to be validators. By the way any can be a validator, even bootnode.

NicolasMassart (Wed, 25 Sep 2019 07:50:41 GMT):
All nodes have full block and state data.

RealDeanZhao (Wed, 25 Sep 2019 07:52:02 GMT):
Great, thanks.

RealDeanZhao (Wed, 25 Sep 2019 07:52:48 GMT):

Clipboard - September 25, 2019 3:52 PM

RealDeanZhao (Wed, 25 Sep 2019 07:56:52 GMT):
It's easy to start a private network. Hope there will be more comprehensive examples(web or app) for developing DApp on besu using web3js and web3j. Thanks.

circlespainter (Wed, 25 Sep 2019 08:43:43 GMT):
Has joined the channel.

RealDeanZhao (Wed, 25 Sep 2019 09:09:04 GMT):
Why are there so many blocks with 0 transaction?

NicolasMassart (Wed, 25 Sep 2019 12:08:48 GMT):
@RealDeanZhao thanks for this valuable feedback. We have a few examples today in our Besu doc, but nothing like a full dapp tutorial directly in our doc. We link to others docs for that as they do it very well too. Besu works mainly like other clients, so if you find a tutorial to create a dapp using Truffle for instance, you can easily use it on Besu as explained on https://besu.hyperledger.org/en/latest/Tutorials/Quickstarts/Private-Network-Quickstart/#truffle-pet-shop-tutorial for instance.

NicolasMassart (Wed, 25 Sep 2019 12:12:24 GMT):
@RealDeanZhao about the empty blocks, it's expected. Blocks are created whatever happens, even if no transactions are made on the network. It's a feature ;) I'm not going to dive in details but having blocks generated enables us to check that the network is live and timeout unavailable validators. Otherwise, if we create blocks only when a tx is sent, how can the rest of the network tell between a stuck validator that fail at creating a block or no block because of no tx?

SamuelDare (Wed, 25 Sep 2019 12:14:51 GMT):
Has joined the channel.

SamuelDare (Wed, 25 Sep 2019 12:14:51 GMT):
Does the format of this enode address look right? ``` { "jsonrpc": "2.0", "id": 1, "result": "enode://3f0fa5a82a6e77a773f7ad62b02cb4519a71ac9894b52addaeae79e76fefe55fb580bcd9b72c882fbc4006dedd16d4fac42b288eb7d9d9df3d9944dd71a291e6@127.0.0.1:30303?discport=0" } ```

faraggi (Wed, 25 Sep 2019 13:52:41 GMT):
@SamuelDare Yes, that looks alright. Jus verify that you need udp specification. Depending on that, the `discport` part is needed or not.

SamuelDare (Wed, 25 Sep 2019 14:39:17 GMT):
going through logs now

SamuelDare (Wed, 25 Sep 2019 14:39:21 GMT):
``` Invalid Proposal message, block did not pass validation. ```

SamuelDare (Wed, 25 Sep 2019 14:40:49 GMT):
any idea what might be wrong?

SamuelDare (Wed, 25 Sep 2019 14:54:54 GMT):
carrying on from gitter so we have convo in one place

SamuelDare (Wed, 25 Sep 2019 14:54:57 GMT):
``` I'm not too familiar with discport, the enode format is: enode://@ Genysys @Genysys 15:54 ```

SamuelDare (Wed, 25 Sep 2019 14:55:15 GMT):
do you think the extra bits at the end could be causing the error?

SamuelDare (Wed, 25 Sep 2019 14:55:53 GMT):
the nodes seem to be connecting just sending bad blocks. . I would have thought enode was a udp kademlia thing

SamuelDare (Wed, 25 Sep 2019 14:56:08 GMT):
i.e. that should produce a bad connection message

shemnon (Wed, 25 Sep 2019 14:57:40 GMT):
I dont think enode is causing the bad block, likely something in the extradata in the genesis.

SamuelDare (Wed, 25 Sep 2019 15:00:42 GMT):
Thanks

SamuelDare (Wed, 25 Sep 2019 15:00:48 GMT):
what is meant to be in that field?

SamuelDare (Wed, 25 Sep 2019 15:05:34 GMT):
thanks i think thats the issue

SamuelDare (Wed, 25 Sep 2019 15:05:40 GMT):
hes what i had ``` "alloc=\"{$${alloc:1}}\"", "extraData=\"\\\"RLP_EXTRA_DATA\\\"\"", ```

SamuelDare (Wed, 25 Sep 2019 15:05:40 GMT):
hes what i had ``` "extraData=\"\\\"RLP_EXTRA_DATA\\\"\"", ```

SamuelDare (Wed, 25 Sep 2019 15:05:57 GMT):
when it should be ``` pantheon rlp encode --from=toEncode.json ```

SamuelDare (Wed, 25 Sep 2019 15:06:49 GMT):
where does `toEncode.json` come from?

RealDeanZhao (Thu, 26 Sep 2019 02:05:01 GMT):
thanks for the explaination. it's different with fabric and sawtooth.

swkim109 (Thu, 26 Sep 2019 03:08:32 GMT):
I have heard about "empty mining" in public PoW chains but I don't know if empty blocks is necessary in private chain...

mauhcs (Thu, 26 Sep 2019 05:20:30 GMT):
Has joined the channel.

mauhcs (Thu, 26 Sep 2019 05:22:35 GMT):
Anyone going to Dev Con in Osaka? It would be great to organize a Besu meet up/catch up if people will be there.

NicolasMassart (Thu, 26 Sep 2019 07:06:48 GMT):
It's mostly useful on PoA concessus where calidators create blocks on a rotating basis. On PoW it's a financial incentive on public network, you are right that in private one it may not be the same. However, our PoW works the same on public or private network.

faraggi (Thu, 26 Sep 2019 08:27:36 GMT):
Hi mauchs, there's several (15+?) contributors and maintainers going to devcon this year. Some of us will be doing talks- we'll send the schedule once we get it. Additionally, there will be a Hyperledger meetup during devcon, here's the link: https://www.meetup.com/Hyperledger-Kansai/events/264886205/ There's a lot of stuff going on during devcon so at this point, things are already difficult to organize but I'll gladly meet up directly over there.

mauhcs (Thu, 26 Sep 2019 08:34:30 GMT):
Thanks for the link. I will try to go to this one too :)

mauhcs (Fri, 27 Sep 2019 01:29:10 GMT):
What about Tokyo? Is anyone stopping by Tokyo before going to Osaka. Let me know, I can hook you up with some Sushi and Sake ;)

yunho.chung (Fri, 27 Sep 2019 06:11:46 GMT):
Hi!. I did deploy/invoke some smart contract and I got error in node log as below. " ERROR | PrivacyPrecompiledContract | Failed to process the private transaction: private transaction nonce 0 does not match sender account nonce 1." It seems that transaction is ok. Is it correct??

swkim109 (Fri, 27 Sep 2019 06:35:53 GMT):
Be careful for sushi from Fukushima... (JOKE):stuck_out_tongue_winking_eye:

raj_shekhar (Fri, 27 Sep 2019 07:44:59 GMT):
Has joined the channel.

NicolasMassart (Fri, 27 Sep 2019 08:25:57 GMT):
Sushis are better in Osaka anyway ;)

WietzeS (Fri, 27 Sep 2019 08:51:09 GMT):
Has joined the channel.

faraggi (Fri, 27 Sep 2019 09:10:10 GMT):
Yes, I'll be in Tokyo on the 6th and 7th (and after devcon). I would *love* some sushi and sake.

antonydenyer (Fri, 27 Sep 2019 09:12:02 GMT):
How did you send the transaction?

WietzeS (Fri, 27 Sep 2019 09:48:26 GMT):
I am at the moment unable to pull any of the besu images from docker hub, anyone else encountering this same issue?

joshuafernandes (Fri, 27 Sep 2019 10:04:42 GMT):
Hi @WietzeS We will have a look at this

faraggi (Fri, 27 Sep 2019 10:08:49 GMT):
@WietzeS thanks for letting us know of the problem!

joshuafernandes (Fri, 27 Sep 2019 10:40:23 GMT):
@WietzeS should be fixed - could you try this please `docker pull hyperledger/besu:develop`

WietzeS (Fri, 27 Sep 2019 10:45:20 GMT):
Yeah works now thanks :+1:

joshuafernandes (Fri, 27 Sep 2019 11:09:29 GMT):
nw :)

joshuafernandes (Sun, 29 Sep 2019 22:16:34 GMT):
@here: Besu 1.3 RC slated for release this time tomorrow ie 0800 AEST 1/10

joshuafernandes (Sun, 29 Sep 2019 22:16:34 GMT):
@here: *Besu 1.3 RC *slated for release this time tomorrow ie *0800 AEST 1/10*

rjones (Mon, 30 Sep 2019 02:36:24 GMT):
@mauhcs I’ll be in Tokyo Tuesday, going to Osaka next Sunday

drinkcoffee (Mon, 30 Sep 2019 03:04:34 GMT):
Testing for Crosschain Transaction code: Where would be the best place for Crosschain Transaction testing? I can see there are unit, integration and acceptance tests. The types of tests need to: - launch one or more nodes on three blockchains - Run one or more tests (it would be great to relaunch everything for each test, but then the tests might take a very long time to run). - For many non-happy case tests, be able to remove network connections between nodes / remove nodes half way through a test. The acceptance test framework seems like it could be a good starting point. However, is the goal to limit the number of tests in this test system so the acceptance tests run in a reasonable time frame?

cjhare (Mon, 30 Sep 2019 03:23:57 GMT):
> The acceptance test framework seems like it could be a good starting point. However, is the goal to limit the number of tests in this test system so the acceptance tests run in a reasonable time frame? Yes, the goal with the ATs is to keep them running in reasonable time frame (as they are build on every master and PR commit). As things currently stand with the AT framework, they are really aimed at happy path tests, few in number and relatively simple (compare to the potential unhappy path tests). With Crosschain transactions, I could imagine that the interesting cases needing something more akin to real networks?

drinkcoffee (Mon, 30 Sep 2019 03:30:09 GMT):
So we will need to create some acceptance tests which do a lot with a couple of tests.

drinkcoffee (Mon, 30 Sep 2019 03:30:45 GMT):
For the complex cases including failure we will need something else...

drinkcoffee (Mon, 30 Sep 2019 03:31:21 GMT):
```With Crosschain transactions, I could imagine that the interesting cases needing something more akin to real networks?``` yes.

drinkcoffee (Mon, 30 Sep 2019 03:32:33 GMT):
What does Besu use for complex inter-node communication + checking out dead network connections / nodes? Is there a Chaos Monkey style test?

cjhare (Mon, 30 Sep 2019 03:33:13 GMT):
There is not any Choas Money style testing yet

cjhare (Mon, 30 Sep 2019 03:34:10 GMT):
The Crosschain transactions could always provide the beginnings of one though :grinning:

drinkcoffee (Mon, 30 Sep 2019 03:36:16 GMT):
We hadn't planned on creating a new test system..... but I guess if we need to. I will start out with the acceptance test system. Perhaps the test support codebase could be extended.

drinkcoffee (Mon, 30 Sep 2019 04:00:45 GMT):
Unsatisfied Link Error when running acceptance tests. I am running ```./gradlew acceptanceTest``` and I get several of these: ```org.hyperledger.besu.tests.web3j.privacy.PrivacyClusterAcceptanceTest > onlyAliceAndBobCanExecuteContract FAILED java.lang.UnsatisfiedLinkError at PrivacyClusterAcceptanceTest.java:42 java.lang.NullPointerException```

drinkcoffee (Mon, 30 Sep 2019 04:00:45 GMT):
Unsatisfied Link Error when running acceptance tests. I am running ```./gradlew acceptanceTest``` and I get several of these: ```org.hyperledger.besu.tests.web3j.privacy.PrivacyClusterAcceptanceTest > onlyAliceAndBobCanExecuteContract FAILED java.lang.UnsatisfiedLinkError at PrivacyClusterAcceptanceTest.java:42 java.lang.NullPointerException``` What have I forgotten to do?

drinkcoffee (Mon, 30 Sep 2019 04:00:45 GMT):
Unsatisfied Link Error when running acceptance tests. I am running ```./gradlew acceptanceTest``` and I get several of these: ```org.hyperledger.besu.tests.web3j.privacy.PrivacyClusterAcceptanceTest > onlyAliceAndBobCanExecuteContract FAILED java.lang.UnsatisfiedLinkError at PrivacyClusterAcceptanceTest.java:42 java.lang.NullPointerException``` What have I forgotten to do?

drinkcoffee (Mon, 30 Sep 2019 04:00:45 GMT):
Unsatisfied Link Error when running acceptance tests. I am running ```./gradlew acceptanceTest ``` and I get several of these: ```org.hyperledger.besu.tests.web3j.privacy.PrivacyClusterAcceptanceTest > onlyAliceAndBobCanExecuteContract FAILED java.lang.UnsatisfiedLinkError at PrivacyClusterAcceptanceTest.java:42 java.lang.NullPointerException``` What have I forgotten to do?

drinkcoffee (Mon, 30 Sep 2019 04:00:45 GMT):
Unsatisfied Link Error when running acceptance tests. I am running ```./gradlew acceptanceTest and I get several of these: ```org.hyperledger.besu.tests.web3j.privacy.PrivacyClusterAcceptanceTest > onlyAliceAndBobCanExecuteContract FAILED java.lang.UnsatisfiedLinkError at PrivacyClusterAcceptanceTest.java:42 java.lang.NullPointerException``` What have I forgotten to do?

drinkcoffee (Mon, 30 Sep 2019 04:00:45 GMT):
Unsatisfied Link Error when running acceptance tests. I am running ```./gradlew acceptanceTest``` and I get several of these: ```org.hyperledger.besu.tests.web3j.privacy.PrivacyClusterAcceptanceTest > onlyAliceAndBobCanExecuteContract FAILED java.lang.UnsatisfiedLinkError at PrivacyClusterAcceptanceTest.java:42 java.lang.NullPointerException``` What have I forgotten to do?

drinkcoffee (Mon, 30 Sep 2019 04:00:45 GMT):
Unsatisfied Link Error when running acceptance tests. I am running ```./gradlew acceptanceTest``` and I get several of these: ```org.hyperledger.besu.tests.web3j.privacy.PrivacyClusterAcceptanceTest > onlyAliceAndBobCanExecuteContract FAILED java.lang.UnsatisfiedLinkError at PrivacyClusterAcceptanceTest.java:42 java.lang.NullPointerException``` What have I forgotten to do?

drinkcoffee (Mon, 30 Sep 2019 04:00:45 GMT):
Unsatisfied Link Error when running acceptance tests. I am running ``` gradlew acceptanceTest``` and I get several of these: ```org.hyperledger.besu.tests.web3j.privacy.PrivacyClusterAcceptanceTest > onlyAliceAndBobCanExecuteContract FAILED java.lang.UnsatisfiedLinkError at PrivacyClusterAcceptanceTest.java:42 java.lang.NullPointerException``` What have I forgotten to do?

drinkcoffee (Mon, 30 Sep 2019 04:00:45 GMT):
Unsatisfied Link Error when running acceptance tests. I am running ```./gradlew acceptanceTest``` and I get several of these: ```org.hyperledger.besu.tests.web3j.privacy.PrivacyClusterAcceptanceTest > onlyAliceAndBobCanExecuteContract FAILED java.lang.UnsatisfiedLinkError at PrivacyClusterAcceptanceTest.java:42 java.lang.NullPointerException``` What have I forgotten to do?

drinkcoffee (Mon, 30 Sep 2019 04:00:45 GMT):
Unsatisfied Link Error when running acceptance tests. I am running ./gradlew acceptanceTest and I get several of these: ```org.hyperledger.besu.tests.web3j.privacy.PrivacyClusterAcceptanceTest > onlyAliceAndBobCanExecuteContract FAILED java.lang.UnsatisfiedLinkError at PrivacyClusterAcceptanceTest.java:42 java.lang.NullPointerException``` What have I forgotten to do?

cjhare (Mon, 30 Sep 2019 06:10:20 GMT):
The Privacy AT use Orion, which currently uses LibSodium, does your setup have LibSodium installed?

shemnon (Mon, 30 Sep 2019 06:59:22 GMT):
One additional bit is that we need to be mindful of how long tests take if we make them gate checkins. Right now all of acceptance, integration, reference, and unit tests are run for every checkin. Perhaps we need a new set of tests that are not gating for a checkin?

drinkcoffee (Mon, 30 Sep 2019 07:27:16 GMT):
@shemnon I agree totally. We shouldn't expect to run all of the tests that need to be run for a release for every pull request.

drinkcoffee (Mon, 30 Sep 2019 07:30:24 GMT):
No - I don't have lib sodium installed. I was following the instructions here, https://besu.hyperledger.org/en/latest/HowTo/Get-Started/Build-From-Source/ but ignoring the -x test because I wanted to run the tests. Are there install instructions for libsodium?

antonydenyer (Mon, 30 Sep 2019 08:55:28 GMT):
We should be able to run these out the box with minimal effort. @iikirilov is working in this area at the moment.

antonydenyer (Mon, 30 Sep 2019 10:25:53 GMT):
It's fairly widely available - brew install libsodium apt-get install libsodium23 etc

antonydenyer (Mon, 30 Sep 2019 10:25:53 GMT):
It's fairly widely available - `brew install libsodium` `apt-get install libsodium23` etc

SamuelDare (Mon, 30 Sep 2019 15:56:48 GMT):
what the command line arguments for specifying gas limit and block time?

shemnon (Mon, 30 Sep 2019 16:02:31 GMT):
For gas limit is is a single value in the genesis file, a CLI flag is coming in 1.3 (RC today or so).

shemnon (Mon, 30 Sep 2019 16:03:02 GMT):
Block time depends on the consensus algorithm. For those with configurable block times it is a parameter in the genesis.json.

SamuelDare (Mon, 30 Sep 2019 16:10:53 GMT):
thanks.. what are the values?

shemnon (Mon, 30 Sep 2019 17:16:23 GMT):
thanks.. what are the values?

brockhager (Mon, 30 Sep 2019 18:07:00 GMT):
Has joined the channel.

madelinemurray (Mon, 30 Sep 2019 20:01:21 GMT):
New doc with sample load balancer configurations: https://besu.hyperledger.org/en/latest/HowTo/Configure/Configure-HA/Sample-Configuration/

offcode (Tue, 01 Oct 2019 09:43:50 GMT):
Has joined the channel.

offcode (Tue, 01 Oct 2019 09:46:03 GMT):
Hi, I'm trying to import the blocks file used for graphql testing, but it fails throwing `tech.pegasys.pantheon.ethereum.rlp.RLPException: Expected current item to be a list, but it is: BYTE_ELEMENT (at bytes 0-1: [7b])`. The version used is `docker pull pegasyseng/pantheon` (the hyperledger image doesn't seem to work)

offcode (Tue, 01 Oct 2019 09:51:24 GMT):
Ok, now I have the same with the besu docker image: `org.hyperledger.besu.ethereum.rlp.RLPException: Expected current item to be a list, but it is: BYTE_ELEMENT (at bytes 0-1: [7b])`

mbaxter (Tue, 01 Oct 2019 12:50:11 GMT):
@offcode can you link to the file you're trying to import?

offcode (Tue, 01 Oct 2019 12:55:20 GMT):
@mbaxter I'm using this: https://gitlab.com/offcode/ethereum-graphql/blob/master/test-graphql/init/testBlockchain.blocks I copied it from the pantheon codebase, but it'd take some time to find the original location. `geth` can import it.

mbaxter (Tue, 01 Oct 2019 13:10:16 GMT):
Just tested on master with: `besu --genesis-file=/path/to/testGenesis.json blocks import --from=/path/to/testBlockchain.block`, and it seems to be working for me ... I used the files from the repo here: https://github.com/hyperledger/besu/tree/56029dc412ff7f26204e82f274a33d9255c3e592/testutil/src/main/resources

offcode (Tue, 01 Oct 2019 13:21:12 GMT):
yes, exactly, that's the one

offcode (Tue, 01 Oct 2019 13:29:44 GMT):
it's the same file. I wonder why it's not working for me running in a docker image. I'll try and install besu locally. I tried https://gitlab.com/offcode/ethereum-graphql/blob/master/test-graphql/clients/besu.sh#L7

offcode (Tue, 01 Oct 2019 13:30:40 GMT):
it's the same file. I wonder why it's not working for me running in a docker image. I'll try and install besu locally. I tried https://gitlab.com/offcode/ethereum-graphql/blob/master/test-graphql/clients/besu.sh#L7

mbaxter (Tue, 01 Oct 2019 14:03:52 GMT):
strange - i'll try running from docker as well

offcode (Tue, 01 Oct 2019 14:06:56 GMT):
I just tried with a fresh brew installed version. Same exception.

offcode (Tue, 01 Oct 2019 14:08:44 GMT):
To recap, the failing envs are: - brew, besu/v1.2.4/osx-x86_64/oracle-java-11 - docker, besu/v1.3.0-RC2/linux-x86_64/oracle_openjdk-java-11

shemnon (Tue, 01 Oct 2019 14:19:51 GMT):
add --format=JSON if you are importing json files.

offcode (Tue, 01 Oct 2019 14:20:51 GMT):
it's an rlp-encoded blocks file

shemnon (Tue, 01 Oct 2019 14:21:13 GMT):
the file you sent: `docker_besu --genesis-file /init/testGenesis.json blocks import --from=/init/testGenesis.json`

shemnon (Tue, 01 Oct 2019 14:21:20 GMT):
--from is pointed to a json file.

offcode (Tue, 01 Oct 2019 14:21:23 GMT):
oo, I'm afraid I made a stupid mistake here

mbaxter (Tue, 01 Oct 2019 14:22:09 GMT):
good eye @shemnon !

offcode (Tue, 01 Oct 2019 14:22:47 GMT):
:facepalm:

offcode (Tue, 01 Oct 2019 14:23:37 GMT):
sorry guys

mbaxter (Tue, 01 Oct 2019 14:27:32 GMT):
np! I missed it too :D

shemnon (Tue, 01 Oct 2019 14:56:16 GMT):
Besu contributor call in 4 min: https://consensys.zoom.us/j/725448960

eum602 (Tue, 01 Oct 2019 16:15:16 GMT):
Has joined the channel.

eum602 (Tue, 01 Oct 2019 16:15:18 GMT):
@shemnon @faraggi @ajsutton I posted an issue on Jira about the possibility to implement a Fork on an private IBFT2.0 network. https://pegasys1.atlassian.net/projects/PAN/issues/PAN-3124?filter=reportedbyme&orderby=created%20DESC . Please I would like to listen some comments about that. Thanks!

mattatkiva (Tue, 01 Oct 2019 16:50:16 GMT):
Has joined the channel.

mattatkiva (Tue, 01 Oct 2019 16:50:16 GMT):
Im going through this tutorial (https://docs.pantheon.pegasys.tech/en/0.8.5/Tutorials/Create-Private-Network/) and am stuck on step 3 "Start First Node and Get Node Public key" this command `pantheon --data-path=Node-1-Datadir --genesis-file=../privateNetworkGenesis.json export-pub-key Node-1-Datadir/publicKeyNode1` generates the following error: `Unmatched arguments: export-pub-key, Node-1-Datadir/publicKeyNode1 Did you mean: public-key or operator?` what is the correct command to export the node public key?

mattatkiva (Tue, 01 Oct 2019 16:50:16 GMT):
Im going through this tutorial (https://docs.pantheon.pegasys.tech/en/0.8.5/Tutorials/Create-Private-Network/) and am stuck on step 3 "Start First Node and Get Node Public key" this command `pantheon --data-path=Node-1-Datadir --genesis-file=../privateNetworkGenesis.json export-pub-key Node-1-Datadir/publicKeyNode1` generates the following error: ```Unmatched arguments: export-pub-key, Node-1-Datadir/publicKeyNode1 Did you mean: public-key or operator?``` what is the correct command to export the node public key?

mattatkiva (Tue, 01 Oct 2019 16:50:16 GMT):
Im going through this tutorial (https://docs.pantheon.pegasys.tech/en/0.8.5/Tutorials/Create-Private-Network/) and am stuck on step 3 "Start First Node and Get Node Public key" this command `pantheon --data-path=Node-1-Datadir --genesis-file=../privateNetworkGenesis.json export-pub-key Node-1-Datadir/publicKeyNode1` generates the following error: ```Unmatched arguments: export-pub-key, Node-1-Datadir/publicKeyNode1 Did you mean: public-key or operator?``` what is the correct command to export the node public key? do I need to export the public key?

shemnon (Tue, 01 Oct 2019 17:30:44 GMT):
Those are the 0.8.5 docs for pantheon, not besu. Pantheon name fully changed to besu at 1.2.4 and the CLIs were significantly re-written in 0.9.0.

shemnon (Tue, 01 Oct 2019 17:31:02 GMT):
perhaps instead of `export-pub-key` try `pub-key export`

shemnon (Tue, 01 Oct 2019 17:31:02 GMT):
perhaps instead of `export-pub-key` try `public-key export`

shemnon (Tue, 01 Oct 2019 17:32:58 GMT):
Pantheon docs up to 1.2.3 are https://readthedocs.org/projects/pantheon/ and besu docs are at https://besu.hyperledger.org/en/latest/

mattatkiva (Tue, 01 Oct 2019 17:33:07 GMT):
I tried `export-pub-key` same error. `public-key export` seems to work and pushes key to console. what is the most current documentation for setting up private network? is this it? https://docs.pantheon.pegasys.tech/en/latest/Tutorials/Quickstarts/Private-Network-Quickstart/

shemnon (Tue, 01 Oct 2019 17:34:49 GMT):
those are the latest, you had the 0.8.5 docs selected before. Probably a side effect of where it was linked from.

nickgaski (Tue, 01 Oct 2019 19:36:57 GMT):
Has joined the channel.

mattatkiva (Tue, 01 Oct 2019 20:20:23 GMT):
great. Im following the directions for the latest quick start. I have started 3 nodes. Is this the correct message I should be seeing if they are working correctly: `2019-10-01 14:19:35.980-06:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, wait for peers`

rjones (Tue, 01 Oct 2019 20:40:48 GMT):
Has joined the channel.

rjones (Tue, 01 Oct 2019 20:41:46 GMT):
@mauhcs I'm staying in the Moxy, have SUICA will travel. LMK

faraggi (Wed, 02 Oct 2019 08:37:16 GMT):
Yesterday's contributor call notes have been added to the wiki: https://wiki.hyperledger.org/display/BESU/2019-10-01+Contributor+call

offcode (Wed, 02 Oct 2019 09:21:29 GMT):
I run `besu --discovery-enabled=false --graphql-http-enabled --genesis-file init/testGenesis.json` then I point to http://127.0.0.1:8547/. For all GraphQL queries it returns an empty string, even for `{ __schema { types { name }}}`. What am I overlooking?

NicolasMassart (Wed, 02 Oct 2019 09:41:33 GMT):
GraaphQL entrypoint has to be http://127.0.0.1:8547/graphql

offcode (Wed, 02 Oct 2019 09:42:06 GMT):
http://127.0.0.1:8547/ is the graphiql IDE

offcode (Wed, 02 Oct 2019 09:43:17 GMT):
I can see the IDE and execute. Or is it cached?

offcode (Wed, 02 Oct 2019 09:43:30 GMT):
http://127.0.0.1:8547/ is the graphiql IDE I can see the IDE and execute. Or is it cached?

offcode (Wed, 02 Oct 2019 09:46:04 GMT):
Ouch, it must be cached. I can query the /graphql endpoint. Thank you

offcode (Wed, 02 Oct 2019 09:48:15 GMT):
Ouch, it must be cached. I can query the /graphql endpoint. Thank you.

NicolasMassart (Wed, 02 Oct 2019 09:49:22 GMT):
We will improve this. Thanks for the feedback.

offcode (Wed, 02 Oct 2019 09:50:09 GMT):
GraphiQL is actually pretty neat. But what matters is the graphql endpoint :)

NicolasMassart (Wed, 02 Oct 2019 09:51:14 GMT):
Yes we will at least improve our docs.

offcode (Wed, 02 Oct 2019 09:51:57 GMT):
I just went ahead and tried without reading the docs :)

NicolasMassart (Wed, 02 Oct 2019 09:52:13 GMT):
https://pegasys1.atlassian.net/browse/PAN-3213

NicolasMassart (Wed, 02 Oct 2019 09:52:38 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=YJkgYM3FEQ7tsiDGt) Oh naughty you...

offcode (Wed, 02 Oct 2019 09:53:11 GMT):
that was quick

NicolasMassart (Wed, 02 Oct 2019 09:53:12 GMT):
> I just went ahead and tried without reading the docs Naughty you !

NicolasMassart (Wed, 02 Oct 2019 09:53:24 GMT):
It';s just the ticket, it's not solved yet ;)

offcode (Wed, 02 Oct 2019 09:53:52 GMT):
> Naughty you ! I'm just a developer ;)

NicolasMassart (Wed, 02 Oct 2019 09:55:48 GMT):
UX is for developers too, we'll improve it, I promise.

shemnon (Wed, 02 Oct 2019 14:15:12 GMT):
This looks like either the validator node isn't producing blocks or they are not connecting to the boot node and are not seeing each other. Can you run a peer count query on each (https://docs.pantheon.pegasys.tech/en/latest/Tutorials/Quickstarts/Private-Network-Quickstart/#counting-peers) and then check the --bootnodes CLI arg to make sure they are talking? It may also be that docker isn't letting the docker images talk if they are not on the same docker network.

NicolasMassart (Wed, 02 Oct 2019 14:37:59 GMT):
FYI, I also created a ticket to make an HTTP redirect form endpoint root path to the correct one.

offcode (Wed, 02 Oct 2019 14:40:02 GMT):
I'm not sure it's a good idea. I'd expect the root to provide an IDE. A simple "You'll see an IDE here soon. Until then use /graphql" message would be better

NicolasMassart (Wed, 02 Oct 2019 14:43:46 GMT):
I'm not sure a graphql endpoint role is to provide an IDE. At least there's no recommendation about that. DO you have examples of services doing that? @shemnon any thoughts?

NicolasMassart (Wed, 02 Oct 2019 14:43:46 GMT):
I'm not sure a graphql endpoint role is to provide an IDE. At least there's no recommendation about that. Do you have examples of services doing that? @shemnon any thoughts?

offcode (Wed, 02 Oct 2019 14:44:20 GMT):
`geth`does it this way

NicolasMassart (Wed, 02 Oct 2019 14:47:06 GMT):
Never tried to connect to root so never noticed that :D

offcode (Wed, 02 Oct 2019 14:47:24 GMT):
Also this is what the EIP says: https://github.com/ethereum/EIPs/blob/master/EIPS/eip-1767.md#node-api

NicolasMassart (Wed, 02 Oct 2019 14:48:26 GMT):
It says MAY, not MUST... but thanks for pointing this out. We'll at least discuss about it.

offcode (Wed, 02 Oct 2019 14:49:11 GMT):
yes, MAY .I'm just saying a redirect would be more confusing than serving nothing at the root

shemnon (Wed, 02 Oct 2019 14:54:31 GMT):
My concern with offering the IDE is security. It is implemented by loading large amounts of javascript from a server we don't control in the clients web browser. I consider the standalone Graphiql browser superior in that regard.

shemnon (Wed, 02 Oct 2019 14:55:13 GMT):
And I don't think Geth seriously contemplated the security implcations.

NicolasMassart (Wed, 02 Oct 2019 14:56:55 GMT):
Note also that is a developer only feature that has no use in a production environment.

mattatkiva (Wed, 02 Oct 2019 19:57:47 GMT):
ok that helps. I needed to get the nodes to talk to each other. I think that was step #9 add nodes as peer

mattatkiva (Wed, 02 Oct 2019 19:57:47 GMT):
ok that helps. I needed to get the nodes to talk to each other. I think that was step #9 add nodes as peers

mattatkiva (Wed, 02 Oct 2019 21:33:47 GMT):
Im going through this tutorial `https://besu.hyperledger.org/en/latest/Tutorials/Permissioning/Create-Permissioned-Network/` Theres a couple of steps where you have to get the `enode` value. Is there a way to get that programmatically?

mattatkiva (Wed, 02 Oct 2019 21:33:47 GMT):
Im going through this tutorial `https://besu.hyperledger.org/en/latest/Tutorials/Permissioning/Create-Permissioned-Network/` Theres a couple of steps where you have to get the `enode` value eg `. Is there a way to get that programmatically?

mattatkiva (Wed, 02 Oct 2019 21:33:47 GMT):
Im going through this tutorial `https://besu.hyperledger.org/en/latest/Tutorials/Permissioning/Create-Permissioned-Network/` Theres a couple of steps where you have to get the `enode` value eg ``. Is there a way to get that programmatically?

NicolasMassart (Wed, 02 Oct 2019 22:17:04 GMT):
Yes you can build it form the public key returned by the `besu public-key export` subcommand https://besu.hyperledger.org/en/latest/Reference/CLI/CLI-Subcommands/#export_1 and use the `enode://@` format described in https://besu.hyperledger.org/en/latest/Concepts/Node-Keys/#enode-url where it the public key your just get with the previous command.

mattatkiva (Wed, 02 Oct 2019 22:32:09 GMT):
That isn't matching something, maybe its my misunderstanding. node1 startup output shows ```2019-10-02 14:22:34.284-07:00 | main | INFO | DefaultP2PNetwork | Enode URL enode://276f223a54f3566b620401bb2460b4a2052cd8036821929a016ac2406c659d2106835bb591afc40f55b448133963fc87173500402de588f869eb4215e20851cc@127.0.0.1:30303``` and the command you gave me returns ```mattraffel@kiva-mattr:~/besu_pvn$ besu --data-path=${NETWORK_ROOT} public-key export 2019-10-02 15:30:37.764-07:00 | main | INFO | RocksDBPlugin | Registering plugin 2019-10-02 15:30:37.770-07:00 | main | INFO | RocksDBPlugin | Plugin registered. 2019-10-02 15:30:38.134-07:00 | main | INFO | KeyPairUtil | Loaded key 0x35e9b7236de3e8c75eb1e2646164e7a1131663b1a719207352204f1f9ac5d07b3ee4163a7cf8eab939303c4a5e7c8d0c71df432a9ca88afbd150f947eb81d882 from /Users/mattraffel/besu_pvn/key```

mattatkiva (Wed, 02 Oct 2019 22:32:09 GMT):
That isn't matching something, maybe its my misunderstanding. node1 startup output shows ```2019-10-02 14:22:34.284-07:00 | main | INFO | DefaultP2PNetwork | Enode URL enode://276f223a54f3566b620401bb2460b4a2052cd8036821929a016ac2406c659d2106835bb591afc40f55b448133963fc87173500402de588f869eb4215e20851cc@127.0.0.1:30303```` and the command you gave me returns ```mattraffel@kiva-mattr:~/besu_pvn$ besu --data-path=${NETWORK_ROOT} public-key export 2019-10-02 15:30:37.764-07:00 | main | INFO | RocksDBPlugin | Registering plugin 2019-10-02 15:30:37.770-07:00 | main | INFO | RocksDBPlugin | Plugin registered. 2019-10-02 15:30:38.134-07:00 | main | INFO | KeyPairUtil | Loaded key 0x35e9b7236de3e8c75eb1e2646164e7a1131663b1a719207352204f1f9ac5d07b3ee4163a7cf8eab939303c4a5e7c8d0c71df432a9ca88afbd150f947eb81d882 from /Users/mattraffel/besu_pvn/key```

mattatkiva (Wed, 02 Oct 2019 22:33:25 GMT):
That isn't matching something, maybe its my misunderstanding. node1 startup output shows ``` 2019-10-02 14:22:34.284-07:00 | main | INFO | DefaultP2PNetwork | Enode URL enode://276f223a54f3566b620401bb2460b4a2052cd8036821929a016ac2406c659d2106835bb591afc40f55b448133963fc87173500402de588f869eb4215e20851cc@127.0.0.1:30303 ``` and the command you gave me returns ``` mattraffel@kiva-mattr:~/besu_pvn$ besu --data-path=${NETWORK_ROOT} public-key export 2019-10-02 15:30:37.764-07:00 | main | INFO | RocksDBPlugin | Registering plugin 2019-10-02 15:30:37.770-07:00 | main | INFO | RocksDBPlugin | Plugin registered. 2019-10-02 15:30:38.134-07:00 | main | INFO | KeyPairUtil | Loaded key 0x35e9b7236de3e8c75eb1e2646164e7a1131663b1a719207352204f1f9ac5d07b3ee4163a7cf8eab939303c4a5e7c8d0c71df432a9ca88afbd150f947eb81d882 from /Users/mattraffel/besu_pvn/key ```

NicolasMassart (Thu, 03 Oct 2019 08:32:05 GMT):
can you past the command line used to run the first log?

offcode (Thu, 03 Oct 2019 14:15:14 GMT):
@shemnon the security concern is valid, we haven't thought about it. Thnks for surfacing it.

offcode (Thu, 03 Oct 2019 14:16:47 GMT):
@NicolasMassart I see one of the advantages of GraphQL over the current JSON RPC is that it's more developer friendly.

NicolasMassart (Thu, 03 Oct 2019 14:22:57 GMT):
Can you elaborate on what you prefer about GraphQL? It's very valuable feedback for us. Thanks.

offcode (Thu, 03 Oct 2019 14:25:58 GMT):
1. I can write a single query, no need to process the result, feed it into the next query, repeat. 2. Easy to explore the data (especially with the help of the IDE ;) 3. Federation to integrate different services 4. Hopefully better error handling than with the current json rpc

NicolasMassart (Thu, 03 Oct 2019 14:26:27 GMT):
:thumbsup: Thanks.

offcode (Thu, 03 Oct 2019 14:26:39 GMT):
yw

mattatkiva (Thu, 03 Oct 2019 15:16:00 GMT):
```cd ${NETWORK_ROOT}/Node-$1 besu --data-path=data --genesis-file=../cliqueGenesis.json --permissions-nodes-config-file-enabled --permissions-accounts-config-file-enabled --rpc-http-enabled --rpc-http-api=ADMIN,ETH,NET,PERM,CLIQUE --host-whitelist="*" --rpc-http-cors-origins="*" --p2p-port=${P2P_PORT} --rpc-http-port=${HTTP_RPC_PORT}```

mattatkiva (Thu, 03 Oct 2019 15:16:21 GMT):
```NETWORK_ROOT=$HOME/besu_pvn P2P_PORT=30303 HTTP_RPC_PORT=8545```

NicolasMassart (Thu, 03 Oct 2019 17:17:44 GMT):
you have `--data-path=${NETWORK_ROOT}` in noe command and `--data-path=data` in the other, as you already ran`cd ${NETWORK_ROOT}/Node-$1` it means second path is `${NETWORK_ROOT}/Node-$1/data` so you look for a key file in `${NETWORK_ROOT}` on one command and a key file in `${NETWORK_ROOT}/Node-$1/data` in the other. Your two private keys are then different, hence not having the same public key. Let me know what happens if you run `cd ${NETWORK_ROOT}/Node-$1` then `besu --data-path=data public-key export`.

NicolasMassart (Thu, 03 Oct 2019 17:17:44 GMT):
you have `--data-path=${NETWORK_ROOT}` in one command and `--data-path=data` in the other, as you already ran`cd ${NETWORK_ROOT}/Node-$1` it means second path is `${NETWORK_ROOT}/Node-$1/data` so you look for a key file in `${NETWORK_ROOT}` on one command and a key file in `${NETWORK_ROOT}/Node-$1/data` in the other. Your two private keys are then different, hence not having the same public key. Let me know what happens if you run `cd ${NETWORK_ROOT}/Node-$1` then `besu --data-path=data public-key export`.

mattatkiva (Thu, 03 Oct 2019 17:34:37 GMT):
yup. my mistake. Thank you

eum602 (Thu, 03 Oct 2019 18:50:12 GMT):
Hi everyone, I am trying to filter events from Besu(v.1.2.4) in a private chain which currently have 2 200 000 blocks; the problem is the response time is TOO LONG; that is, to make a search on those blocks the response time is aproximately 369 seconds, I have made other test where I confirmed it approximately takes 1 second per 5000 blocks. I am using web3@0.20.6. Please can you suggest how can I deal with this issue? Thanks!

eum602 (Thu, 03 Oct 2019 18:59:25 GMT):
``` const {web3} = require("../besu_utils/web3") var SolidityEvent = require("web3/lib/web3/event.js"); const abi = require("../contracts/ENSRegistry/abi-ensRegistry").ensRegistry const LogParser = function (logs, abi) { // pattern similar to lib/web3/contract.js: addEventsToContract() var decoders = abi.filter(function (json) { return json.type === 'event'; }).map(function(json) { return new SolidityEvent(null, json, null); }); return logs.map(function (log) { return decoders.find(function(decoder) { return (decoder.signature() == log.topics[0].replace("0x","")); }).decode(log); }) } const web3filter = web3.eth.filter({ fromBlock: 1,//2009, toBlock: 'latest', topics:[[web3.sha3('NewOwner(bytes32,bytes32,address)')]] }) //measure time: const tPrevious=Date.now() let tFinal //executing the function web3filter.get((error, logs)=> { if (error){ console.log(error); } else { let newLogs = LogParser(logs, abi); console.log(newLogs); } tFinal=Date.now() console.log("response time",(tFinal-tPrevious)/1000, "seconds") }) ```

eum602 (Thu, 03 Oct 2019 19:01:46 GMT):
Here is part of the code I am using: ``` const web3filter = web3.eth.filter({ fromBlock: 1, toBlock: 'latest', topics:[[web3.sha3('NewOwner(bytes32,bytes32,address)')]] }) //measure time: const tPrevious=Date.now() let tFinal //executing the function web3filter.get((error, logs)=> { if (error){ console.log(error); } else { let newLogs = LogParser(logs, abi); console.log(newLogs); } tFinal=Date.now() console.log("response time",(tFinal-tPrevious)/1000, "seconds") }) ```

NicolasMassart (Thu, 03 Oct 2019 19:42:16 GMT):
You're welcome, enjoy Besu!

lucassaldanha (Thu, 03 Oct 2019 21:22:10 GMT):
Thanks for bringing this to out attention! I'll follow up with our team and see if we can come up with a solution!

lucassaldanha (Thu, 03 Oct 2019 21:38:38 GMT):
I have raised a ticket with the team so you can keep track of our investigation. https://pegasys1.atlassian.net/browse/PAN-3219

mattatkiva (Thu, 03 Oct 2019 22:30:30 GMT):
yeah. thanks for your help. I was able to get it working. I confirmed this by using the metamask chrome addin to transfer $ between accounts on my private network.

arash009 (Fri, 04 Oct 2019 00:05:00 GMT):
Has joined the channel.

arash009 (Fri, 04 Oct 2019 00:07:07 GMT):
Besu 1.3 has been released!! Get your copy here: https://bintray.com/hyperledger-org/besu-repo/besu/1.2.4# Change log available at: https://github.com/hyperledger/besu/releases/tag/1.3.0

arash009 (Fri, 04 Oct 2019 00:07:07 GMT):
Besu 1.3 has been released!! Get your copy here: https://bintray.com/hyperledger-org/besu-repo/besu/1.3.0# Change log available at: https://github.com/hyperledger/besu/releases/tag/1.3.0

shemnon (Fri, 04 Oct 2019 04:28:53 GMT):
Have you tried the graphql interface?

shemnon (Fri, 04 Oct 2019 04:29:32 GMT):
web3@0.20.6, the nodejs package?

eum602 (Fri, 04 Oct 2019 16:14:07 GMT):
@shemnon I used used RPC for communication and Nodejs framework with web3.js in its version 0.20.6

shemnon (Fri, 04 Oct 2019 16:15:31 GMT):
Json rpc incurs a significant overhead as you can only query one transaction at a time. With graplql you can query larger blocks of transactions per call

eum602 (Fri, 04 Oct 2019 16:48:41 GMT):
I assume this problem occurs with Besu, because we do not have this issue with Geth. Is it right?

eum602 (Fri, 04 Oct 2019 21:01:57 GMT):

Clipboard - October 4, 2019 4:01 PM

eum602 (Fri, 04 Oct 2019 21:02:00 GMT):
I again, I want to report an issue with release 1.3.0 when trying to make private transactions, using the storeValueFromNode1.js which is on github (https://github.com/PegaSysEng/web3js-eea) , when running the script the nodes fall, here you can see a screenshot of one of the fallen nodes.

eum602 (Fri, 04 Oct 2019 21:02:34 GMT):

Clipboard - October 4, 2019 4:02 PM

eum602 (Fri, 04 Oct 2019 21:04:01 GMT):
I followed all steps detailed in https://besu.hyperledger.org/en/latest/Tutorials/Privacy/eeajs-Multinode-example/

iikirilov (Sat, 05 Oct 2019 11:27:05 GMT):
this will be investigated

lucassaldanha (Sat, 05 Oct 2019 21:45:25 GMT):
I've raised a JI to help tracking this issue: https://pegasys1.atlassian.net/browse/PAN-3222

lucassaldanha (Sat, 05 Oct 2019 21:45:36 GMT):
Thanks for reporting this!

eum602 (Sat, 05 Oct 2019 23:44:15 GMT):
you are welcome.

eum602 (Sat, 05 Oct 2019 23:44:40 GMT):
you are welcome.

yunho.chung (Sun, 06 Oct 2019 15:52:39 GMT):
Hi!. I did deploy/invoke some smart contract and I got error in node log as below. " ERROR | PrivacyPrecompiledContract | Failed to process the private transaction: private transaction nonce 0 does not match sender account nonce 1." It seems that transaction is ok. Is it correct??

eum602 (Sun, 06 Oct 2019 23:32:50 GMT):
Hi everyone, do you know how can I make a filter for events in a range of blocks using graphql?, by using web3 I use something like ``` const web3filter = web3.eth.filter({ fromBlock: 1, toBlock: 'latest', topics:[[web3.sha3('NewOwner(bytes32,bytes32,address)')]] }) ``` . I have been searching on besu documentation but most of them refers to query made to only one block.

eum602 (Sun, 06 Oct 2019 23:33:40 GMT):
Hi everyone, do you know how can I make a filter for events in a range of blocks using graphql?, by using web3 I use something like ``` const web3filter = web3.eth.filter({ fromBlock: 1, toBlock: 'latest', topics:[[web3.sha3('NewOwner(bytes32,bytes32,address)')]] }) ``` . I have been searching on besu documentation but most of them refers to query made to only one block. any answer is well appreciated. Thanks!!

shemnon (Mon, 07 Oct 2019 01:27:10 GMT):
The root logs query is a bit wonky at the moment, but you can query from a range of blocks with a graphql query like this: ``` { blocks(from: 1420000, to: 1426000) { logs(filter: {addresses: [], topics:[]}) { index account {address} topics data } } } ```

eum602 (Mon, 07 Oct 2019 02:35:57 GMT):
@shemnon thanks for the code. I have just tested how fast is the query with graphql compared with rpc; the results are that to query in a range of 47000 blocks in a LOCALHOST chain, graphql takes 5.49 seconds; while rpc took 2.038 seconds.

eum602 (Mon, 07 Oct 2019 02:36:24 GMT):
here is my code made in nodejs: ```const axios = require("axios") const {GRAPH_URL} = require("./keys") const filter = {} filter.getLogs = () =>{ const logs = axios({ url: GRAPH_URL, method: 'post', data: { query: `{ blocks(from: 1, to: 47712) { logs( filter:{ addresses:[], topics:[ [ \"0xce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e82\" ] ] } ) { index account {address} topics data } } }` } }).then((result) => { const blocks = result.data.data.blocks //console.log(blocks) return blocks }).catch(e=>console.log(e.message)) return logs } const t1 = Date.now() filter.getLogs().then(blocks=>{ const t2 = Date.now() console.log("response time", (t2-t1)/1000,"seconds") for(const block of blocks){ if(block.logs.length>0){ console.log(block.logs) } } })```

shemnon (Mon, 07 Oct 2019 02:37:13 GMT):
Good to know. There are many optimizations we still need to do in the graphql code. There is also an issue in that the top level logs query isn't working.

shemnon (Mon, 07 Oct 2019 02:37:40 GMT):
How would you characterize your 2M blockchain, mostly erc-20 transactions? Full blocks? half full blocks?

eum602 (Mon, 07 Oct 2019 02:42:44 GMT):
my 2 million blocks, that I mentioned before are in IBFT2.0 context, the majority of them does not have transactions and other part are transactions from smart contract state change.

shemnon (Mon, 07 Oct 2019 02:44:44 GMT):
What's the total transaction count w/in an order of magnitude?

eum602 (Mon, 07 Oct 2019 02:46:26 GMT):
I am very worried for the response time because rpc and grapql takes too much time to response for a reduced range of blocks(47000 blocks), so in a scenario where a search is needed in the whole chain it could take a LOT of time to resolve.

shemnon (Mon, 07 Oct 2019 03:04:23 GMT):
The architecture here may be to out the logs in a query optimized db. The blockchain structure is not very query firendly.

eum602 (Mon, 07 Oct 2019 03:43:56 GMT):
thanks for that suggestion @shemnon

sanket1211 (Mon, 07 Oct 2019 06:41:34 GMT):
Has joined the channel.

antoniosngular (Mon, 07 Oct 2019 08:34:53 GMT):
Hi, friends! I have a doubt regarding “*Account Permissioning*”. The documentation states that “_A node with account permissioning accepts transactions only from accounts in the accounts whitelist_”. But also says that Account Permissioning can be used for _“Blacklist broken contracts”._ How is it possible? If the restriction is based on “list of accounts (External Owned Accounts, I suppose) that can send transactions (write) to the blockchain”, how can that prevent access TO a broken Smart Contract? Thanks!!

antoniosngular (Mon, 07 Oct 2019 08:34:53 GMT):
Hi, friends! I have a doubt regarding “*Account Permissioning*”. The documentation states that _“A node with account permissioning accepts transactions only from accounts in the accounts whitelist”_. But also says that Account Permissioning can be used for _“Blacklist broken contracts”._ How is it possible? If the restriction is based on “list of accounts (External Owned Accounts, I suppose) that can send transactions (write) to the blockchain”, how that can prevent access TO a broken Smart Contract? Thanks!!

antoniosngular (Mon, 07 Oct 2019 08:34:53 GMT):
Hi, friends! I have a doubt regarding “*Account Permissioning*”. The documentation states that _“A node with account permissioning accepts transactions only from accounts in the accounts whitelist”_. But also says that Account Permissioning can be used for _“Blacklist broken contracts”._ How is it possible? If the restriction is based on “list of accounts (External Owned Accounts, I suppose) that can send transactions (write) to the blockchain”, how can that prevent access TO a broken Smart Contract? Thanks!!

carlosfaria (Mon, 07 Oct 2019 10:32:09 GMT):
Hi guys, when using IBFT 2.0 it's possible to change the `blockperiodseconds` and block gas limit, after the network is running?

NicolasMassart (Mon, 07 Oct 2019 11:21:10 GMT):
Let me just confirm my understanding with my colleagues for `blockperiodseconds`, but for gas limit, we just introduced a new option that makes you able to modify gas limit https://besu.hyperledger.org/en/latest/Reference/CLI/CLI-Syntax/#target-gas-limit You will have to restart your node to add this command line option then your node will push the chain toward this limit. If you want all your nodes to use this limit, you have to restart them one after the other, or per batches, with this new parameter. I will get back to you for `blockperiodseconds`

ajsutton (Mon, 07 Oct 2019 11:23:22 GMT):
No, not really. I think you can get away with making it shorter (may need to ensure all validators are updated at the same time). Making it longer would cause earlier blocks to be rejected by any new nodes syncing the chain because the timestamp difference between the existing blocks would be less than `blockperiodseconds` and thus the blocks are considered invalid.

ajsutton (Mon, 07 Oct 2019 11:25:37 GMT):
Gas limit can't be changed in the genesis config - it forms part of the genesis block. But each block can vary the gas limit by a small amount and as Nico pointed out you can set a target gas limit and if enough of the validators have a similar gas limit then it will gradually move towards that new limit.

ajsutton (Mon, 07 Oct 2019 11:28:55 GMT):
With on-chain permissioning, the smart contract that controls permissioning can decide to allow or deny transactions based on a wide range of factors, including both who the transaction is from and the to address specified.

carlosfaria (Mon, 07 Oct 2019 11:36:39 GMT):
Hi @NicolasMassart and @ajsutton thank you for your answers. I understand that a blockperiod change could affect early blocks. If I add a new Protocol Spec on `MainnetProtocolSpecs` that defines that, for instance, in block #5000 the `blockperiodseconds` changes to a different value, should it work? - I haven't tested it yet. Thanks

helderjnpinto (Mon, 07 Oct 2019 11:48:45 GMT):
Has joined the channel.

antoniosngular (Mon, 07 Oct 2019 13:28:52 GMT):
Thank you very much, @ajsutton !!

eum602 (Mon, 07 Oct 2019 20:48:47 GMT):
Hi friends, I have some troubles with cpu overuse; when I look for services which are consuming more cpu I can see this process :

eum602 (Mon, 07 Oct 2019 20:48:51 GMT):

Clipboard - October 7, 2019 3:48 PM

eum602 (Mon, 07 Oct 2019 20:49:48 GMT):
it is related to java, can someone give me some approach how to deal with this? ; thanks a lot.

eum602 (Mon, 07 Oct 2019 20:50:58 GMT):
definitely this process is consuming a lot of CPU. it is related to java, can someone give me some approach how to deal with this? ; thanks a lot.

EdJoJob (Mon, 07 Oct 2019 21:14:44 GMT):
That is pantheon-1.2.0 that is running. I suspect it is syncing a network

eum602 (Mon, 07 Oct 2019 21:19:01 GMT):
it is IBFT2, it is syncronized

eum602 (Mon, 07 Oct 2019 21:19:36 GMT):
it is IBFT2, it is syncronized

eum602 (Mon, 07 Oct 2019 21:20:36 GMT):
that process is making my vm slow

EdJoJob (Mon, 07 Oct 2019 21:29:11 GMT):
is this the same besu that you are querying with your queries?

eum602 (Mon, 07 Oct 2019 21:38:20 GMT):
not the same, the queries I asked before were made to a development network in my localhost and also here (but that time I had not this problem)

eum602 (Mon, 07 Oct 2019 21:39:45 GMT):
this problem has been noticed today, on friday it was working well

ajsutton (Mon, 07 Oct 2019 21:41:01 GMT):
Yes, the right way to do this is effectively to make it a hard fork that's activated at a specific block. `MainnetProtocolSpecs` provides the hard forks for MainNet so it's not the right place for this to live, but you ultimately want to have an additional entry in the built `ProtocolSchedule`. `ProtocolScheduleBuilder` is the class that builds this and inserts the specs for each hard fork. The IBFT specific concepts like block period are actually added via the `protocolSpecAdapter` that's passed into it. Our IBFT implementation essentially starts with a MainNet spec and then swaps out the bits that are different, including the header validator which checks the block period. `IbftProtocolSchedule` defines those changes. You'd also need the `BlockTimer` which is used by the block creation process to know that the block period has changed. If you find usages of `IbftConfigOptions.getBlockPeriodSeconds` you can follow things through fairly well.

eum602 (Mon, 07 Oct 2019 23:28:15 GMT):
Increasing the CPUs solved this for now, but I am still curious why it was needed, because other nodes have less cpu and are working normally. :)

hmijail (Tue, 08 Oct 2019 02:16:35 GMT):
Does that mean that there is a specific place where non-MainNet hard forks would belong?

ajsutton (Tue, 08 Oct 2019 02:29:15 GMT):
Currently we o my have mainnet hard forks and things that adapt them (eg for IBFT2 and clique). The IBFT adaptations live in IbftProtocolSchedule. ETC Collab is looking to add ETC support which would have different hard forms and they may introduce a new class to hold those. Depends on the details though. But MainNetProtocolSpecs is definitely just for mainnet things.

pcmola (Tue, 08 Oct 2019 07:05:51 GMT):
Has joined the channel.

pcmola (Tue, 08 Oct 2019 07:20:39 GMT):
Hi, Everyone. I have a question. I want to build a test environment using Hyperledger Besu. I am thinking about choosing between three consensus algorithms: Ethash, Clique, and IBFT 2.0. Please tell me if there is any data comparing the performance of each consensus algorithm. Or is there a guide document on how to measure performance?

shemnon (Tue, 08 Oct 2019 07:23:38 GMT):
Ethash is PoW and is permissionless: anyone can mine blocks. Not recommended for private networks. Clique and ibft2 run off a set if validators that is seeded in the genesis and updated as part of block production. Clique still has probabalistic finality while ibft offers real finality.

shemnon (Tue, 08 Oct 2019 07:23:38 GMT):
Ethash is PoW and is permissionless: anyone can mine blocks. Not recommended for private networks. Clique and ibft2 run off a set of validators that is seeded in the genesis and updated as part of block production. Clique still has probabalistic finality while ibft offers real finality.

pcmola (Tue, 08 Oct 2019 08:20:07 GMT):
Thank you for answer. Then I'm going to adopt ibft2.0 and set it up.

pcmola (Tue, 08 Oct 2019 08:20:07 GMT):
Hi, guys. I have a question during the 'Using the Pantheon with Truffle' practice. http://docs.pantheon.pegasys.tech/en/stable/HowTo/Develop-Dapps/Truffle/ I used estash to complete the test as usual (successfully transferring Ether with Metamask). But with ibft I have a problem. When I try to 'truffle migrage', I get the following problem: pcmola@wonjongyoon:~/my/edu/pet-shop-tutorial_ibft$ truffle migrate --network pantheonWallet Compiling your contracts... =========================== > Everything is up to date, there is nothing to compile. Starting migrations... ====================== > Network name: 'pantheonWallet' > Network id: 2018 > Block gas limit: 0x47b760 1_initial_migration.js ====================== Deploying 'Migrations' ---------------------- Error: Error: Error: *** Deployment Failed *** "Migrations" exceeded the block limit (with a gas value you set). * Block limit: 0x1fee420 * Gas sent: 6721975 * Try: + Sending less gas. + Setting a higher network block limit if you are on a private network or test client (like ganache). at Object.run (/usr/local/lib/node_modules/truffle/build/webpack:/packages/migrate/index.js:96:1) at process._tickCallback (internal/process/next_tick.js:68:7) Truffle v5.0.39 (core: 5.0.39) Node v10.16.3 pcmola@wonjongyoon:~/my/edu/pet-shop-tutorial_ibft$ The ibft pantheon run log has the following output: pcmola@wonjongyoon:~/my/edu/pet-shop-tutorial_ibft/Node-1$ pantheon --data-path=data --genesis-file=../genesis.json --rpc-http-enabled --rpc-http-api=ETH,NET,IBFT --host-whitelist="*" --rpc-http-cors-origins="all" Setting logging level to INFO 2019-10-11 11:06:49.532+09:00 | main | INFO | Pantheon | Starting Pantheon version: pantheon/v1.2.2/osx-x86_64/oracle_openjdk-java-12 2019-10-11 11:06:49.570+09:00 | main | INFO | StaticNodesParser | StaticNodes file /Users/pcmola/my/edu/pet-shop-tutorial_ibft/Node-1/data/static-nodes.json does not exist, no static connections will be created. 2019-10-11 11:06:49.570+09:00 | main | INFO | Pantheon | Connecting to 0 static nodes. 2019-10-11 11:06:50.019+09:00 | main | INFO | KeyPairUtil | Loaded key 0xb962e52b5e421d1dd73fc2c18b7cf162b2cc8936b3ec7a689365474c7a64c28767c61ff8ef46829dd71fcc52593fdda7a16ff229ffbdbd5108634471700d70d8 from /Users/pcmola/my/edu/pet-shop-tutorial_ibft/Node-1/data/key ... 2019-10-11 11:07:55.742+09:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, wait for peers. WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.databind.util.ClassUtil (file:/usr/local/Cellar/pantheon/1.2.2/lib/jackson-databind-2.9.9.1.jar) to constructor java.util.OptionalLong() WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.databind.util.ClassUtil WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release 2019-10-11 11:08:00.744+09:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, wait for peers. From the log, it looks like pantheon ibft has blocked access. And what should I do to solve this problem?

carlosfaria (Tue, 08 Oct 2019 10:15:49 GMT):
@ajsutton I'm actually using the `MainNetProtocolSpecs` to define a new fork that replaces the `MainnetTransactionProcessor` with a `CustomTransactionProcessor` in a IBFT 2.0 network. And it works fine. I'm doing it right?

ajsutton (Tue, 08 Oct 2019 23:13:55 GMT):
If it works fine that’s ok. :) Where the code lives is mostly a design issue - MainNetProtocolSpecs should be exclusively about MainNet. The only thing that actually matters in terms of operation is what winds up in the ProtocolSchedule that is ultimately built. Files like MainNetProtocolSpecs and IbftProtocolSchedule just house utility functions to help build up that ProtocolSchedule and try to categorise it in a way that makes it clear which things are MainNet, which are IBFT2, which are Clique etc.

lucassaldanha (Wed, 09 Oct 2019 06:15:55 GMT):
We have just merged a fix for the issue that was crashing the nodes. You can find more details about it on the ticket. This is the PR with the fix: https://github.com/hyperledger/besu/pull/96 The fix is available in our master branch and should be part of our next 1.3.1 release (next week). Thanks again for bringing this issue to our attention!

RealDeanZhao (Wed, 09 Oct 2019 08:41:53 GMT):

Clipboard - October 9, 2019 4:41 PM

RealDeanZhao (Wed, 09 Oct 2019 08:42:26 GMT):
Will the lite explorer show the detail input data of a transaction?

RealDeanZhao (Wed, 09 Oct 2019 08:43:00 GMT):

Clipboard - October 9, 2019 4:42 PM

eum602 (Wed, 09 Oct 2019 15:07:58 GMT):
NP. I expected a mention :grin:

eum602 (Wed, 09 Oct 2019 15:07:58 GMT):
NP. I expected a mention @lucassaldanha :grin:

nehalshah50 (Wed, 09 Oct 2019 17:09:40 GMT):
Has joined the channel.

nehalshah50 (Wed, 09 Oct 2019 17:09:43 GMT):
Hi, I am new to Besu and I have following questions 1) Can Besu be configured to run as public network in parallel to private/permissioned network? 2) Does Besu uses a Fork of Ethereum like Quorum? 3) How does Besu differ from Quorum?

carlosfaria (Thu, 10 Oct 2019 08:33:25 GMT):
Makes sense @ajsutton Thank you for your support!

shemnon (Thu, 10 Oct 2019 10:42:38 GMT):
1) that would involve two processes currently. Besu supports one chain per process currently, although theoretically it could do multiple. But you can run one besu node for a public chain and one for a private chain 2) Besu is fully mainnet compatible (and most testnets) and is up to date with ethereum specifications. For private network some protocol details are changed such as consensus and private transaction support. 3) IIRC Quorum can not sync mainnet anymore and is fixed to private networks. Besu supports more consensus engines (ethash, clique, and IBFT 1.0 and 2.0) and has other minor changes like prometheus support and ethql support.

NicolasMassart (Thu, 10 Oct 2019 12:20:20 GMT):
> 2) Does Besu uses a Fork of Ethereum like Quorum? No, Besu is a completely different client implemented in Java from scratch. It was called Pantheon before entering Hyperledger and being renamed Besu. You can read more about this on https://media.consensys.net/why-we-rebuilt-ethereum-from-scratch-9e38b6ebd4a2

Javi (Thu, 10 Oct 2019 15:03:27 GMT):
Has joined the channel.

nehalshah50 (Thu, 10 Oct 2019 19:18:47 GMT):
Besu gives great APIs and monitoring capability which is great compare to other ETH clients like Geth or Quorum. But how Besu would be different or perform better when it comes to private/permissioned network compare to solution like Corda?

nehalshah50 (Thu, 10 Oct 2019 19:18:47 GMT):
Besu gives great APIs and monitoring capability which is great compare to other ETH clients like Geth or Quorum. But how Besu would be different or perform better when it comes to private/permissioned network compare to solution like Corda or Hyperledger Fabric?

achenette (Thu, 10 Oct 2019 21:03:55 GMT):
Has joined the channel.

achenette (Thu, 10 Oct 2019 21:03:56 GMT):
madeline

SamuelDare (Thu, 10 Oct 2019 22:03:10 GMT):
This is a loaded question and I dont think is an apple to apple comparison

SamuelDare (Thu, 10 Oct 2019 22:04:05 GMT):
Having built on all , I would say things it primarily use case specific; and how much complexity / heavy lifing you want to do

SamuelDare (Thu, 10 Oct 2019 22:05:35 GMT):
Built on Fabric over a year ago and it was relentlessly complex. Corda isnt really a blockchain , and those performance cannot be directly compared. Hope it helps

pcmola (Fri, 11 Oct 2019 02:20:02 GMT):
Hi, guys. I have a question about the 'Using the Pantheon with Truffle' practice. Link: http://docs.pantheon.pegasys.tech/en/stable/HowTo/Develop-Dapps/Truffle/ I used estash to complete the test as usual (successfully transferring Ether with Metamask). But with ibft I have a problem. When I try to 'truffle migrage', I get the following problem: pcmola@wonjongyoon:~/my/edu/pet-shop-tutorial_ibft$ truffle migrate --network pantheonWallet Compiling your contracts... =========================== > Everything is up to date, there is nothing to compile. Starting migrations... ====================== > Network name: 'pantheonWallet' > Network id: 2018 > Block gas limit: 0x47b760 1_initial_migration.js ====================== Deploying 'Migrations' ---------------------- Error: Error: Error: *** Deployment Failed *** "Migrations" exceeded the block limit (with a gas value you set). * Block limit: 0x1fee420 * Gas sent: 6721975 * Try: + Sending less gas. + Setting a higher network block limit if you are on a private network or test client (like ganache). at Object.run (/usr/local/lib/node_modules/truffle/build/webpack:/packages/migrate/index.js:96:1) at process._tickCallback (internal/process/next_tick.js:68:7) Truffle v5.0.39 (core: 5.0.39) Node v10.16.3 pcmola@wonjongyoon:~/my/edu/pet-shop-tutorial_ibft$ The ibft pantheon run log has the following output: pcmola@wonjongyoon:~/my/edu/pet-shop-tutorial_ibft/Node-1$ pantheon --data-path=data --genesis-file=../genesis.json --rpc-http-enabled --rpc-http-api=ETH,NET,IBFT --host-whitelist="*" --rpc-http-cors-origins="all" Setting logging level to INFO 2019-10-11 11:06:49.532+09:00 | main | INFO | Pantheon | Starting Pantheon version: pantheon/v1.2.2/osx-x86_64/oracle_openjdk-java-12 2019-10-11 11:06:49.570+09:00 | main | INFO | StaticNodesParser | StaticNodes file /Users/pcmola/my/edu/pet-shop-tutorial_ibft/Node-1/data/static-nodes.json does not exist, no static connections will be created. 2019-10-11 11:06:49.570+09:00 | main | INFO | Pantheon | Connecting to 0 static nodes. 2019-10-11 11:06:50.019+09:00 | main | INFO | KeyPairUtil | Loaded key 0xb962e52b5e421d1dd73fc2c18b7cf162b2cc8936b3ec7a689365474c7a64c28767c61ff8ef46829dd71fcc52593fdda7a16ff229ffbdbd5108634471700d70d8 from /Users/pcmola/my/edu/pet-shop-tutorial_ibft/Node-1/data/key ... 2019-10-11 11:07:55.742+09:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, wait for peers. *WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.databind.util.ClassUtil (file:/usr/local/Cellar/pantheon/1.2.2/lib/jackson-databind-2.9.9.1.jar) to constructor java.util.OptionalLong() WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.databind.util.ClassUtil WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release *2019-10-11 11:08:00.744+09:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, wait for peers. From the log, it looks like pantheon ibft has blocked access. And what should I do to solve this problem?

madelinemurray (Fri, 11 Oct 2019 03:51:44 GMT):
hi @pcmola - can you confirm if your IBFT 2.0 network is creating blocks? If blocks aren't being created, the deployment won't work.

pcmola (Fri, 11 Oct 2019 05:25:12 GMT):
As you said, it doesn't seem to be creating blocks. I don't know if I checked correctly but when I check the latest block it keeps showing as only block 1. pcmola@wonjongyoon:~/my/edu/pet-shop-tutorial_ibft$ curl -X POST --data '{"jsonrpc":"2.0","method":"ibft_getValidatorsByBlockNumber","params":["latest"], "id":1}' http://127.0.0.1:8545 { "jsonrpc" : "2.0", "id" : 1, "result" : [ "0x5d301767ae21d29200661a24d9318d57885316fe", "0xaf3aa4810e15eaf71631389e411d53493efe1aac", "0x89fc175f2317a9475f3d0cb3e7de36c968369bb2", "0x1b0265ee954c4bcd2b124ecd597771501ecf1a22" ] } I'm sorry, but can you explain how I can create a block? Commands executed from Node 1 to 4 are as follows. pcmola@wonjongyoon:~/my/edu/pet-shop-tutorial_ibft/Node-1$pantheon --data-path=data --genesis-file=../genesis.json --rpc-http-enabled --rpc-http-api=ETH,NET,IBFT --host-whitelist="*" --rpc-http-cors-origins="all" pcmola@wonjongyoon:~/my/edu/pet-shop-tutorial_ibft/Node-2$pantheon --data-path=data --genesis-file=../genesis.json --bootnodes="enode://b962e52b5e421d1dd73fc2c18b7cf162b2cc8936b3ec7a689365474c7a64c28767c61ff8ef46829dd71fcc52593fdda7a16ff229ffbdbd5108634471700d70d8@127.0.0.1:30303" --p2p-port=30304 --rpc-http-enabled --rpc-http-api=ETH,NET,IBFT --host-whitelist="*" --rpc-http-cors-origins="all" --rpc-http-port=8546 pcmola@wonjongyoon:~/my/edu/pet-shop-tutorial_ibft/Node-3$pantheon --data-path=data --genesis-file=../genesis.json --bootnodes="enode://b962e52b5e421d1dd73fc2c18b7cf162b2cc8936b3ec7a689365474c7a64c28767c61ff8ef46829dd71fcc52593fdda7a16ff229ffbdbd5108634471700d70d8@127.0.0.1:30303" --p2p-port=30305 --rpc-http-enabled --rpc-http-api=ETH,NET,IBFT --host-whitelist="*" --rpc-http-cors-origins="all" --rpc-http-port=8547 pcmola@wonjongyoon:~/my/edu/pet-shop-tutorial_ibft/Node-4$pantheon --data-path=data --genesis-file=../genesis.json --bootnodes="enode://b962e52b5e421d1dd73fc2c18b7cf162b2cc8936b3ec7a689365474c7a64c28767c61ff8ef46829dd71fcc52593fdda7a16ff229ffbdbd5108634471700d70d8@127.0.0.1:30303" --p2p-port=30306 --rpc-http-enabled --rpc-http-api=ETH,NET,IBFT --host-whitelist="*" --rpc-http-cors-origins="all" --rpc-http-port=8548

madelinemurray (Fri, 11 Oct 2019 05:28:55 GMT):
It could be that you haven't specified your validators correctly in the genesis file. What result do you get from the following request: curl -X POST --data '{"jsonrpc":"2.0","method":"ibft_getValidatorsByBlockNumber","params":["latest"], "id":1}' http://127.0.0.1:8546

pcmola (Fri, 11 Oct 2019 05:35:19 GMT):
I see the same result at http://127.0.0.1:8545. { "jsonrpc" : "2.0", "id" : 1, "result" : [ "0x5d301767ae21d29200661a24d9318d57885316fe", "0xaf3aa4810e15eaf71631389e411d53493efe1aac", "0x89fc175f2317a9475f3d0cb3e7de36c968369bb2", "0x1b0265ee954c4bcd2b124ecd597771501ecf1a22" ] }

pcmola (Fri, 11 Oct 2019 05:35:52 GMT):
The result is same for 8547(Node3) and 8548(Node4).

madelinemurray (Fri, 11 Oct 2019 05:37:37 GMT):
Are they the addresses of your 4 nodes? You can use the following command to write the address of each node to a file: besu --data-path=data public-key export-address --to=data/node1Address

pcmola (Fri, 11 Oct 2019 05:53:59 GMT):
I used pantheon so I used the 'pantheon' command instead of 'besu'. Node-1 has the same result as address, but Node2 ~ 4 are different.

pcmola (Fri, 11 Oct 2019 05:54:47 GMT):
pcmola@wonjongyoon:~/my/edu/pet-shop-tutorial_ibft/Node-2$ pantheon --data-path=data public-key export-address --to=data/node2address 2019-10-11 14:49:30.279+09:00 | main | INFO | KeyPairUtil | Loaded key 0xf22e489ee9b27d27b5af968dbad82f789f3d17b2ef4fdb065433841017c9409b89acb3a1fd3785629274f27dcc7b9183b3bc71237e0dc64f99c2d847355f60eb from /Users/pcmola/my/edu/pet-shop-tutorial_ibft/Node-2/data/key pcmola@wonjongyoon:~/my/edu/pet-shop-tutorial_ibft/Node-2$ cat data/key 0xa4ae9467c6d8775a331381314a8280cff9c8d7483ebabb78fcc7648ac2cd721c

madelinemurray (Fri, 11 Oct 2019 06:09:38 GMT):
How did you create the extraData string used in your genesis file?

madelinemurray (Fri, 11 Oct 2019 06:10:09 GMT):
The blocks aren't being created because the validators 2,3, and 4 aren't running

RealDeanZhao (Sat, 12 Oct 2019 01:57:08 GMT):
``` ```

RealDeanZhao (Sat, 12 Oct 2019 01:57:12 GMT):
```2019-10-12 01:53:50.097+00:00 | pool-9-thread-3 | ERROR | BlockMiner | Block mining threw an unhandled exception. java.lang.NullPointerException: null at org.hyperledger.besu.ethereum.eth.transactions.PendingTransactions.createSenderTransactionOrder(PendingTransactions.java:215) ~[besu-eth-1.3.0.jar:1.3.0] at java.util.HashMap.computeIfAbsent(HashMap.java:1133) ~[?:?] at org.hyperledger.besu.ethereum.eth.transactions.PendingTransactions.selectTransactions(PendingTransactions.java:188) ~[besu-eth-1.3.0.jar:1.3.0] at org.hyperledger.besu.ethereum.blockcreation.BlockTransactionSelector.buildTransactionListForBlock(BlockTransactionSelector.java:131) ~[besu-blockcreation-1.3.0.jar:1.3.0] at org.hyperledger.besu.ethereum.blockcreation.AbstractBlockCreator.selectTransactions(AbstractBlockCreator.java:220) ~[besu-blockcreation-1.3.0.jar:1.3.0] at org.hyperledger.besu.ethereum.blockcreation.AbstractBlockCreator.createBlock(AbstractBlockCreator.java:146) ~[besu-blockcreation-1.3.0.jar:1.3.0] at org.hyperledger.besu.ethereum.blockcreation.AbstractBlockCreator.createBlock(AbstractBlockCreator.java:119) ~[besu-blockcreation-1.3.0.jar:1.3.0] at org.hyperledger.besu.ethereum.blockcreation.BlockMiner.mineBlock(BlockMiner.java:123) ~[besu-blockcreation-1.3.0.jar:1.3.0] at org.hyperledger.besu.ethereum.blockcreation.BlockMiner.run(BlockMiner.java:82) [besu-blockcreation-1.3.0.jar:1.3.0] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?] at java.lang.Thread.run(Thread.java:834) [?:?] 2019-10-12 01:53:50.097+00:00 | pool-9-thread-3 | ERROR | BlockMiner | Block mining threw an unhandled exception. java.lang.NullPointerException: null at org.hyperledger.besu.ethereum.eth.transactions.PendingTransactions.createSenderTransactionOrder(PendingTransactions.java:215) ~[besu-eth-1.3.0.jar:1.3.0] at java.util.HashMap.computeIfAbsent(HashMap.java:1133) ~[?:?] at org.hyperledger.besu.ethereum.eth.transactions.PendingTransactions.selectTransactions(PendingTransactions.java:188) ~[besu-eth-1.3.0.jar:1.3.0] at org.hyperledger.besu.ethereum.blockcreation.BlockTransactionSelector.buildTransactionListForBlock(BlockTransactionSelector.java:131) ~[besu-blockcreation-1.3.0.jar:1.3.0] at org.hyperledger.besu.ethereum.blockcreation.AbstractBlockCreator.selectTransactions(AbstractBlockCreator.java:220) ~[besu-blockcreation-1.3.0.jar:1.3.0] at org.hyperledger.besu.ethereum.blockcreation.AbstractBlockCreator.createBlock(AbstractBlockCreator.java:146) ~[besu-blockcreation-1.3.0.jar:1.3.0] ^C at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?] at java.lang.Thread.run(Thread.java:834) [?:?] 2019-10-12 01:53:50.097+00:00 | pool-9-thread-3 | ERROR | BlockMiner | Block mining threw an unhandled exception. java.lang.NullPointerException: null at org.hyperledger.besu.ethereum.eth.transactions.PendingTransactions.createSenderTransactionOrder(PendingTransactions.java:215) ~[besu-eth-1.3.0.jar:1.3.0] at java.util.HashMap.computeIfAbsent(HashMap.java:1133) ~[?:?] at org.hyperledger.besu.ethereum.eth.transactions.PendingTransactions.selectTransactions(PendingTransactions.java:188) ~[besu-eth-1.3.0.jar:1.3.0] at org.hyperledger.besu.ethereum.blockcreation.BlockTransactionSelector.buildTransactionListForBlock(BlockTransactionSelector.java:131) ~[besu-blockcreation-1.3.0.jar:1.3.0] at org.hyperledger.besu.ethereum.blockcreation.AbstractBlockCreator.selectTransactions(AbstractBlockCreator.java:220) ~[besu-blockcreation-1.3.0.jar:1.3.0] at org.hyperledger.besu.ethereum.blockcreation.AbstractBlockCreator.createBlock(AbstractBlockCreator.java:146) ~[besu-blockcreation-1.3.0.jar:1.3.0] at org.hyperledger.besu.ethereum.blockcreation.AbstractBlockCreator.createBlock(AbstractBlockCreator.java:119) ~[besu-blockcreation-1.3.0.jar:1.3.0]```

RealDeanZhao (Sat, 12 Oct 2019 01:57:12 GMT):
```2019-10-12 01:53:50.097+00:00 | pool-9-thread-3 | ERROR | BlockMiner | Block mining threw an unhandled exception. java.lang.NullPointerException: null at org.hyperledger.besu.ethereum.eth.transactions.PendingTransactions.createSenderTransactionOrder(PendingTransactions.java:215) ~[besu-eth-1.3.0.jar:1.3.0] at java.util.HashMap.computeIfAbsent(HashMap.java:1133) ~[?:?] at org.hyperledger.besu.ethereum.eth.transactions.PendingTransactions.selectTransactions(PendingTransactions.java:188) ~[besu-eth-1.3.0.jar:1.3.0] at org.hyperledger.besu.ethereum.blockcreation.BlockTransactionSelector.buildTransactionListForBlock(BlockTransactionSelector.java:131) ~[besu-blockcreation-1.3.0.jar:1.3.0] at org.hyperledger.besu.ethereum.blockcreation.AbstractBlockCreator.selectTransactions(AbstractBlockCreator.java:220) ~[besu-blockcreation-1.3.0.jar:1.3.0] at org.hyperledger.besu.ethereum.blockcreation.AbstractBlockCreator.createBlock(AbstractBlockCreator.java:146) ~[besu-blockcreation-1.3.0.jar:1.3.0] at org.hyperledger.besu.ethereum.blockcreation.AbstractBlockCreator.createBlock(AbstractBlockCreator.java:119) ~[besu-blockcreation-1.3.0.jar:1.3.0]```

RealDeanZhao (Sat, 12 Oct 2019 02:00:40 GMT):
The error happens when transferring ether. I use the 1.3.0 quick start to start the network.

RealDeanZhao (Sat, 12 Oct 2019 02:02:04 GMT):

Clipboard - October 12, 2019 10:02 AM

roderik (Sat, 12 Oct 2019 16:08:37 GMT):
I've got a stupid question probably, but I used to have a working helmfile based setup, coming from the helm charts/helmfile you shared a while ago. Been trying to move to the besu image (but tbh, it started failing with 2.3 pantheon as well), and the bootnode launches, the validators launch, all the jobs run, but all nodes keep repeating "No sync target, wait for peers". I assume because no nodes are mining? Any idea on where to start looking?

shemnon (Sat, 12 Oct 2019 22:16:52 GMT):
Ny Sync Targets is because of no peers found. Is this a private network or a public chain?

shemnon (Sat, 12 Oct 2019 22:16:52 GMT):
No Sync Targets is because of no peers found. Is this a private network or a public chain?

shemnon (Sat, 12 Oct 2019 22:17:26 GMT):
Is this a private network or a public network? If private are you using private transactions?

madelinemurray (Sun, 13 Oct 2019 19:30:26 GMT):
You can use the `rlp encode` sub-command to create the extraData string: https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Subcommands/#rlp

RealDeanZhao (Mon, 14 Oct 2019 02:16:24 GMT):
It's private network, not using private transactions.. It works when I use 1.2.5 to start the network.

shemnon (Mon, 14 Oct 2019 04:21:54 GMT):
I think a fix is coming in 1.3.1, out this week.

shemnon (Mon, 14 Oct 2019 04:22:45 GMT):
Looks to be another manifestation of this one: https://github.com/hyperledger/besu/commit/b4f1becc058ca4064c90f3314b6afa4571a3855f

pcmola (Mon, 14 Oct 2019 07:33:02 GMT):
How did you create the extraData string used in your genesis file? --> I just followed the guide.

pcmola (Mon, 14 Oct 2019 07:33:50 GMT):
http://besu.hyperledger.org/en/stable/Tutorials/Private-Network/Create-IBFT-Network/#3-generate-node-keys-and-genesis-file

diestrin (Mon, 14 Oct 2019 16:14:05 GMT):
Has joined the channel.

diestrin (Mon, 14 Oct 2019 16:14:06 GMT):
Hi, I'm setting up a besu permissioned network, but I have a problem. My nodes are located some in a single k8s cluster and some others in a external location, so I'm having a problem with them talking to each other, I'm setting permissions config with the enodes using the public external IP address of the cluster, but in the logs I can see what the nodes in the same cluster get is a request using the internal ip address, and thus they don't get allowed, if I call perm_addNodesToWhitelist with the internal ip, then they start to talk to each other

diestrin (Mon, 14 Oct 2019 16:14:23 GMT):
what am I suppose to do in this case?

ajsutton (Mon, 14 Oct 2019 21:00:26 GMT):
One option would be to allow both the internal and external IPs but that's somewhat messy. The other possibility is to use `--p2p-interface` to set the IP address that the DevP2P networking will use for sending and receiving to the public IP. It's a fairly new option and I'm somewhat foggy on the details but worth a try.

pcmola (Tue, 15 Oct 2019 00:28:34 GMT):
Hi. When running Orion, 'An illegal reflective access operation has occurred' message appears.

shemnon (Tue, 15 Oct 2019 00:30:19 GMT):
This can be ignored. It is a result of the Java 9 module system.

pcmola (Tue, 15 Oct 2019 00:32:01 GMT):
Thank you. And even though I referenced the trouble shooting page.

pcmola (Tue, 15 Oct 2019 00:32:09 GMT):
http://besu.hyperledger.org/en/stable/HowTo/Troubleshoot/Troubleshooting/#illegal-reflective-access-error-on-startup

shemnon (Tue, 15 Oct 2019 00:34:38 GMT):
That page won't affect the error seen on orion, only besu.

pcmola (Tue, 15 Oct 2019 00:35:43 GMT):
Thank you for quick response!

ramvi (Tue, 15 Oct 2019 08:36:53 GMT):
Has joined the channel.

heenas06 (Tue, 15 Oct 2019 09:12:19 GMT):
Has joined the channel.

madelinemurray (Tue, 15 Oct 2019 19:33:01 GMT):
Here's the doc on `--p2p-interface`: http://besu.hyperledger.org/en/latest/Reference/CLI/CLI-Syntax/#p2p-interface http://besu.hyperledger.org/en/latest/HowTo/Find-and-Connect/Configuring-Ports/#p2p-networking

arash009 (Wed, 16 Oct 2019 01:02:23 GMT):
Besu 1.3.1 has been released! Get your copy here: https://bintray.com/hyperledger-org/besu-repo/besu/1.3.1#files Changelog available at: https://github.com/hyperledger/besu/releases/tag/1.3.1 A note that a critical bug with Privacy that was present in 1.3 was fixed in 1.3.1. If you are using Privacy functionality please update to the latest release.

vaxou (Wed, 16 Oct 2019 07:36:59 GMT):
Has joined the channel.

vaxou (Wed, 16 Oct 2019 07:36:59 GMT):
Hi, I've been testing out the automated besu ibft setup on a kubernetes cluster and managed to get it booting up all the validator nodes. The only issue i am still enduring is that my setup is not mining any blocks. The only messages i am getting are ```2019-10-16 07:24:47.316+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, wait for peers. ``` Any idea what I might be missing?

vaxou (Wed, 16 Oct 2019 07:36:59 GMT):
Hi, I've been testing out the automated besu ibft setup on a kubernetes cluster and managed to get it booting up all the validator nodes. The only issue i am still enduring is that my setup is not mining any blocks. The only messages i am getting are ```2019-10-16 07:24:47.316+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, wait for peers. ``` Any idea what I might be missing? For reference, I am using this https://github.com/PegaSysEng/besu-kubernetes/tree/master/helmfile/private-network-ibft-automated

ramvi (Wed, 16 Oct 2019 10:25:52 GMT):
Is a besu node be default closed off to the public in any way? I run `curl -X POST --data '{"jsonrpc":"2.0","method":"web3_clientVersion","params":[],"id":1}' localhost:8545` on the node, and it returns data

ramvi (Wed, 16 Oct 2019 10:26:15 GMT):
I run `curl -X POST --data '{"jsonrpc":"2.0","method":"net_peerCount","params":[],"id":1}' 104.41.208.243:8545` from my machine (remote) and get `Connection refused`

ramvi (Wed, 16 Oct 2019 10:26:44 GMT):

Clipboard - October 16, 2019 12:26 PM

ramvi (Wed, 16 Oct 2019 10:26:51 GMT):
The node is started with :point_up:

NicolasMassart (Wed, 16 Oct 2019 10:28:35 GMT):
@ramvi the node is listening on localhost by default meaning you have to set the --rpc-http-host to your external ip (or 0.0.0.0 to listen on all interfaces). More details are available on https://besu.hyperledger.org/en/latest/Reference/CLI/CLI-Syntax/#rpc-http-host

ramvi (Wed, 16 Oct 2019 10:30:24 GMT):
:thumbsup:

NicolasMassart (Wed, 16 Oct 2019 10:30:24 GMT):
And of course same for websocket with https://besu.hyperledger.org/en/latest/Reference/CLI/CLI-Syntax/#rpc-ws-host or other remote apis like GraphQl or metrics

ramvi (Wed, 16 Oct 2019 10:30:26 GMT):
Thanks

NicolasMassart (Wed, 16 Oct 2019 10:31:34 GMT):
We have all remote apis disabled and if enabled, then only available for localhost by default to prevent users to mistakenly open their nodes to the world.

NicolasMassart (Wed, 16 Oct 2019 10:32:21 GMT):
The only connection which is on by default is p2p, as otherwise you can't join any network.

hiron (Wed, 16 Oct 2019 14:19:01 GMT):
Has joined the channel.

pandrejko (Wed, 16 Oct 2019 15:19:13 GMT):
Has joined the channel.

cam-parra (Wed, 16 Oct 2019 17:00:04 GMT):
Has joined the channel.

cam-parra (Wed, 16 Oct 2019 17:00:05 GMT):
Has anyone tried running a network on docker nodes?

NicolasMassart (Wed, 16 Oct 2019 19:10:37 GMT):
@cam-parra Yes, what do you want to achieve here? We have multiple examples, I suggest you let us now a bit more about your goal. Meanwhile, you can also read https://besu.hyperledger.org/en/latest/Tutorials/Quickstarts/Private-Network-Quickstart/ for a quick Docker-compose network demo, or directly dive in https://besu.hyperledger.org/en/latest/HowTo/Deploy/Kubernetes/

cam-parra (Wed, 16 Oct 2019 19:14:58 GMT):
Thank you! We're looking to make a 3 node private network and we will be using it to store credit data. We're thinking of using aws to host the nodes

NicolasMassart (Wed, 16 Oct 2019 20:04:30 GMT):
Great yes definitely works with Besu. How do you plan on deploying and handling containers? Kubernetes?

joshuafernandes (Wed, 16 Oct 2019 20:54:09 GMT):
Hello @vaxou if you make the call to check on the # of peers what do you get back? `curl -X POST --data '{"jsonrpc":"2.0","method":"net_peerCount","params":[],"id":1}' :8545`

eum602 (Wed, 16 Oct 2019 21:40:59 GMT):
Hi Guys, I have so sorry for the persistence. I have downloaded the latest version 1.3.1 release and tested scenario when I deploy a private contract between TWO participants.(node 1, node 2). For that I did the following steps: 1. deployed a public contract 2. deployed a private contract between two nodes. That private contract is able to read a variable of the public conttract. 3. After that tested the functionality when node 1 access the private contract and reads the variable of the public contract. 4. In the same way tested the functionality when node 2 also access the same private shared contract and performs a call to read a variable of the public smart contract. 5. Up to this point all works well; but after that whole nodes in the network, other than Node 1 and Node 2, throws an error and are rejected. So at the end only node 1 and node 2 remains live in the network. 6. If I try to delete the database of some of the rejected nodes and start again that node, then it is still rejected being not able to join. Here you can see the screenshot of one of the fallen rejected nodes:

eum602 (Wed, 16 Oct 2019 21:40:59 GMT):
Hi Guys, so sorry for the persistence about interaction between private and public contract. I have downloaded the latest version 1.3.1 release and tested scenario when I deploy a private contract between TWO participants.(node 1, node 2). For that I did the following steps: 1. deployed a public contract 2. deployed a private contract between two nodes. That private contract is able to read a variable of the public conttract. 3. After that tested the functionality when node 1 access the private contract and reads the variable of the public contract. 4. In the same way tested the functionality when node 2 also access the same private shared contract and performs a call to read a variable of the public smart contract. 5. Up to this point all works well; but after that whole nodes in the network, other than Node 1 and Node 2, throws an error and are rejected. So at the end only node 1 and node 2 remains live in the network. 6. If I try to delete the database of some of the rejected nodes and start again that node, then it is still rejected being not able to join. Here you can see the screenshot of one of the fallen rejected nodes:

eum602 (Wed, 16 Oct 2019 21:41:16 GMT):

fallen node message

eum602 (Wed, 16 Oct 2019 21:43:28 GMT):

Shows a message "No sync target, wait for peers"

eum602 (Wed, 16 Oct 2019 21:48:06 GMT):
to sum up , the explained scenario corrupts the blockchain; this is a serious vulnerability that should be taken into really serious consideration.

eum602 (Wed, 16 Oct 2019 21:48:06 GMT):
to sum up , the explained scenario corrupts the blockchain; this is a serious vulnerability that should be taken into consideration.

eum602 (Wed, 16 Oct 2019 21:52:27 GMT):
@lucassaldanha @arash009

lucassaldanha (Wed, 16 Oct 2019 22:58:34 GMT):
Thanks again for your help! I'm sorry you are having problems with our quickstart. I'll get someone from the team to look at this and we'll follow up with you.

lucassaldanha (Wed, 16 Oct 2019 22:58:58 GMT):
Just to help us reproduce the issue, could you confirm the version of Orion that is being used in your setup?

eum602 (Wed, 16 Oct 2019 23:00:47 GMT):

Besu and Orion versions

eum602 (Wed, 16 Oct 2019 23:01:13 GMT):

Clipboard - October 16, 2019 6:01 PM

madelinemurray (Wed, 16 Oct 2019 23:02:03 GMT):
hi @eum602 - wanted to confirm a couple of things so we can understand your scenario a bit better and recreate. 1. Initially you have 4 nodes running. Are they all connected and creating/importing blocks before the crash? 2. The error message and disconnection occur on nodes 3 & 4? But 1 & 2 continue normally? 3. Then you delete the databases for 3 & 4 and attempt to reconnect but they won't reconnect?

eum602 (Wed, 16 Oct 2019 23:02:51 GMT):
1. yes, they are connected and sharing blocks, three are validators and one is regular

eum602 (Wed, 16 Oct 2019 23:03:05 GMT):
2. yes

eum602 (Wed, 16 Oct 2019 23:03:12 GMT):
3. yes

madelinemurray (Wed, 16 Oct 2019 23:03:54 GMT):
Thanks - we'll investigate and get back to you.

eum602 (Wed, 16 Oct 2019 23:05:12 GMT):
Ok, I recommend make more in deep tests before releasing. thanks

eum602 (Wed, 16 Oct 2019 23:06:22 GMT):
this is in an ibft2.0 context

RealDeanZhao (Thu, 17 Oct 2019 10:30:51 GMT):
Hi Team, is besu production ready?

shemnon (Thu, 17 Oct 2019 11:37:50 GMT):
It's in production environments already. Are there any other standards that would apply?

heiho1 (Thu, 17 Oct 2019 15:14:28 GMT):
Has joined the channel.

heiho1 (Thu, 17 Oct 2019 15:14:30 GMT):
Hi all, trying to build Besu from source and seeing an error: "| ~/dev/ether/besu @ foamfollower (heiho1) | => ./gradlew build -x test > Task :buildSrc:compileGroovy FAILED FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':buildSrc:compileGroovy'. > BUG! exception in phase 'semantic analysis' in source unit '/Users/heiho1/dev/ether/besu/buildSrc/src/main/groovy/CheckSpdxHeader.groovy' Unsupported class file major version 57 * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights. * Get more help at https://help.gradle.org BUILD FAILED in 2s ________________________________________________________________________________ | ~/dev/ether/besu @ foamfollower (heiho1) | => java --version openjdk 13 2019-09-17 OpenJDK Runtime Environment (build 13+33) OpenJDK 64-Bit Server VM (build 13+33, mixed mode, sharing)"

heiho1 (Thu, 17 Oct 2019 15:15:31 GMT):
The brew binary installations seems fine so far.

antonydenyer (Thu, 17 Oct 2019 15:24:22 GMT):
Are running that from inside idea by any chance?

antonydenyer (Thu, 17 Oct 2019 15:25:40 GMT):
You can (for reasons I don't know about) have different versions of java configured for gradle inside idea. Basically you need to be on a more recent java version (11 IIRC).

antonydenyer (Thu, 17 Oct 2019 15:25:40 GMT):
You can (for reasons I don't know about) have different versions of java configured for gradle vs project settingsinside idea. Basically you need to be on a more recent java version (11 IIRC).

antonydenyer (Thu, 17 Oct 2019 15:25:40 GMT):
You can (for reasons I don't know about) have different versions of java configured for gradle vs project settings inside idea. Basically you need to be on a more recent java version (11 IIRC).

shemnon (Thu, 17 Oct 2019 15:27:01 GMT):
Java 13 is not supported by Gradle yet. Use Java 11 or 12. This is the error it throws.

shemnon (Thu, 17 Oct 2019 15:27:29 GMT):
Java 13 is actually too recent a version, not enough tool vendors support it yet.

heiho1 (Thu, 17 Oct 2019 15:34:02 GMT):
ah, ill downgrade to java 11 then, thx

heiho1 (Thu, 17 Oct 2019 16:22:45 GMT):
I updated to JDK 11 and tried to run binary besu...getting a jnilib error?

heiho1 (Thu, 17 Oct 2019 16:22:48 GMT):
| ~/dev/ether/Private-Network @ foamfollower (heiho1) | => java --version openjdk 11.0.2 2019-01-15 OpenJDK Runtime Environment 18.9 (build 11.0.2+9) OpenJDK 64-Bit Server VM 18.9 (build 11.0.2+9, mixed mode) ________________________________________________________________________________ | ~/dev/ether/Private-Network @ foamfollower (heiho1) | => besu --network=ropsten --rpc-http-enabled --rpc-http-cors-origins "http://remix.ethereum.org" 2019-10-17 12:21:12.726-04:00 | main | INFO | Besu | Starting Besu version: besu/v1.3.1/osx-x86_64/oracle_openjdk-java-11 2019-10-17 12:21:12.746-04:00 | main | INFO | StaticNodesParser | StaticNodes file /usr/local/Cellar/besu/1.3.1/static-nodes.json does not exist, no static connections will be created. 2019-10-17 12:21:12.746-04:00 | main | INFO | Besu | Connecting to 0 static nodes. 2019-10-17 12:21:13.427-04:00 | main | INFO | KeyPairUtil | Loaded key 0xdb68b7e8f5c333e55899ccab9ac14890c2830e10a661b6edef4d8b87ed043d1a02cbec0269c2e324633f155d06ee28cef2b153b246742cf316232fea3c414597 from /usr/local/Cellar/besu/1.3.1/key 2019-10-17 12:21:13.457-04:00 | main | INFO | RocksDBKeyValueStorageFactory | No existing database detected at /usr/local/Cellar/besu/1.3.1. Using version 1 2019-10-17 12:21:13.642-04:00 | main | ERROR | Besu | Uncaught exception in thread "main" java.lang.UnsatisfiedLinkError: /private/var/folders/dk/nplzdgw90mb2qxy3q5zq2p5m0000gn/T/librocksdbjni5320329935051919095.jnilib: dlopen(/private/var/folders/dk/nplzdgw90mb2qxy3q5zq2p5m0000gn/T/librocksdbjni5320329935051919095.jnilib, 1): Symbol not found: __ZdlPvSt11align_val_t Referenced from: /private/var/folders/dk/nplzdgw90mb2qxy3q5zq2p5m0000gn/T/librocksdbjni5320329935051919095.jnilib (which was built for Mac OS X 10.13) Expected in: /usr/lib/libc++.1.dylib in /private/var/folders/dk/nplzdgw90mb2qxy3q5zq2p5m0000gn/T/librocksdbjni5320329935051919095.jnilib at java.lang.ClassLoader$NativeLibrary.load0(Native Method) ~[?:?] at java.lang.ClassLoader$NativeLibrary.load(ClassLoader.java:2430) ~[?:?] at java.lang.ClassLoader$NativeLibrary.loadLibrary(ClassLoader.java:2487) ~[?:?] at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:2684) ~[?:?] at java.lang.ClassLoader.loadLibrary(ClassLoader.java:2617) ~[?:?] at java.lang.Runtime.load0(Runtime.java:767) ~[?:?] at java.lang.System.load(System.java:1831) ~[?:?] at org.rocksdb.NativeLibraryLoader.loadLibraryFromJar(NativeLibraryLoader.java:78) ~[rocksdbjni-5.15.10.jar:?] at org.rocksdb.NativeLibraryLoader.loadLibrary(NativeLibraryLoader.java:56) ~[rocksdbjni-5.15.10.jar:?]

heiho1 (Thu, 17 Oct 2019 16:35:01 GMT):
This may be because I'm on OS X 10.12...going to upgrade to catalina and try again.

shemnon (Thu, 17 Oct 2019 16:35:13 GMT):
That's a new one. What version of mac os are you runing?

heiho1 (Thu, 17 Oct 2019 16:35:20 GMT):
10.12 :)

heiho1 (Thu, 17 Oct 2019 16:35:46 GMT):
brew is complaining so I'm going to finally upgrade my OS :P

shemnon (Thu, 17 Oct 2019 16:36:38 GMT):
The jni line makes me thing catalina would help - Referenced from: /private/var/folders/dk/nplzdgw90mb2qxy3q5zq2p5m0000gn/T/librocksdbjni5320329935051919095.jnilib (which was built for Mac OS X 10.13)

heiho1 (Thu, 17 Oct 2019 16:36:59 GMT):
yah, i'll update after the oS upgrade

heiho1 (Thu, 17 Oct 2019 16:37:06 GMT):
gonna take a while

madelinemurray (Thu, 17 Oct 2019 23:03:32 GMT):
@shemnon - could we be adding this to the docs? We currently say Java 11+ which implies 13 is supported.

madelinemurray (Thu, 17 Oct 2019 23:06:34 GMT):
@eum602 - this is the Jira issue tracking your issue: I've raised a JI to help tracking this issue: https://pegasys1.atlassian.net/browse/PAN-3240

shemnon (Fri, 18 Oct 2019 00:03:40 GMT):
13 was just released 3 weeks ago, and Gradle 6 will fix it in two weeks...

eum602 (Fri, 18 Oct 2019 01:02:05 GMT):
great @madelinemurray !!

RealDeanZhao (Fri, 18 Oct 2019 02:14:48 GMT):
Are there any benchmark comparision among parity poa, quorum and besu?

RealDeanZhao (Fri, 18 Oct 2019 02:14:48 GMT):
Are there any benchmark comparision among parity poa, quorum, besu, fabric and sawtooth?

ramvi (Fri, 18 Oct 2019 07:04:28 GMT):
Hi, I'm experiencing problems with setting up Alethio Lite Explorer with your IBFT2. It returns "exited with code 3" before even getting to reading the config file, it seems. How do I troubleshoot this? Unable to find anything online

ramvi (Fri, 18 Oct 2019 07:06:12 GMT):
I've noticed you are using PoW for most of your documentation online. Is IBFT2 kind of in beta or bleeding edge?

NicolasMassart (Fri, 18 Oct 2019 08:06:28 GMT):
Can you tell me what software returns code 3? Are you using Alethio Docker images for the explorer? Would you mind sharing your configuration files and command lines used?

ramvi (Fri, 18 Oct 2019 08:11:24 GMT):
* Software: ethereum-lite-explorer started with `npm start` * Tried with docker image too, but I couldn't connect to that either. The container only outputted "Now running" without any errors or troubleshooting info. However, I'm guessing the container is for PoW, not IBFT2? * I don't mind at all. I have console logged a couple of the variables in the failing file: https://pastebin.com/r596BmdW

obernardovieira (Fri, 18 Oct 2019 09:57:25 GMT):
Has joined the channel.

obernardovieira (Fri, 18 Oct 2019 10:05:04 GMT):
Hi, I've setup a 3 besu nodes, all working fine, deployed contracts. But I want to create accounts, like web3.eth.personal.newAccount, but I can't. It says that the method does not exists. I've tried web3.eth.accounts.create, but then I can't use it to sign transactions

obernardovieira (Fri, 18 Oct 2019 10:05:04 GMT):
Hi, I've setup a 3 besu nodes, all working fine, deployed contracts. But I want to create accounts, like web3.eth.personal.newAccount, but I can't. It says that the method does not exists. I've tried web3.eth.accounts.create, but then I can't use it to sign transactions. Can you guys help me please?

ramvi (Fri, 18 Oct 2019 10:07:25 GMT):
Using the `besu-quickstart` with `-c ibft` (this is undocumented by the way), only sets up one validator. Doesn't a ibft2 chain need at least 4 validators? Console: https://pastebin.com/7gpuWXQm

NicolasMassart (Fri, 18 Oct 2019 10:08:31 GMT):
Hi @obernardovieira , for security reasons, Besu doesn't provide account management. You have to create accounts in a third party secure wallet like Metamask or any wallet you trust, or use our proxy signer EthSigner (https://docs.ethsigner.pegasys.tech). More about Besu account management can be found on https://besu.hyperledger.org/en/latest/HowTo/Interact/APIs/API/#account-management

NicolasMassart (Fri, 18 Oct 2019 10:14:03 GMT):
You can add validators manually after the first run using RPC: https://besu.hyperledger.org/en/latest/HowTo/Configure/Consensus-Protocols/IBFT/#adding-a-validator The option is not documented, but I like that you read the script, because we are working on a new tool and focusing our efforts on it. So feel free to use it, it works well and you should also see a list of validators that's not displayed wen you use the default PoW quickstart. Make your RPC call on this validator to add another one, then run your request on both validators to add a third one and finally you can run the addition request on only 2 on 3 of the validators to add a 4th one as we require only majority (> 50% of the validators)

obernardovieira (Fri, 18 Oct 2019 10:16:49 GMT):
Hi, thank you. I'll have a look.

NicolasMassart (Fri, 18 Oct 2019 10:23:34 GMT):
Looking at your files it seems to be an issue that you should directly discuss with Alethio. They have a Discord chat for that and I'm sure they would be glad to help you: https://discord.gg/FJRzDY

NicolasMassart (Fri, 18 Oct 2019 10:30:11 GMT):
We are planning on moving moving some tutorials to PoA, quickstart for instance as you noticed has Clique and IBFT2 capabilities. But we already have IBFT2 and Clique specific tutorials, so we wanted to keep it simple on the basic howtos and quickstart for now as PoW is easier to setup for new users. PoA is well established and working, but we have to admit that if you are really new to Ethereum and running a node, PoW is maybe the smart way to start as it matches what people can see running on mainnet. As Besu is a mainnet capable client, it's the way we chose to make them approach our software.

ramvi (Fri, 18 Oct 2019 10:57:04 GMT):
Thanks!

ramvi (Fri, 18 Oct 2019 13:12:05 GMT):
When allowing docker to select the port, where is port 30303 of the bootnode directed? ``` Besu Quickstart 1.3.1-ibft2 ************************************* List endpoints and services ---------------------------------- Name Command State Ports ------------------------------------------------------------------------------------------------------------------ besu-quickstart_bootnode_1 /opt/besu/bootnode_start.s ... Up 30303/tcp, 8545/tcp, 8546/tcp, 8547/tcp besu-quickstart_explorer_1 nginx -g daemon off; Up 0.0.0.0:32770->80/tcp besu-quickstart_grafana_1 /run.sh Up 3000/tcp besu-quickstart_node_1 /opt/besu/node_start.sh -- ... Up 30303/tcp, 8545/tcp, 8546/tcp, 8547/tcp besu-quickstart_node_2 /opt/besu/node_start.sh -- ... Up 30303/tcp, 8545/tcp, 8546/tcp, 8547/tcp besu-quickstart_node_3 /opt/besu/node_start.sh -- ... Up 30303/tcp, 8545/tcp, 8546/tcp, 8547/tcp besu-quickstart_node_4 /opt/besu/node_start.sh -- ... Up 30303/tcp, 8545/tcp, 8546/tcp, 8547/tcp besu-quickstart_prometheus_1 /bin/prometheus --config.f ... Up 9090/tcp besu-quickstart_rpcnode_1 /opt/besu/node_start.sh -- ... Up 30303/tcp, 8545/tcp, 8546/tcp, 8547/tcp ```

ramvi (Fri, 18 Oct 2019 13:12:17 GMT):
I wish to connect from a different machine

ramvi (Fri, 18 Oct 2019 13:17:44 GMT):
i.e. what is the dynamic docker port mapping for port 30303 on the bootnode?

ramvi (Fri, 18 Oct 2019 13:44:29 GMT):
Maybe I could just change the command that starts the bootnode with `-p 30303:30303`?

ramvi (Fri, 18 Oct 2019 13:44:38 GMT):
Unsure where that is though…

NicolasMassart (Fri, 18 Oct 2019 13:44:42 GMT):
It's not exposed in the docker quickstart. This quickstart network is aimed at being self contained demo/quickstart/fast overview of Besu ecosystem. So the 30303 port is only reachable inside of the quickstart docker compose network. We only expose endpoint outside of the Docker network for RPC and web tools like the explorer or Grafana. They are all available trough a reverse proxy (nginx), here on the dynamically allocated port 32770 on your example. It allows you to run miltiple quickstarts in parallel if you want.

NicolasMassart (Fri, 18 Oct 2019 13:46:50 GMT):
You can technically do that but the issue is that you will only be able to connect to the bootnode, and not to all the other nodes on the network. Bootnodes are only a venue for discovery, but then nodes are expected to communicate directly, it's P2P. So if your other nodes 30303 ports are not exposed to the outside, they won;t be able to communicate with the nodes outside of your docker network.

ramvi (Fri, 18 Oct 2019 13:46:53 GMT):
How are the 5 nodes able to connect to each other without having access to the 30303 port?

NicolasMassart (Fri, 18 Oct 2019 13:47:13 GMT):
they have, but only inside the Docker network.

NicolasMassart (Fri, 18 Oct 2019 13:47:24 GMT):
It's like an isolated network.

ramvi (Fri, 18 Oct 2019 13:47:41 GMT):
oh wow, I still have a lot to learn about docker I guess

NicolasMassart (Fri, 18 Oct 2019 13:48:08 GMT):
It's a very rich subject I admit

ramvi (Fri, 18 Oct 2019 13:50:23 GMT):
So what you're saying is that I have to set it all up manually to be able to connect another node to the network?

ramvi (Fri, 18 Oct 2019 13:50:33 GMT):
No quick fix with the docker containers?

NicolasMassart (Fri, 18 Oct 2019 13:50:45 GMT):
What you could do is having your new node in a Docker container too and make it connect to the existing network. Then it will have access to the inside of the network : https://docs.docker.com/engine/reference/commandline/network_connect/

NicolasMassart (Fri, 18 Oct 2019 13:51:57 GMT):
If your new node is in a docker container, using docker network connect will help https://docs.docker.com/engine/reference/commandline/network_connect/ If it's not in a docker container, it's going to be far more complicated.

ramvi (Fri, 18 Oct 2019 13:52:42 GMT):
Can the docker containers can be in a virtual network across the internet e.g. the network I now have running on the azure node, and my local machine?

NicolasMassart (Fri, 18 Oct 2019 13:54:39 GMT):
No, it has to be on the same docker engine I gess, at least if you are just using Docker/Docker compose/quickstart. Otherwise there's other ways to do with tools like Kubernetes, but that's another story. What would you like to achieve exactly, if you allow me to go back to your initial need?

ramvi (Fri, 18 Oct 2019 13:57:31 GMT):
Thanks for your time and interest Nicolas! I want to have one node in one location (but i can be 4+ nodes in that first location since IBFT2 needs it) and then I want another node in another location. That's what I'm trying to achieve: a network across the internet with at least two locations

ramvi (Fri, 18 Oct 2019 13:58:52 GMT):
We are one company and 2 government agencies who want to test setting up a besu network together

NicolasMassart (Fri, 18 Oct 2019 14:00:34 GMT):
I think that you exceeded the quickstart capabilities here. What you try to achieve is already things we do with other companies usually using Kubernetes and some cloud (AWS/Azure). We could help you create this structure at Pegasys if you like. Would you like to be contacted by our team?

ramvi (Fri, 18 Oct 2019 14:01:09 GMT):
Sure

NicolasMassart (Fri, 18 Oct 2019 14:01:52 GMT):
I will contact you by PM

madelinemurray (Mon, 21 Oct 2019 08:59:53 GMT):
@eum602 - we've merged a PR for the JI for your issue (https://pegasys1.atlassian.net/browse/PAN-3240). Could you retry your scenario with the latest master and let us know if that solves the problem?

madelinemurray (Mon, 21 Oct 2019 10:06:10 GMT):
hi @RealDeanZhao - we're currently actively engaged with Whiteblock to implement a set of tests and benchmarks, including the TPS benchmark.

ramvi (Mon, 21 Oct 2019 13:22:34 GMT):
When I'm initiating two deploy scripts targeting the same node, blabla:8545, with rpc http requests, one proceeds and one is blocked. Does besu put requests in a non asynchoqious queue?

ramvi (Mon, 21 Oct 2019 13:23:13 GMT):
Q2: We moved our software from a PoA parity. Besu seems much slower. Is that correct?

shemnon (Mon, 21 Oct 2019 13:51:17 GMT):
blocked how? The RPC fails to continue? The contract doesn't deploy until the next block? I'm not aware of any synchronization locks that would block one RPC ove the other, they are both fed into a multi-threaded queue run by vertx.

eum602 (Mon, 21 Oct 2019 15:15:03 GMT):
Hello @madelinemurray @antonydenyer , I have tested the functionality to read a variable of a public smart contract from a private smart contract, now it works!. Here you can see how when node 1 and node 2 participate in a private smart contract by which they access a public smart contract(the response is as expected), also when node 3 try to access the private smart contract, to read a public SC, then it is not able to perform that action. Nodes do not crash anymore and any node is able to join without issues.

eum602 (Mon, 21 Oct 2019 15:15:43 GMT):

Clipboard - October 21, 2019 10:15 AM

eum602 (Mon, 21 Oct 2019 15:15:51 GMT):
here you can see the results.

eum602 (Mon, 21 Oct 2019 15:19:33 GMT):
The only detail that calls my attention is the message that appears on nodes with orion transaction manager enabled who are not participating in the transaction:

eum602 (Mon, 21 Oct 2019 15:20:12 GMT):

Clipboard - October 21, 2019 10:20 AM

eum602 (Mon, 21 Oct 2019 15:21:02 GMT):
without considering that detail all works well

ramvi (Mon, 21 Oct 2019 17:25:42 GMT):
One of the deploy scripts complete, while the other just waits for response. When the first completes, the second continues

shemnon (Mon, 21 Oct 2019 17:25:59 GMT):
What RPCs are they calling?

ramvi (Mon, 21 Oct 2019 17:25:59 GMT):
the other deploy script, that is

ramvi (Mon, 21 Oct 2019 17:26:11 GMT):
json rpc

ramvi (Mon, 21 Oct 2019 17:26:16 GMT):
Or what methonds?

shemnon (Mon, 21 Oct 2019 17:26:24 GMT):
which methods

ramvi (Mon, 21 Oct 2019 17:27:20 GMT):
It's a combination of deploy contracts and interactions with them (send_rawtx)

ramvi (Mon, 21 Oct 2019 17:27:38 GMT):
Though, I'm not writing the raw tx directly. It's a script in ethers.js

shemnon (Mon, 21 Oct 2019 17:30:23 GMT):
So to confirm, you don't see this behavior on geth or parity right?

ramvi (Mon, 21 Oct 2019 18:09:14 GMT):
Correct

ramvi (Mon, 21 Oct 2019 18:09:25 GMT):
Well, only tested with parity and ganach. Not geth

shemnon (Mon, 21 Oct 2019 18:11:44 GMT):
I'll need to know which apis are being called. If there was a sync block I would expect more of an interleave rather than an all of 1 then all of 2 type situation, unless there is only one real working RPC call.

shemnon (Mon, 21 Oct 2019 18:12:20 GMT):
Can you do a run where you turn on logging to debug (`--logging=DEBUG`) and then tell us what RPCs are called (grep JsonRpcHttpService )?

madelinemurray (Mon, 21 Oct 2019 19:16:40 GMT):
Great. Thanks @eum602

pcmola (Mon, 21 Oct 2019 23:12:38 GMT):
Hi. In 'Configuring a Network for Private Transactions' example, the count of IBFT Node is 3. http://besu.hyperledger.org/en/stable/Tutorials/Privacy/Configuring-Privacy/ I heard that it is recommended to be 3n+1 node in IBFT. Is it okay that the the count of the node is 3?

conradjohnson (Tue, 22 Oct 2019 13:12:50 GMT):
Has joined the channel.

conradjohnson (Tue, 22 Oct 2019 13:12:50 GMT):
Trying to run the consensys academy setup for EthHash here - https://docs.pantheon.pegasys.tech/en/stable/Tutorials/Private-Network/Create-Private-Network/

conradjohnson (Tue, 22 Oct 2019 13:13:11 GMT):
Getting an uncaught exception.

conradjohnson (Tue, 22 Oct 2019 13:13:27 GMT):
`2019-10-22 08:11:42.625-05:00 | main | ERROR | Besu | Uncaught exception in thread "main" java.lang.UnsatisfiedLinkError: /private/var/folders/m6/wvjjl0154g54sl7vr3xgglmr0000gn/T/librocksdbjni4858103180533867075.jnilib: dlopen(/private/var/folders/m6/wvjjl0154g54sl7vr3xgglmr0000gn/T/librocksdbjni4858103180533867075.jnilib, 1): Symbol not found: __ZdlPvSt11align_val_t Referenced from: /private/var/folders/m6/wvjjl0154g54sl7vr3xgglmr0000gn/T/librocksdbjni4858103180533867075.jnilib (which was built for Mac OS X 10.13) Expected in: /usr/lib/libc++.1.dylib in /private/var/folders/m6/wvjjl0154g54sl7vr3xgglmr0000gn/T/librocksdbjni4858103180533867075.jnilib at java.lang.ClassLoader$NativeLibrary.load0(Native Method) ~[?:?] at java.lang.ClassLoader$NativeLibrary.load(ClassLoader.java:2440) ~[?:?] at java.lang.ClassLoader$NativeLibrary.loadLibrary(ClassLoader.java:2497) ~[?:?] at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:2694) ~[?:?] at java.lang.ClassLoader.loadLibrary(ClassLoader.java:2627) ~[?:?] at java.lang.Runtime.load0(Runtime.java:744) ~[?:?] at java.lang.System.load(System.java:1870) ~[?:?] at org.rocksdb.NativeLibraryLoader.loadLibraryFromJar(NativeLibraryLoader.java:78) ~[rocksdbjni-5.15.10.jar:?] at org.rocksdb.NativeLibraryLoader.loadLibrary(NativeLibraryLoader.java:56) ~[rocksdbjni-5.15.10.jar:?] at org.rocksdb.RocksDB.loadLibrary(RocksDB.java:64) ~[rocksdbjni-5.15.10.jar:?] at org.rocksdb.RocksDB.(RocksDB.java:35) ~[rocksdbjni-5.15.10.jar:?] at org.hyperledger.besu.plugin.services.storage.rocksdb.RocksDbUtil.loadNativeLibrary(RocksDbUtil.java:30) ~[besu-plugin-rocksdb-1.3.1.jar:1.3.1] at org.hyperledger.besu.plugin.services.storage.rocksdb.segmented.RocksDBColumnarKeyValueStorage.(RocksDBColumnarKeyValueStorage.java:63) ~[besu-plugin-rocksdb-1.3.1.jar:1.3.1] at org.hyperledger.besu.plugin.services.storage.rocksdb.RocksDBKeyValueStorageFactory.create(RocksDBKeyValueStorageFactory.java:111) ~[besu-plugin-rocksdb-1.3.1.jar:1.3.1] at org.hyperledger.besu.ethereum.storage.keyvalue.KeyValueStorageProviderBuilder.build(KeyValueStorageProviderBuilder.java:66) ~[besu-core-1.3.1.jar:1.3.1] at org.hyperledger.besu.cli.BesuCommand.keyStorageProvider(BesuCommand.java:1360) ~[besu-1.3.1.jar:1.3.1] at org.hyperledger.besu.cli.BesuCommand.getControllerBuilder(BesuCommand.java:1095) ~[besu-1.3.1.jar:1.3.1] at org.hyperledger.besu.cli.BesuCommand.buildController(BesuCommand.java:1073) ~[besu-1.3.1.jar:1.3.1] at org.hyperledger.besu.cli.BesuCommand.controller(BesuCommand.java:1067) ~[besu-1.3.1.jar:1.3.1] at org.hyperledger.besu.cli.BesuCommand.run(BesuCommand.java:790) ~[besu-1.3.1.jar:1.3.1] at picocli.CommandLine.execute(CommandLine.java:1160) ~[picocli-3.9.6.jar:3.9.6] at picocli.CommandLine.access$800(CommandLine.java:141) ~[picocli-3.9.6.jar:3.9.6] at picocli.CommandLine$RunLast.handle(CommandLine.java:1367) ~[picocli-3.9.6.jar:3.9.6] at picocli.CommandLine$RunLast.handle(CommandLine.java:1335) ~[picocli-3.9.6.jar:3.9.6] at picocli.CommandLine$AbstractParseResultHandler.handleParseResult(CommandLine.java:1243) ~[picocli-3.9.6.jar:3.9.6] at picocli.CommandLine.parseWithHandlers(CommandLine.java:1526) ~[picocli-3.9.6.jar:3.9.6] at org.hyperledger.besu.cli.util.ConfigOptionSearchAndRunHandler.handle(ConfigOptionSearchAndRunHandler.java:61) ~[besu-1.3.1.jar:1.3.1] at org.hyperledger.besu.cli.util.ConfigOptionSearchAndRunHandler.handle(ConfigOptionSearchAndRunHandler.java:31) ~[besu-1.3.1.jar:1.3.1] at picocli.CommandLine$AbstractParseResultHandler.handleParseResult(CommandLine.java:1243) ~[picocli-3.9.6.jar:3.9.6] at picocli.CommandLine.parseWithHandlers(CommandLine.java:1526) ~[picocli-3.9.6.jar:3.9.6] at org.hyperledger.besu.cli.BesuCommand.parse(BesuCommand.java:899) ~[besu-1.3.1.jar:1.3.1] at org.hyperledger.besu.cli.BesuCommand.parse(BesuCommand.java:782) ~[besu-1.3.1.jar:1.3.1] at org.hyperledger.besu.Besu.main(Besu.java:49) ~[besu-1.3.1.jar:1.3.1]`

conradjohnson (Tue, 22 Oct 2019 13:13:41 GMT):
when I try to start the first node

conradjohnson (Tue, 22 Oct 2019 13:13:55 GMT):
using this command:

conradjohnson (Tue, 22 Oct 2019 13:14:04 GMT):
"besu --data-path=data --genesis-file=private-network/privateNetworkGenesis.json --bootnodes --miner-enabled --miner-coinbase fe3b557e8fb62b89f4916b721be55ceb828dbd73 --rpc-http-enabled --host-whitelist="*" --rpc-http-cors-origins="all""

conradjohnson (Tue, 22 Oct 2019 13:14:04 GMT):
`besu --data-path=data --genesis-file=private-network/privateNetworkGenesis.json --bootnodes --miner-enabled --miner-coinbase fe3b557e8fb62b89f4916b721be55ceb828dbd73 --rpc-http-enabled --host-whitelist="*" --rpc-http-cors-origins="all"`

conradjohnson (Tue, 22 Oct 2019 13:20:05 GMT):
macOS Sierra v 10.12.6

conradjohnson (Tue, 22 Oct 2019 13:29:32 GMT):
ah... I need to update past 10.12 apparently.

eum602 (Tue, 22 Oct 2019 16:40:50 GMT):
Hello everyone, I wonder if is there a way to call the list of validators, in an IBTF2 network, from a smart contract. I appeciate any response. Thanks.

madelinemurray (Tue, 22 Oct 2019 19:45:34 GMT):
hi @pcmola - the network will function but you're correct, 4 validators are needed for the network to be Byzantine fault tolerant. I'm adding the following note to the tutorial: This tutorial configures a private network using IBFT 2.0 for educational purposes only. IBFT 2.0 requires 4 validators to be Byzantine fault tolerant.

ajsutton (Tue, 22 Oct 2019 19:48:32 GMT):
No, unfortunately, this information is not available inside the EVM.

madelinemurray (Tue, 22 Oct 2019 19:55:24 GMT):
@pcmola - sorry about the delay on responding to this one. When you start nodes 2, 3, and 4, do you see the `loaded key` line in the log file? It's the 4th line displayed: `2019-10-23 05:51:58.586+10:00 | main | INFO | KeyPairUtil | Loaded key 0x21ff... from ....` Or do you see a line indicating a new key was generated? `2019-10-23 05:54:17.384+10:00 | main | INFO | KeyPairUtil | Generated new key 0xeba... and stored it to ...`

madelinemurray (Tue, 22 Oct 2019 20:03:17 GMT):
hi @yunho.chung - sorry about the delay in reply. What versions of Besu and Orion are you using?

trent.mohay (Tue, 22 Oct 2019 22:01:36 GMT):
Hi @pcmola, as @madelinemurray, we'd recommend you have a minimum of 4 validators in an IBFT2 network - however, any number above that is secure - though performance degrades as you approach ~20 validators. I personally, wouldn't recommend going above 20 - though have no specific metrics to back that up.

arash009 (Wed, 23 Oct 2019 00:26:48 GMT):
Hi all. Besu 1.3.2 has been released! Get your copy here: https://bintray.com/hyperledger-org/besu-repo/besu/1.3.2#files Changelog available at: https://github.com/hyperledger/besu/releases/tag/1.3.2

raullaprida (Wed, 23 Oct 2019 02:28:16 GMT):
Has joined the channel.

raullaprida (Wed, 23 Oct 2019 02:28:16 GMT):
I have the following question, If a private transaction (off chain, using Orion) is submited, the transaction with the private transaction hash is added to the block everything goes as expected and nodes with the precompiled contract fetch the actual transaction from Orion and the Private Transaction Processor Excecutes it. What would happen if the transaction execution fails in one (or several) of the nodes of the Privacy Group?, but not in all of them, some sucessfully execute the private trx and update their private state.

raullaprida (Wed, 23 Oct 2019 02:31:37 GMT):
I can't just sync my private state with one of the other nodes that belong to the privacy group

raullaprida (Wed, 23 Oct 2019 02:32:54 GMT):
I suppose a manual solution is asking all of them and compare the state, and hoping they are not colluding against me.

raullaprida (Wed, 23 Oct 2019 02:32:54 GMT):
I suppose a manual solution is either retrying the execution, or asking all of them and compare the state, and hoping they are not colluding against me.

raullaprida (Wed, 23 Oct 2019 02:32:54 GMT):
I suppose a manual solution is either quickly retrying the execution, or asking all of them and compare the state, and hoping they are not colluding against me

raullaprida (Wed, 23 Oct 2019 02:32:54 GMT):
I suppose a manual solution is either quickly retrying the execution, or asking all of them and compare the state, and hoping they are not colluding against me. But seems cumbersome, specially since it's not the only transaction the node needs to execute

raullaprida (Wed, 23 Oct 2019 02:32:54 GMT):
I suppose a manual solution is either quickly retrying the execution, or asking all of them (the privacy group) and compare the state, and hoping they are not colluding against me. But seems cumbersome, specially since it's not the only transaction the node needs to execute

raullaprida (Wed, 23 Oct 2019 02:32:54 GMT):
I suppose a possible solution is trying re-processing the proposed block, or quickly retrying the execution of the private tx, or perhaps asking the private state to all of them (the privacy group) and compare them before applying that state, hoping they are not colluding against me ( cumbersome solution)

raullaprida (Wed, 23 Oct 2019 02:32:54 GMT):
I suppose a possible solution is trying re-processing the proposed block (if IBFT is being used the proposed block is already final at this stage), or quickly retrying the execution of the private tx, or perhaps asking the private state to all of them (the privacy group) and compare them before applying that state, hoping they are not colluding against me ( cumbersome solution)

raullaprida (Wed, 23 Oct 2019 02:32:54 GMT):
I suppose a possible solution is trying re-processing the proposed block (if IBFT is being used the proposed block is already final at this stage), or quickly retrying the execution of the private tx, or perhaps asking the private state to all of them (the privacy group) and compare them before applying that state, hoping they are not colluding against me ( cumbersome solution). Or, perhaps, sending a message to the other orion nodes of the privacy group to discard the trx?

raullaprida (Wed, 23 Oct 2019 02:33:06 GMT):
but I was wondering if this is already covered in besu

bgravenorst (Wed, 23 Oct 2019 03:52:30 GMT):
Has joined the channel.

lucassaldanha (Wed, 23 Oct 2019 04:28:13 GMT):
The processing of a private transaction starts from a privacy transaction marker (PTM) that exists in the public chain. The PTM is a transaction sent to the privacy precompile, that will process the corresponding private transaction in the nodes that are part of the privacy group id. In the case of the private transaction processing failing in some of the nodes, the processing of the PTM (a tx in the public chain) will also fail, causing the nodes to end up with a different public state, therefore creating a fork. However, you should never get to a point where your private transactions are failing for some of the nodes. The usual reason for this to happen is caused by Orion unavailability. Unfortunately, our current implementation expects that Orion nodes are highly available. I hope this answer your question!

lucassaldanha (Wed, 23 Oct 2019 04:29:09 GMT):
@antonydenyer and @iikirilov can give you more details if you need anything else

pcmola (Wed, 23 Oct 2019 05:17:44 GMT):
I see the loaded key in node 2, 3, 4.

pcmola (Wed, 23 Oct 2019 05:17:52 GMT):
2019-10-23 14:15:38.286+09:00 | main | INFO | KeyPairUtil | Loaded key 0x71f2f210e9701008a6774015b0806467a446e811f25b1797224a49a27a73037eb2b909e7b293c93a42b4740565f237ccd89b1f285ebad7a5ef876cd1c2e56a4c from /Users/pcmola/my/edu/besu/IBFT-Network/Node-2/data/key

pcmola (Wed, 23 Oct 2019 05:19:49 GMT):
2019-10-23 14:15:42.646+09:00 | main | INFO | KeyPairUtil | Loaded key 0x3f5acb72b5a8436318c26b014e45caa3477e70d328d87d5dfefb2149c1406715c547dc2d9f29adc73024e95a164d49d71107e3149105defb943807925f4aea35 from /Users/pcmola/my/edu/besu/IBFT-Network/Node-3/data/key

pcmola (Wed, 23 Oct 2019 05:19:59 GMT):
2019-10-23 14:16:31.297+09:00 | main | INFO | KeyPairUtil | Loaded key 0x4cde66c509327f0bea090aad56748c41a2aa6d33c5b4b7e77088cdd0c93f43876512be86fd0c76efaf9b6994b1a6eb5e0ae182a06c2c5dcdfc3f20a537db6169 from /Users/pcmola/my/edu/besu/IBFT-Network/Node-4/data/key

sanket1211 (Wed, 23 Oct 2019 09:16:24 GMT):
docker run -p 30303:30303 --mount type=bind,source=/,target=/var/lib/besu hyperledger/besu:latest --network=rinkeby --data-path=/var/lib/besu.......what should be the source????

trent.mohay (Wed, 23 Oct 2019 10:07:08 GMT):
HI @pcmola, I've analysed your log files above, and it appears the NodeKeys being used by nodes 2-4 do not align with the validators specified in the ExtraData of the genesis file. That may indicate a failure in our documentation (which I'll go through next) - but I think the simplest way to get you up and running is to replace the "extraData" value in each of your nodes' genesis file with the following: 0xf87ea00000000000000000000000000000000000000000000000000000000000000000f854945d301767ae21d29200661a24d9318d57885316fe94479b3fd753f6d6abf3ca90fb8c958589f1ac76769490412f52131219dc9cbb6bb4086d9fb581415163949ad9392bced25294981a323f167c45e97eba2aba808400000000c0 This will ensure that each of your existing node-keys corresponds to a validator in the network.

trent.mohay (Wed, 23 Oct 2019 10:07:41 GMT):
Which in turn should mean that blocks will get mined at a steady rate.

madelinemurray (Wed, 23 Oct 2019 10:19:50 GMT):
The absolute path to the directory to be mounted as the storage volume

sanket1211 (Wed, 23 Oct 2019 11:30:40 GMT):
could u suggest me a good doc with steps to run besu?

raullaprida (Wed, 23 Oct 2019 12:38:32 GMT):
Thank you!, Another question, @antonydenyer or @iikirilov, if I may, What kind of public state data is the precompiled contract that calls the private transaction processor actually storing after a successful execution? Also, is the only one validating the actual private transaction the node submitting it? or in the first stage, when Orion sends the tx to the other orion nodes, then those nodes actually validate the tx before the tx hash is sent back to the actual submitter (and then a block). Thanks!!

raullaprida (Wed, 23 Oct 2019 12:38:32 GMT):
Thank you!, Another question, @antonydenyer or @iikirilov, if I may, What kind of public state data is the precompiled contract that calls the private transaction processor actually storing after a successful execution? Also, is the only one validating the actual private transaction the node submitting it? or in the first stage, when Orion sends the tx to the other orion nodes, then those nodes actually validate the tx before the tx hash is sent back to the actual submitter (and then a block)?. Thanks!!

raullaprida (Wed, 23 Oct 2019 12:38:32 GMT):
Thank you!, Another question, @antonydenyer or @iikirilov, if I may, What kind of public state data is the precompiled contract that calls the private transaction processor actually storing after a successful execution? Also, is the transaction only validated while the PrivacyTransactionProcessor starts the execution of the transaction? or in the first stage, when Orion sends the tx to the other orion nodes, then those nodes actually validate the tx before the tx hash is sent back to the actual submitter (and then a block)?. Thanks!!

raullaprida (Wed, 23 Oct 2019 12:38:32 GMT):
Thank you!, Another question, @antonydenyer or @iikirilov, if I may, What kind of public state data is the precompiled contract that calls the private transaction processor (that executes the priv trx) actually storing after a successful execution? Also, is the transaction only validated while the PrivacyTransactionProcessor starts the execution of the transaction? or in the first stage, when Orion sends the tx to the other orion nodes, then those nodes actually validate the tx before the tx hash is sent back to the actual submitter (and then a block)?. Thanks!!

raullaprida (Wed, 23 Oct 2019 12:38:32 GMT):
Thank you!, Another question, @antonydenyer or @iikirilov, if I may, What kind of public state data is the precompiled contract that calls the private transaction processor (that executes the priv trx) actually storing after a successful execution? Also, is the transaction only validated while the PrivacyTransactionProcessor starts the execution of the transaction? or in the first stage, when Orion sends the tx to the other orion nodes, then those nodes actually validate the tx before the tx hash is calculated and submitted in a transaction (and then added to a block)?. Thanks!!

heiho1 (Wed, 23 Oct 2019 18:21:11 GMT):
Just a comment that I upgraded my OS X to Catalina and re-installed xcode and now the gradle build is running fine. I also had to re-brew the java11 install but so far 362 tests completed.

lucassaldanha (Wed, 23 Oct 2019 18:46:09 GMT):
Raul, I suggest you to take a look at this diagram that contains the private transaction processing flow: https://besu.hyperledger.org/en/stable/Concepts/Privacy/Private-Transaction-Processing/ Basically, first the node distribute the payload to other participants (other Orion nodes), then Besu will validate and process the transaction (on the private state). If successful, it will create the PTM that will be added to the public chain. When another node sees the PTM, it will try to process the tx. Things happen in this order: 1. nodeA will distribute the transaction payload to nodeB 2. nodeA will validate and execute the transaction. If successful, a privacy transaction marker will be created. 3. Upon seeing the PTM in the public chain, nodeB will start processing the tx. If when nnodeA was validating and processing the tx it failed, the node wouldn't have created the PTM.

raullaprida (Wed, 23 Oct 2019 18:50:22 GMT):
right that's what I understood, I wanted to know if the scenario where node maliciously tries to send an invalid private transaction was covered, by pre-validating the actual trx before the hash gets into a block

lucassaldanha (Wed, 23 Oct 2019 18:50:58 GMT):
Cool!

madelinemurray (Wed, 23 Oct 2019 19:50:36 GMT):
Sure can. There's a few different options depending on what you want to do. If you install Besu - https://besu.hyperledger.org/en/stable/HowTo/Get-Started/Install-Binaries/, this doc describes the CLI options needed for different scenarios: https://besu.hyperledger.org/en/stable/HowTo/Get-Started/Starting-node/

madelinemurray (Wed, 23 Oct 2019 19:51:58 GMT):
The tutorials describe how to configure a private network of nodes. This one uses the PoW Ethash consensus: https://besu.hyperledger.org/en/stable/Tutorials/Private-Network/Create-Private-Network/

madelinemurray (Wed, 23 Oct 2019 19:52:18 GMT):
What is it you're wanting to do with Besu?

pcmola (Thu, 24 Oct 2019 01:06:53 GMT):
Thank you for the advice. I just changed the extraData in the genesis.json file. Then I started Besu again after deleting all files in Node-x / data / database. I've seen block creation right away.

pcmola (Thu, 24 Oct 2019 01:07:34 GMT):
But the first question I had on chat-the truffle test didn't work-is still bothering me.

pcmola (Thu, 24 Oct 2019 01:07:54 GMT):
Compiling your contracts... =========================== > Everything is up to date, there is nothing to compile. Starting migrations... ====================== > Network name: 'quickstartWallet' > Network id: 2018 > Block gas limit: 0x47b760 1_initial_migration.js ====================== Deploying 'Migrations' ---------------------- Error: Error: Error: *** Deployment Failed *** "Migrations" exceeded the block limit (with a gas value you set). * Block limit: 0x1fee420 * Gas sent: 6721975 * Try: + Sending less gas. + Setting a higher network block limit if you are on a private network or test client (like ganache). at Object.run (/usr/local/lib/node_modules/truffle/build/webpack:/packages/migrate/index.js:96:1) at process._tickCallback (internal/process/next_tick.js:68:7) Truffle v5.0.39 (core: 5.0.39) Node v10.16.3

madelinemurray (Thu, 24 Oct 2019 01:07:59 GMT):
That's great. Let us know if you run into any further issues. I'm going to be looking at making some doc updates so it's clearer how to avoid/troubleshoot this issue.

madelinemurray (Thu, 24 Oct 2019 01:08:38 GMT):
Will look into the truffle issue now.

pcmola (Thu, 24 Oct 2019 01:14:39 GMT):
Thanks for looking into the truffle issue.

pcmola (Thu, 24 Oct 2019 01:14:39 GMT):
To confirm the problem, I added the source to CliqueExtraData.java and checked until it came out as follows:

trent.mohay (Thu, 24 Oct 2019 02:36:02 GMT):
@pcmola It appears the contract you're deploying (or at least the truffle migrations part thereof) requires more gas (6,721,975) than the Ethereum block is allowed to contain (4,700,000). As a first attempt, I'd suggest changing "gasLimit" in each of your genesis files to 0x6ACFC0 (7,000,000) - you will need to delete your existing data (again) unfortunately.

shemnon (Thu, 24 Oct 2019 02:50:31 GMT):
Alternatly you could run with `--target-gas-limit=7000000` and wait for the block gas limit to rise. Should take ~ 500 blocks.

shemnon (Thu, 24 Oct 2019 02:51:05 GMT):
About 2 hours for 15 second blocks.

sanket1211 (Thu, 24 Oct 2019 04:39:04 GMT):
wanted to create a private network and deploy smart contract

sanket1211 (Thu, 24 Oct 2019 04:54:18 GMT):
for starting the node there are command for just macos and windows...i want to run it on ubuntu..

podgostar (Thu, 24 Oct 2019 06:24:47 GMT):
Has joined the channel.

podgostar (Thu, 24 Oct 2019 06:24:48 GMT):
Hello! One question. Let's say that we have a consortium (enterprise) blockchain network with Hyperledger Besu (Pantheon). Does it make sense to set up additionaly distributed data storage (ipfs or swarm) network across nodes which already run Pantheon clients fot the data storage purposes? Or it is better to increase the maximum block gas limit and then store data to blockchain?

ajsutton (Thu, 24 Oct 2019 06:29:56 GMT):
The ethereum world state isn't optimised for large blobs of data, but it scales pretty well to having lots of reasonably small data items. So if you're doing a lot of work with files like images, I'd generally assume something like ifs or swarm would be worth the effort. Really the only way to tell is to do some tests with storing the data in the Ethereum world state and see if it works well enough for your specific use cases. If you find you need to raise the block gas limit to extremely high values to store the amount of data you need that would also be a sign that ipfs/swarm would be worthwhile.

podgostar (Thu, 24 Oct 2019 07:10:42 GMT):
As you say.. depends on the use-case.. we will do the research about this. Thank you for your opinion!

antonydenyer (Thu, 24 Oct 2019 07:12:46 GMT):
You could cause a lot of trouble by sending (via orion) different private transactions to different nodes then creating a marker transaction manually. Each node would then have a different private state. A solution to this would be to include some kind of zk proof of the transaction that could be stored on the public chain. At the moment it's not on the roadmap for the next 6 months but that's not to say it couldn't be added after that if enough people want it. Near term we're looking at POW compatibility and on private chain privacy group management.

antonydenyer (Thu, 24 Oct 2019 07:23:40 GMT):
Currently, everyone's orion instance in the privacy group needs to be up for transactions to be submitted. We are looking at ways of improving the situation (like you said call for help etc).

arunog (Thu, 24 Oct 2019 10:45:46 GMT):
Has joined the channel.

SamuelDare (Thu, 24 Oct 2019 14:57:28 GMT):
admin

SamuelDare (Thu, 24 Oct 2019 14:58:45 GMT):
I thought besu didnt implement admin methods... is this new? last time i checked on pantheon it didnt but looking at the latest docs it seems to work

SamuelDare (Thu, 24 Oct 2019 14:58:45 GMT):
I thought besu didnt implement admin methods... is this new? last time i checked on pantheon it didnt but looking at the latest docs it seems to have it

shemnon (Thu, 24 Oct 2019 15:12:11 GMT):
admin_ RPCs are not standardized. But some are shared. we currently have `admin_addPeer`, `admin_nodeInfo` and `admin_peers` which are shared, we also have `admin_removePeer` and `admin_changeLogLevel` are ones we add and that are unique to us.

SamuelDare (Thu, 24 Oct 2019 15:12:46 GMT):
thanks.. when were they introduced?

shemnon (Thu, 24 Oct 2019 15:13:32 GMT):
not entirely sure, CHANGELOG.md should have the info. Each came in one at a time.

madelinemurray (Thu, 24 Oct 2019 19:52:56 GMT):
They were introduced at different times - admin_changeLogLevel is the only one you'd really call new.

carlosalca (Fri, 25 Oct 2019 05:56:15 GMT):
Has joined the channel.

SamuelDare (Fri, 25 Oct 2019 12:04:00 GMT):
I need to create preallocated accounts for my cluster.. is adding them to the genesis file the only way? In addition to this, is there a tool for create ethereum addresses?

SamuelDare (Fri, 25 Oct 2019 13:25:41 GMT):
Here is my genesis file : ``` { "alloc": { "d0c4128ac194ccf505469f5ef2ff0cac99939f76": { "balance": "1000000000000000000000000000" }, "166758ded5c58a1e0de3db0f0554c8c55a64ff6b": { "balance": "1000000000000000000000000000" }, "c5f4a77564b0d7436b7c6b2fb3c4b546411568ea": { "balance": "1000000000000000000000000000" }, "32322def41caaa56e5076c24efceefa5262e6f3c": { "balance": "1000000000000000000000000000" } }, "coinbase": "0x0000000000000000000000000000000000000000", "config": { "chainId": 7556, "constantinoplefixblock": 0, "ibft2": { "blockperiodseconds": 5, "epochlength": 30000, "requesttimeoutseconds": 10 } }, "difficulty": "0x0", "extraData": "0xf87ea00000000000000000000000000000000000000000000000000000000000000000f85494d0c4128ac194ccf505469f5ef2ff0cac99939f7694166758ded5c58a1e0de3db0f0554c8c55a64ff6b94c5f4a77564b0d7436b7c6b2fb3c4b546411568ea9432322def41caaa56e5076c24efceefa5262e6f3c808400000000c0", "gasLimit": "0xE0000000", "mixHash": "0x63746963616c2062797a616e74696e65206661756c7420746f6c6572616e6365", "nonce": "0x0", "timestamp": "0x00" } ```

SamuelDare (Fri, 25 Oct 2019 13:26:34 GMT):
when i try web.eth.account, it returns an empty array

SamuelDare (Fri, 25 Oct 2019 13:26:42 GMT):
also via RPC

SamuelDare (Fri, 25 Oct 2019 13:26:46 GMT):
what am i doing wrong?

SamuelDare (Fri, 25 Oct 2019 13:31:04 GMT):
is it because the balance isnt in hex?

shemnon (Fri, 25 Oct 2019 13:48:21 GMT):
try `web.eth.getBalance('d0c4128ac194ccf505469f5ef2ff0cac99939f76')`. web.eth.account is for the wallet services that Besu doesn't support. It only would access accounts stored on the node you are connecting to.

shemnon (Fri, 25 Oct 2019 13:48:21 GMT):
try `web.eth.getBalance('d0c4128ac194ccf505469f5ef2ff0cac99939f76')`. `web.eth.account` is for the wallet services that Besu doesn't support. It only would access accounts stored on the node you are connecting to.

shemnon (Fri, 25 Oct 2019 13:49:43 GMT):
And yes, the `genisis.json` file is the only way to pre-seed wallet values. Basically required since IBFT(2) and Clique don't provide miner rewards.

SamuelDare (Fri, 25 Oct 2019 13:57:31 GMT):
so how can i select account in besu?

SamuelDare (Fri, 25 Oct 2019 13:57:55 GMT):
i am trying to access accounts on the nodes and it still doesnt seem to be working

SamuelDare (Fri, 25 Oct 2019 14:01:00 GMT):
``` > web3.eth.getBalance('8b75d09772077021e53b76142bf18cc0ada6b0f2') 1e+27 > web3.eth.accounts [] ```

SamuelDare (Fri, 25 Oct 2019 14:01:18 GMT):
``` { "alloc": { "8b75d09772077021e53b76142bf18cc0ada6b0f2": { "balance": "1000000000000000000000000000" }, "b36d9dc8e47795949cc02965acd258919ed255c0": { "balance": "1000000000000000000000000000" }, "2f536f9741f1084125d959ac459d90d30f196ebc": { "balance": "1000000000000000000000000000" }, "af23fbf499a07c86dfb029f273273b8db06e5053": { "balance": "1000000000000000000000000000" } ```

shemnon (Fri, 25 Oct 2019 14:04:15 GMT):
You will need to load the private key in via `web3.eth.wallet.add(`

shemnon (Fri, 25 Oct 2019 14:04:15 GMT):
You will need to load the private key in via `web3.eth.wallet.add()`

shemnon (Fri, 25 Oct 2019 14:04:15 GMT):
You will need to load the private key in via `web3.eth.wallet.add()`

SamuelDare (Fri, 25 Oct 2019 14:06:37 GMT):
is this pantheon specific?

SamuelDare (Fri, 25 Oct 2019 14:06:40 GMT):
*besu?

SamuelDare (Fri, 25 Oct 2019 14:07:33 GMT):
I ask because we are building a tool for benchmarking clients and the other clients return accounts with `web3.eth.accounts`]

SamuelDare (Fri, 25 Oct 2019 14:09:53 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=4bgmXGkyCnuDXWxpj) would this be the node's private key or the private key of each account?

shemnon (Fri, 25 Oct 2019 14:27:55 GMT):
All clients support the wallet add. Under the cover it uses `eth_sendRawTransaction` instead of `eth_sendTransation` which depends on wallet functionality. Not all clients support the `eth_personal` series of RPCs or wallet functionality. For a benchmarking send raw is the common API.

shemnon (Fri, 25 Oct 2019 14:27:55 GMT):
All clients support the RPCs that result from wallet add. Under the cover it uses `eth_sendRawTransaction` instead of `eth_sendTransation` which depends on wallet functionality. Not all clients support the `eth_personal` series of RPCs or wallet functionality. For a benchmarking send raw is the common API.

SamuelDare (Fri, 25 Oct 2019 14:38:40 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=4bgmXGkyCnuDXWxpj) is there an rpc for this? if i understand correclty, once i add this, I would be able to call the accounts with `web3.eth.accounts`

shemnon (Fri, 25 Oct 2019 14:50:28 GMT):
The rpc is `eth_sendRawTransaction` It's web3.js that decides if it calls the raw or the wallet variant basedon whether or not it has the private key. web3.js will sign the transaciton if it can.

SamuelDare (Fri, 25 Oct 2019 15:00:18 GMT):
thats further down the line for me and understand transaction signing. I just need to be able to call the accounts on the node first and blocked right now if i dont have access to `web3.eth.accounts`

shemnon (Fri, 25 Oct 2019 15:54:06 GMT):
You just need to load the private key, eth3 figures it out from there - like this - https://github.com/hyperledger/caliper/blob/master/packages/caliper-ethereum/lib/ethereum.js#L52

shemnon (Fri, 25 Oct 2019 15:54:06 GMT):
You just need to load the private key, web3 figures it out from there - like this - https://github.com/hyperledger/caliper/blob/master/packages/caliper-ethereum/lib/ethereum.js#L52

shemnon (Fri, 25 Oct 2019 15:55:12 GMT):
caliper's transaction logic is steeped in JS and web3.js magic, but the only thing that needed to be added was gas - https://github.com/hyperledger/caliper/blob/master/packages/caliper-ethereum/lib/ethereum.js#L170

arunog (Fri, 25 Oct 2019 20:13:40 GMT):
wonderCan all the communication between nodes and between client and node be SSL enabled for regulatory reasons?

arunog (Fri, 25 Oct 2019 20:22:57 GMT):
Hello everyone, I wonder for regulatory reasons, if there is a way to be all the communication between nodes SSL enabled(P2P communication)? Thanks in advance

ajsutton (Fri, 25 Oct 2019 20:55:23 GMT):
Just for the record, seed accounts are not necessarily required for clique and ibft. You can operate a network without any ETH fine so long as min gas price is zero. In that case you don’t have to pay for gas so don’t need ETH.

SteveMieskoski (Sun, 27 Oct 2019 01:01:19 GMT):
Has joined the channel.

madelinemurray (Sun, 27 Oct 2019 20:14:17 GMT):
@sanket1211 - the difference between the MacOs and Windows besu commands is the backslash/forwardslash so the MacOs commands should work for ubuntu

madelinemurray (Sun, 27 Oct 2019 20:19:35 GMT):
@pcmola - were you able to deploy the contracts with the suggestions aove?

arash009 (Mon, 28 Oct 2019 05:04:30 GMT):
DevP2P uses the RLPx transport protocol which has encryption built in: https://github.com/ethereum/devp2p/blob/master/rlpx.md Is there a reason you are looking at SSL specifically for Besu P2P communication?

benjaminion (Mon, 28 Oct 2019 15:41:08 GMT):
Has joined the channel.

GregTheGreek (Mon, 28 Oct 2019 18:49:45 GMT):
Has joined the channel.

GregTheGreek (Mon, 28 Oct 2019 18:49:46 GMT):
Hey! Finally got in...

GregTheGreek (Mon, 28 Oct 2019 18:50:50 GMT):
We've found some particularly strange behaviour when syncing

GregTheGreek (Mon, 28 Oct 2019 18:59:21 GMT):
ah nvm - please ignore me

GregTheGreek (Mon, 28 Oct 2019 19:02:08 GMT):
So when syncing with ETC (ETC and ETH use the same network id) - when the DAO fork happens Besu aggressively rejects blocks and it reallllly slows down the sync time. Not sure if theres something we can mitigate by also checking the chain id?

shemnon (Mon, 28 Oct 2019 19:03:55 GMT):
Let me dig, there may be multiple places we do dao checking. We als validate peers with `DaoForkPeerValidator` but you wouldn't have peers if that was what the problem was.

shemnon (Mon, 28 Oct 2019 19:04:46 GMT):
I'm thinking ETC support will want the inverse of `DaoForkPeerValidator` to ensure it gets ETC peers.

shemnon (Mon, 28 Oct 2019 19:06:05 GMT):
I bet it's org.hyperledger.besu.ethereum.mainnet.MainnetBlockHeaderValidator#createDaoValidator causing the rejection. You can put a breakpoint and see how it's getting introduced.

shemnon (Mon, 28 Oct 2019 19:06:05 GMT):
I bet it's `org.hyperledger.besu.ethereum.mainnet.MainnetBlockHeaderValidator#createDaoValidator` causing the rejection. You can put a breakpoint and see how it's getting introduced.

shemnon (Mon, 28 Oct 2019 19:08:00 GMT):
Looks like the ProtocolSchedule and the ProtocolSpec do DAO validation.

GregTheGreek (Mon, 28 Oct 2019 19:54:25 GMT):
ok thanks!

GregTheGreek (Mon, 28 Oct 2019 19:54:33 GMT):
yeah we eventually get passed it

GregTheGreek (Mon, 28 Oct 2019 19:54:37 GMT):
but it takes a good amount of time

rjones (Mon, 28 Oct 2019 20:05:45 GMT):
Has left the channel.

jacobsaur (Mon, 28 Oct 2019 20:33:39 GMT):
Hi I'm wondering if anyone has ever experienced truffle tests timing out when running against the clique consensus. I'm walking through the simple quickstart tutorial ( https://besu.hyperledger.org/en/stable/Tutorials/Quickstarts/Private-Network-Quickstart/ ). Everything works when using the default run.sh, and the truffle tests pass in seconds. However when I try `run.sh -c clique` the truffle tests time out: `"before all" hook: prepare suite: Error: Timeout of 120000ms exceeded.` Is there anything else I need to do to get clique working? (Note the migrations work, just not the tests). My repo is here: https://github.com/jsaur/besu-playground

shemnon (Mon, 28 Oct 2019 21:26:47 GMT):
So this indicates to me that a ClassicPeerValidator should be written. Either validating the hashes right after the DAO fork or validating the absence of DAO markers.

GregTheGreek (Mon, 28 Oct 2019 21:28:02 GMT):
hmm - interesting ok

GregTheGreek (Mon, 28 Oct 2019 21:28:18 GMT):
That makes sense to me

jacobsaur (Tue, 29 Oct 2019 13:53:07 GMT):
Ok I've discovered two things: (1) The timeout only occurs with solidity based truffle tests, javascript tests don't time out (2) If I lower the clique 'blockperiodseconds' from the default of 15 to 5 or 1, then both solidity and javascript tests pass. My guess is that there is something in the before all hook in the solidity tests that's making multiple blockchain calls, and when the block period is 15s it takes more the 120s to complete them all. Setting a lower block period allows all these tasks to complete. Since tests will be running against a test network, I'll just lower the block period to 1 s.

shemnon (Tue, 29 Oct 2019 14:14:33 GMT):
Besu contributor call in 45 minutes. Agenda - https://wiki.hyperledger.org/display/BESU/2019-10-29+Besu+Contributor+Call

shemnon (Tue, 29 Oct 2019 14:15:40 GMT):
If the truffle tests are waiting for confirmation 15s blocks are a big problem.

NicolasMassart (Tue, 29 Oct 2019 14:38:34 GMT):
You can either lower the blocktime on clique, but it may not be what you want, or lower the number of confirmations required for the tx to be validated. Using web3.js this can be done using the following property: `web3.transactionConfirmationBlocks = 1;`. We have an example here line 25: https://besu.hyperledger.org/en/stable/HowTo/Send-Transactions/Transactions/#5-send-ether

mattatkiva (Tue, 29 Oct 2019 14:40:36 GMT):
whats the cause of the delay?

NicolasMassart (Tue, 29 Oct 2019 14:43:41 GMT):
The cause is that Truffle tests are using web3.js library to connect and by default transactions requires too many validations to be validated. So number of validations x the blocktime makes it exceed the timeout. I had that before, I'm trying to find how I solved it and I tell you... I hope I will recover the change to make.

NicolasMassart (Tue, 29 Oct 2019 14:48:53 GMT):
I think it's not the validations on this one, i had another issue too... can you provide your truffle-config.js file where you define the truffle-hdwallet-provider for Besu?

NicolasMassart (Tue, 29 Oct 2019 14:53:39 GMT):
Can you try to see if using q provider qs indicated in truffle-config.js from our tutorial https://besu.hyperledger.org/en/stable/Tutorials/Quickstarts/Private-Network-Quickstart/#truffle-pet-shop-tutorial helps? The key is to create a new instance of PrivateKeyProvider for each connection.

jacobsaur (Tue, 29 Oct 2019 15:14:46 GMT):
Here's my truffle-config.js, I believe mine is the same as the one in that tutorial: https://github.com/jsaur/besu-playground/blob/master/pet-shop/truffle-config.js

NicolasMassart (Tue, 29 Oct 2019 15:19:30 GMT):
Yes it is. Humm... I will have to dig that. Can you give use more info on your setup? Besu version, Truffle version, OS and version?

jacobsaur (Tue, 29 Oct 2019 15:33:16 GMT):
I have a simple repo that's just going through quickstart tutorial (https://besu.hyperledger.org/en/latest/Tutorials/Quickstarts/Private-Network-Quickstart/ ), here's the commit where the test is failing: https://github.com/jsaur/besu-playground/commit/91fb96d2609b93c975cbb1f154b02cf94e638b35 (future commits then have changed the block period). Besu is running in docker containers so it's whatever version is in the quickstart repo. Truffle v5.0.41 is running on my Mac OS 10.14.6, but I can also put that in a docker container to make reproducing even easier.

NicolasMassart (Tue, 29 Oct 2019 16:14:24 GMT):
I will have a look with that first and tell you if I need more.

jacobsaur (Tue, 29 Oct 2019 17:16:59 GMT):
I was going to put it into a docker container anyways, here it is, if it's useful: https://github.com/jsaur/besu-playground/tree/test-timeout

NicolasMassart (Wed, 30 Oct 2019 11:44:42 GMT):
I had a look at your repos, but I don't understand why you run two docker compose in your readme? and link them on the same network. What do you do with the first tab one?

NicolasMassart (Wed, 30 Oct 2019 12:21:26 GMT):
It also seems that your node truffle image misses truffle/hdwallet-provider package

jacobsaur (Wed, 30 Oct 2019 12:24:01 GMT):
Question 1: I didn't want to change the besu-quickstart docker compose files too much, but wanted the pet-shop docker container to be able to connect to the besu nodes. The easiest way I could think of was to create a new docker-compose for pet-shop and have it on the same network. 2) I believe it's included here: https://github.com/jsaur/besu-playground/blob/test-timeout/pet-shop/package.json#L22 unless you're referring to something else?

NicolasMassart (Wed, 30 Oct 2019 12:38:58 GMT):
I'm still looking at your issues of course.

jacobsaur (Wed, 30 Oct 2019 12:44:06 GMT):
Thanks, also this isn't urgent, since I found a workaround by setting the blockperiodseconds to 1 (which also makes all around development faster).

NicolasMassart (Wed, 30 Oct 2019 13:31:45 GMT):
Yes, but it should work so I have to digg ;)

NicolasMassart (Wed, 30 Oct 2019 15:47:08 GMT):
I knew I met this issue before... so you may have this succeed: https://ethereum.stackexchange.com/a/47698/405 Because even if you reduce the blocktime, at some point even a 1sec will be too long and will trigger the timeout (if you have more than 120 test tx, on per block, it will reach it). So the solution is to add the mocha section in your truffle config as explained in the StackExchange answer.

syuta-sugawara (Wed, 30 Oct 2019 15:52:07 GMT):
Has joined the channel.

syuta-sugawara (Wed, 30 Oct 2019 15:52:26 GMT):
hi. I'm software engineer in japan. Mr.Masa and Mr.Tom introduced me to here. now, I'm trying to create private chain in aws by using ECS. i was able to create three besu node in ecs, but i cannot connect them to each other. Could anyone cooperate with me?

faraggi (Wed, 30 Oct 2019 16:58:34 GMT):
Hi @syuta-sugawara , I'm sure we can help. What other details can you give us to better understand where the problem is? What error are you getting? Did you setup your security groups correctly- with the correct open ports?

eum602 (Wed, 30 Oct 2019 19:44:31 GMT):
Hello, I am updating some nodes that are on pantheon 1.2.0 to besu 1.2.5, in this process I have observed that nodes cannot communicate between both versions. Is it necessary to update all nodes to new version?

eum602 (Wed, 30 Oct 2019 19:54:18 GMT):
I have just observed that only one besu node is connecting to pantheon version, but whole ibft consensus has stopped.

NicolasMassart (Wed, 30 Oct 2019 19:57:05 GMT):
can you update to latest version since you are updating?

eum602 (Wed, 30 Oct 2019 19:58:22 GMT):
why are they not connecting well?, is it necessary to update whole network?

NicolasMassart (Wed, 30 Oct 2019 20:37:33 GMT):
We would need more details about your setup to tell, would you like to switch to PM?

NicolasMassart (Wed, 30 Oct 2019 21:17:17 GMT):
For the record @abdelhamidbakhta , @eum602 seems to experience https://pegasys1.atlassian.net/browse/PAN-3260 but on Google Cloud, except that the admin_addPeer doesn't seem to work. Many things to confirm and he will try a few things on his side, but it may give you new informations on this issue.

ivicaa (Wed, 30 Oct 2019 21:34:46 GMT):
Has joined the channel.

jacobsaur (Thu, 31 Oct 2019 11:48:08 GMT):
Thanks, setting the mocha timeout to around 5min worked for me (with 15s blocks).

eum602 (Thu, 31 Oct 2019 15:34:45 GMT):
After checking in more detail I noticed the problem is related with permissioning in my network.

NicolasMassart (Thu, 31 Oct 2019 15:42:11 GMT):
Did you make it work? Can you tell us more about what you did?

eum602 (Thu, 31 Oct 2019 15:43:17 GMT):
yes Nicolas, I am preparing a more detailed scenario to explain the issue.

arunog (Thu, 31 Oct 2019 16:25:20 GMT):
albert

ivicaa (Fri, 01 Nov 2019 08:24:57 GMT):
In geth clique, under some circumstances (e. g. fast block times, lagging network) a deadlock can happen, where the signers stop signing and infinitely wait for each other. See https://github.com/ethereum/go-ethereum/issues/18402#issuecomment-548704288 — did someone observed this with Besu Clique too?

cstoecker (Fri, 01 Nov 2019 15:05:20 GMT):
Has joined the channel.

donpdonp (Fri, 01 Nov 2019 17:20:08 GMT):
Has joined the channel.

nimagh (Fri, 01 Nov 2019 19:34:33 GMT):
Has joined the channel.

ajsutton (Sat, 02 Nov 2019 00:16:03 GMT):
This is a problem with the Clique protocol itself so does apply to all clients. However, it becomes much more likely when there are a lot of out of turn blocks being produced. That in turn tends to happen if signers are either misbehaving (Geth and Besu both behave well in this regard) or if the time required to propagate blocks across the network is close to the block period time. The one key difference between Geth and Besu which may help this happen less on Besu is that when there are two blocks with equal difficulty Geth will pick one randomly whereas Besu will stick with the first block received. That doesn't eliminate the issue but does mean that if a couple of signers have slower network connectivity and are producing out of turn blocks as a result, the other nodes are likely to have recieved the in-turn blocks first and will stick with them making it more likely the network will continue. It's only a pretty minor difference though.

kziemianek (Sat, 02 Nov 2019 09:22:18 GMT):
Has joined the channel.

pantsme (Mon, 04 Nov 2019 01:37:07 GMT):
Has joined the channel.

Olipotmans (Mon, 04 Nov 2019 16:55:28 GMT):
Has joined the channel.

Olipotmans (Tue, 05 Nov 2019 06:32:58 GMT):
Hello, based on the "Private Network Quickstart" installation, I use the Metamask application to create a new account on the system. by checking on the ethstats-light, I see the created account but when I execute a transfer between this new account and one of the three accounts created during the installation, the transaction is "waiting" and seems frozen. I'm suspecting that this is a problem of key that BESU doesn't have when Metamask creates the account. Could you please help me?

syuta-sugawara (Tue, 05 Nov 2019 10:09:30 GMT):
hi, fraggi. the problem may be solved. however, another problem occurs.

syuta-sugawara (Tue, 05 Nov 2019 10:14:11 GMT):
when i try to call besu api, i got this message. {"message":"Host not authorized."} this is a command which i used. curl -X POST --data '{"jsonrpc":"2.0","method":"admin_peers","params":[],"id":1}' http://(host id address):8545

syuta-sugawara (Tue, 05 Nov 2019 10:14:34 GMT):
ip address is correct.

syuta-sugawara (Tue, 05 Nov 2019 10:16:41 GMT):
and these are command which i used when run besu.

syuta-sugawara (Tue, 05 Nov 2019 10:16:58 GMT):
"command": ["besu", "--data-path=data", "--genesis-file=../genesis.json", "--p2p-host=0.0.0.0", "--p2p-port=30303", "--rpc-http-enabled", "--rpc-http-api=ETH,NET,IBFT", "--host-whitelist=\"*\"", "--rpc-http-cors-origins=\"all\"", "--rpc-http-host=0.0.0.0", "--rpc-http-port=8545", "--min-gas-price=0"] ,

syuta-sugawara (Tue, 05 Nov 2019 10:18:05 GMT):
hi. when i try to call besu api, i got this message. {"message":"Host not authorized."} this is a command which i used. curl -X POST --data '{"jsonrpc":"2.0","method":"admin_peers","params":[],"id":1}' http://(host id address):8545

syuta-sugawara (Tue, 05 Nov 2019 10:18:14 GMT):
ip address is correct.

syuta-sugawara (Tue, 05 Nov 2019 10:18:21 GMT):
and these are command which i used when run besu. "command": ["besu", "--data-path=data", "--genesis-file=../genesis.json", "--p2p-host=0.0.0.0", "--p2p-port=30303", "--rpc-http-enabled", "--rpc-http-api=ETH,NET,IBFT", "--host-whitelist=\"*\"", "--rpc-http-cors-origins=\"all\"", "--rpc-http-host=0.0.0.0", "--rpc-http-port=8545", "--min-gas-price=0"] ,

syuta-sugawara (Tue, 05 Nov 2019 10:18:53 GMT):
Could anyone help me?

syuta-sugawara (Tue, 05 Nov 2019 12:10:14 GMT):
sorry. i have another question. i'd like to deploy smart contract to besu node,now. i saw this tutorial. https://besu.hyperledger.org/en/stable/HowTo/Develop-Dapps/Truffle/ what private key should i use in this line? const privateKey = "";

syuta-sugawara (Tue, 05 Nov 2019 12:11:07 GMT):
is this private-key written in genesis.json ?

NicolasMassart (Tue, 05 Nov 2019 12:18:35 GMT):
Hi, is that something that happens each time, if you stop (./remove.sh) and restart (./run.sh) the quickstart again? Do you reproduce the issue each time?

mackcom (Tue, 05 Nov 2019 19:40:02 GMT):
Has joined the channel.

mackcom (Tue, 05 Nov 2019 19:40:03 GMT):
Hi, I'm trying to commit to a PR (#155) but it's failing DCO, I've done the suggested actions `git commit --amend --signoff` and `git push --force-with-lease origin greg/backport-3` and it still fails. Any suggestions?

Olipotmans (Tue, 05 Nov 2019 20:08:22 GMT):
it works now. But I think that I made a mistake, I imported the private key of the miner account, possible that this was the reason ? thanks ! olivier

oyincode (Tue, 05 Nov 2019 20:10:42 GMT):
Has joined the channel.

shemnon (Tue, 05 Nov 2019 20:32:51 GMT):
The IP address is not part of the host whitelist , the `--host-whitelist` option. By default it is 127.0.0.1 (a more secure default). You can set it to `*` to accept any connection or to the specific host names you are accessing it by.

shemnon (Tue, 05 Nov 2019 21:03:37 GMT):
One option is to do a squash on top of the chain head and then force push that single commit, with the DCO.

shemnon (Tue, 05 Nov 2019 21:04:03 GMT):
DCO re-writes work best for single commits.

RealDeanZhao (Wed, 06 Nov 2019 05:41:28 GMT):
Hi team, is there any tool like quorum maker(https://github.com/synechron-finlabs/quorum-maker) to create besu networks/nodes?

syuta-sugawara (Wed, 06 Nov 2019 06:06:25 GMT):
i know. i already did it.

syuta-sugawara (Wed, 06 Nov 2019 06:06:53 GMT):
these are command which i used when run besu. "command": ["besu", "--data-path=data", "--genesis-file=../genesis.json", "--p2p-host=0.0.0.0", "--p2p-port=30303", "--rpc-http-enabled", "--rpc-http-api=ETH,NET,IBFT", "--host-whitelist=\"*\"", "--rpc-http-cors-origins=\"all\"", "--rpc-http-host=0.0.0.0", "--rpc-http-port=8545", "--min-gas-price=0"] ,

syuta-sugawara (Wed, 06 Nov 2019 06:07:50 GMT):
i use ecs in aws. this is written in task definition file. these commads are correct.

pcmola (Wed, 06 Nov 2019 06:14:12 GMT):
Hi, The following error message appears when practicing Clique. `BytesValue is of invalid size - i.e. contains unused bytes`

pcmola (Wed, 06 Nov 2019 06:14:12 GMT):
Hi, The following error message appears when practicing Clique. ```BytesValue is of invalid size - i.e. contains unused bytes```

pcmola (Wed, 06 Nov 2019 06:14:12 GMT):
Hi, The following error message appears when practicing Clique. `BytesValue is of invalid size - i.e. contains unused bytes`

pcmola (Wed, 06 Nov 2019 06:16:25 GMT):
To confirm the problem, I added the source to CliqueExtraData.java and checked until it came out as follows:

pcmola (Wed, 06 Nov 2019 06:17:03 GMT):
`static CliqueExtraData decodeRaw(final BlockHeader header) { final BytesValue input = header.getExtraData(); if (input.size() < EXTRA_VANITY_LENGTH + Signature.BYTES_REQUIRED) { throw new IllegalArgumentException( "Invalid BytesValue supplied - too short to produce a valid Clique Extra Data object."); } final int validatorByteCount = input.size() - EXTRA_VANITY_LENGTH - Signature.BYTES_REQUIRED; //Start. Added for analyzing LOG.info("input.size(): {}", input.size()); LOG.info("EXTRA_VANITY_LENGTH: {}", EXTRA_VANITY_LENGTH); LOG.info("Signature.BYTES_REQUIRED: {}", Signature.BYTES_REQUIRED); LOG.info("validatorByteCount: {}", validatorByteCount); LOG.info("Address.SIZE: {}", Address.SIZE); System.out.println("input.size():" + input.size()); System.out.println("EXTRA_VANITY_LENGTH:" + EXTRA_VANITY_LENGTH); System.out.println("Signature.BYTES_REQUIRED:" + Signature.BYTES_REQUIRED); System.out.println("validatorByteCount:" + validatorByteCount); System.out.println("Address.SIZE:" + Address.SIZE); //End. Added for analiyzing if ((validatorByteCount % Address.SIZE) != 0) { throw new IllegalArgumentException( "BytesValue is of invalid size - i.e. contains unused bytes."); } pcmola@wonjongyoon:~/my/edu/besu/Clique-Network/Node-1$ besu --data-path=data --genesis-file=../cliqueGenesis.json --network-id 123 --rpc-http-enabled --rpc-http-api=ETH,NET,CLIQUE --host-whitelist="*" --rpc-http-cors-origins="all" 2019-11-06 14:56:36.785+09:00 | main | INFO | RocksDBPlugin | Registering plugin 2019-11-06 14:56:36.789+09:00 | main | INFO | RocksDBPlugin | Plugin registered. Setting logging level to INFO 2019-11-06 14:56:36.817+09:00 | main | INFO | Besu | Starting Besu version: besu/v1.2.4-dev-9aadbcb9/osx-x86_64/oracle_openjdk-java-12 2019-11-06 14:56:36.835+09:00 | main | INFO | StaticNodesParser | StaticNodes file /Users/pcmola/my/edu/besu/Clique-Network/Node-1/data/static-nodes.json does not exist, no static connections will be created. 2019-11-06 14:56:36.836+09:00 | main | INFO | Besu | Connecting to 0 static nodes. 2019-11-06 14:56:37.222+09:00 | main | INFO | KeyPairUtil | Loaded key 0xb315f2afa341dbf851603b38d4fb7608895b23d329cbac67d42054bce4b89ca447fbc3137346786299b90558cfb0e45ba9b6e556053bc0c3d45febcad6b444f8 from /Users/pcmola/my/edu/besu/Clique-Network/Node-1/data/key 2019-11-06 14:56:37.293+09:00 | main | INFO | RocksDBKeyValueStorageFactory | Existing database detected at /Users/pcmola/my/edu/besu/Clique-Network/Node-1/data/database. Version 1 2019-11-06 14:56:37.507+09:00 | main | INFO | ProtocolScheduleBuilder | Protocol schedule created with milestones: [ConstantinopleFix: 0] 2019-11-06 14:56:37.550+09:00 | main | INFO | CliqueExtraData | input.size(): 161 2019-11-06 14:56:37.550+09:00 | main | INFO | CliqueExtraData | EXTRA_VANITY_LENGTH: 32 2019-11-06 14:56:37.550+09:00 | main | INFO | CliqueExtraData | Signature.BYTES_REQUIRED: 65 2019-11-06 14:56:37.551+09:00 | main | INFO | CliqueExtraData | validatorByteCount: 64 2019-11-06 14:56:37.551+09:00 | main | INFO | CliqueExtraData | Address.SIZE: 20 input.size():161 EXTRA_VANITY_LENGTH:32 Signature.BYTES_REQUIRED:65 validatorByteCount:64 Address.SIZE:20 BytesValue is of invalid size - i.e. contains unused bytes.`

pcmola (Wed, 06 Nov 2019 06:17:03 GMT):
~~~static CliqueExtraData decodeRaw(final BlockHeader header) { final BytesValue input = header.getExtraData(); if (input.size() < EXTRA_VANITY_LENGTH + Signature.BYTES_REQUIRED) { throw new IllegalArgumentException( "Invalid BytesValue supplied - too short to produce a valid Clique Extra Data object."); } ~~~ final int validatorByteCount = input.size() - EXTRA_VANITY_LENGTH - Signature.BYTES_REQUIRED; //Start. Added for analyzing LOG.info("input.size(): {}", input.size()); LOG.info("EXTRA_VANITY_LENGTH: {}", EXTRA_VANITY_LENGTH); LOG.info("Signature.BYTES_REQUIRED: {}", Signature.BYTES_REQUIRED); LOG.info("validatorByteCount: {}", validatorByteCount); LOG.info("Address.SIZE: {}", Address.SIZE); System.out.println("input.size():" + input.size()); System.out.println("EXTRA_VANITY_LENGTH:" + EXTRA_VANITY_LENGTH); System.out.println("Signature.BYTES_REQUIRED:" + Signature.BYTES_REQUIRED); System.out.println("validatorByteCount:" + validatorByteCount); System.out.println("Address.SIZE:" + Address.SIZE); //End. Added for analiyzing if ((validatorByteCount % Address.SIZE) != 0) { throw new IllegalArgumentException( "BytesValue is of invalid size - i.e. contains unused bytes."); } pcmola@wonjongyoon:~/my/edu/besu/Clique-Network/Node-1$ besu --data-path=data --genesis-file=../cliqueGenesis.json --network-id 123 --rpc-http-enabled --rpc-http-api=ETH,NET,CLIQUE --host-whitelist="*" --rpc-http-cors-origins="all" 2019-11-06 14:56:36.785+09:00 | main | INFO | RocksDBPlugin | Registering plugin 2019-11-06 14:56:36.789+09:00 | main | INFO | RocksDBPlugin | Plugin registered. Setting logging level to INFO 2019-11-06 14:56:36.817+09:00 | main | INFO | Besu | Starting Besu version: besu/v1.2.4-dev-9aadbcb9/osx-x86_64/oracle_openjdk-java-12 2019-11-06 14:56:36.835+09:00 | main | INFO | StaticNodesParser | StaticNodes file /Users/pcmola/my/edu/besu/Clique-Network/Node-1/data/static-nodes.json does not exist, no static connections will be created. 2019-11-06 14:56:36.836+09:00 | main | INFO | Besu | Connecting to 0 static nodes. 2019-11-06 14:56:37.222+09:00 | main | INFO | KeyPairUtil | Loaded key 0xb315f2afa341dbf851603b38d4fb7608895b23d329cbac67d42054bce4b89ca447fbc3137346786299b90558cfb0e45ba9b6e556053bc0c3d45febcad6b444f8 from /Users/pcmola/my/edu/besu/Clique-Network/Node-1/data/key 2019-11-06 14:56:37.293+09:00 | main | INFO | RocksDBKeyValueStorageFactory | Existing database detected at /Users/pcmola/my/edu/besu/Clique-Network/Node-1/data/database. Version 1 2019-11-06 14:56:37.507+09:00 | main | INFO | ProtocolScheduleBuilder | Protocol schedule created with milestones: [ConstantinopleFix: 0] 2019-11-06 14:56:37.550+09:00 | main | INFO | CliqueExtraData | input.size(): 161 2019-11-06 14:56:37.550+09:00 | main | INFO | CliqueExtraData | EXTRA_VANITY_LENGTH: 32 2019-11-06 14:56:37.550+09:00 | main | INFO | CliqueExtraData | Signature.BYTES_REQUIRED: 65 2019-11-06 14:56:37.551+09:00 | main | INFO | CliqueExtraData | validatorByteCount: 64 2019-11-06 14:56:37.551+09:00 | main | INFO | CliqueExtraData | Address.SIZE: 20 input.size():161 EXTRA_VANITY_LENGTH:32 Signature.BYTES_REQUIRED:65 validatorByteCount:64 Address.SIZE:20 BytesValue is of invalid size - i.e. contains unused bytes.`

pcmola (Wed, 06 Nov 2019 06:17:03 GMT):
static CliqueExtraData decodeRaw(final BlockHeader header) { final BytesValue input = header.getExtraData(); if (input.size() < EXTRA_VANITY_LENGTH + Signature.BYTES_REQUIRED) { throw new IllegalArgumentException( "Invalid BytesValue supplied - too short to produce a valid Clique Extra Data object."); } final int validatorByteCount = input.size() - EXTRA_VANITY_LENGTH - Signature.BYTES_REQUIRED; //Start. Added for analyzing LOG.info("input.size(): {}", input.size()); LOG.info("EXTRA_VANITY_LENGTH: {}", EXTRA_VANITY_LENGTH); LOG.info("Signature.BYTES_REQUIRED: {}", Signature.BYTES_REQUIRED); LOG.info("validatorByteCount: {}", validatorByteCount); LOG.info("Address.SIZE: {}", Address.SIZE); System.out.println("input.size():" + input.size()); System.out.println("EXTRA_VANITY_LENGTH:" + EXTRA_VANITY_LENGTH); System.out.println("Signature.BYTES_REQUIRED:" + Signature.BYTES_REQUIRED); System.out.println("validatorByteCount:" + validatorByteCount); System.out.println("Address.SIZE:" + Address.SIZE); //End. Added for analiyzing if ((validatorByteCount % Address.SIZE) != 0) { throw new IllegalArgumentException( "BytesValue is of invalid size - i.e. contains unused bytes."); } pcmola@wonjongyoon:~/my/edu/besu/Clique-Network/Node-1$ besu --data-path=data --genesis-file=../cliqueGenesis.json --network-id 123 --rpc-http-enabled --rpc-http-api=ETH,NET,CLIQUE --host-whitelist="*" --rpc-http-cors-origins="all" 2019-11-06 14:56:36.785+09:00 | main | INFO | RocksDBPlugin | Registering plugin 2019-11-06 14:56:36.789+09:00 | main | INFO | RocksDBPlugin | Plugin registered. Setting logging level to INFO 2019-11-06 14:56:36.817+09:00 | main | INFO | Besu | Starting Besu version: besu/v1.2.4-dev-9aadbcb9/osx-x86_64/oracle_openjdk-java-12 2019-11-06 14:56:36.835+09:00 | main | INFO | StaticNodesParser | StaticNodes file /Users/pcmola/my/edu/besu/Clique-Network/Node-1/data/static-nodes.json does not exist, no static connections will be created. 2019-11-06 14:56:36.836+09:00 | main | INFO | Besu | Connecting to 0 static nodes. 2019-11-06 14:56:37.222+09:00 | main | INFO | KeyPairUtil | Loaded key 0xb315f2afa341dbf851603b38d4fb7608895b23d329cbac67d42054bce4b89ca447fbc3137346786299b90558cfb0e45ba9b6e556053bc0c3d45febcad6b444f8 from /Users/pcmola/my/edu/besu/Clique-Network/Node-1/data/key 2019-11-06 14:56:37.293+09:00 | main | INFO | RocksDBKeyValueStorageFactory | Existing database detected at /Users/pcmola/my/edu/besu/Clique-Network/Node-1/data/database. Version 1 2019-11-06 14:56:37.507+09:00 | main | INFO | ProtocolScheduleBuilder | Protocol schedule created with milestones: [ConstantinopleFix: 0] 2019-11-06 14:56:37.550+09:00 | main | INFO | CliqueExtraData | input.size(): 161 2019-11-06 14:56:37.550+09:00 | main | INFO | CliqueExtraData | EXTRA_VANITY_LENGTH: 32 2019-11-06 14:56:37.550+09:00 | main | INFO | CliqueExtraData | Signature.BYTES_REQUIRED: 65 2019-11-06 14:56:37.551+09:00 | main | INFO | CliqueExtraData | validatorByteCount: 64 2019-11-06 14:56:37.551+09:00 | main | INFO | CliqueExtraData | Address.SIZE: 20 input.size():161 EXTRA_VANITY_LENGTH:32 Signature.BYTES_REQUIRED:65 validatorByteCount:64 Address.SIZE:20 BytesValue is of invalid size - i.e. contains unused bytes.`

pcmola (Wed, 06 Nov 2019 06:17:03 GMT):
static CliqueExtraData decodeRaw(final BlockHeader header) { final BytesValue input = header.getExtraData(); if (input.size() < EXTRA_VANITY_LENGTH + Signature.BYTES_REQUIRED) { throw new IllegalArgumentException( "Invalid BytesValue supplied - too short to produce a valid Clique Extra Data object."); } final int validatorByteCount = input.size() - EXTRA_VANITY_LENGTH - Signature.BYTES_REQUIRED; //Start. Added for analyzing LOG.info("input.size(): {}", input.size()); LOG.info("EXTRA_VANITY_LENGTH: {}", EXTRA_VANITY_LENGTH); LOG.info("Signature.BYTES_REQUIRED: {}", Signature.BYTES_REQUIRED); LOG.info("validatorByteCount: {}", validatorByteCount); LOG.info("Address.SIZE: {}", Address.SIZE); System.out.println("input.size():" + input.size()); System.out.println("EXTRA_VANITY_LENGTH:" + EXTRA_VANITY_LENGTH); System.out.println("Signature.BYTES_REQUIRED:" + Signature.BYTES_REQUIRED); System.out.println("validatorByteCount:" + validatorByteCount); System.out.println("Address.SIZE:" + Address.SIZE); //End. Added for analiyzing if ((validatorByteCount % Address.SIZE) != 0) { throw new IllegalArgumentException( "BytesValue is of invalid size - i.e. contains unused bytes."); } pcmola@wonjongyoon:~/my/edu/besu/Clique-Network/Node-1$ besu --data-path=data --genesis-file=../cliqueGenesis.json --network-id 123 --rpc-http-enabled --rpc-http-api=ETH,NET,CLIQUE --host-whitelist="*" --rpc-http-cors-origins="all" 2019-11-06 14:56:36.785+09:00 | main | INFO | RocksDBPlugin | Registering plugin 2019-11-06 14:56:36.789+09:00 | main | INFO | RocksDBPlugin | Plugin registered. Setting logging level to INFO 2019-11-06 14:56:36.817+09:00 | main | INFO | Besu | Starting Besu version: besu/v1.2.4-dev-9aadbcb9/osx-x86_64/oracle_openjdk-java-12 2019-11-06 14:56:36.835+09:00 | main | INFO | StaticNodesParser | StaticNodes file /Users/pcmola/my/edu/besu/Clique-Network/Node-1/data/static-nodes.json does not exist, no static connections will be created. 2019-11-06 14:56:36.836+09:00 | main | INFO | Besu | Connecting to 0 static nodes. 2019-11-06 14:56:37.222+09:00 | main | INFO | KeyPairUtil | Loaded key 0xb315f2afa341dbf851603b38d4fb7608895b23d329cbac67d42054bce4b89ca447fbc3137346786299b90558cfb0e45ba9b6e556053bc0c3d45febcad6b444f8 from /Users/pcmola/my/edu/besu/Clique-Network/Node-1/data/key 2019-11-06 14:56:37.293+09:00 | main | INFO | RocksDBKeyValueStorageFactory | Existing database detected at /Users/pcmola/my/edu/besu/Clique-Network/Node-1/data/database. Version 1 2019-11-06 14:56:37.507+09:00 | main | INFO | ProtocolScheduleBuilder | Protocol schedule created with milestones: [ConstantinopleFix: 0] 2019-11-06 14:56:37.550+09:00 | main | INFO | CliqueExtraData | input.size(): 161 2019-11-06 14:56:37.550+09:00 | main | INFO | CliqueExtraData | EXTRA_VANITY_LENGTH: 32 '''2019-11-06 14:56:37.550+09:00 | main | INFO | CliqueExtraData | Signature.BYTES_REQUIRED: 65 2019-11-06 14:56:37.551+09:00 | main | INFO | CliqueExtraData | validatorByteCount: 64 2019-11-06 14:56:37.551+09:00 | main | INFO | CliqueExtraData | Address.SIZE: 20''' input.size():161 EXTRA_VANITY_LENGTH:32 Signature.BYTES_REQUIRED:65 validatorByteCount:64 Address.SIZE:20 BytesValue is of invalid size - i.e. contains unused bytes.`

pcmola (Wed, 06 Nov 2019 06:17:03 GMT):
static CliqueExtraData decodeRaw(final BlockHeader header) { final BytesValue input = header.getExtraData(); if (input.size() < EXTRA_VANITY_LENGTH + Signature.BYTES_REQUIRED) { throw new IllegalArgumentException( "Invalid BytesValue supplied - too short to produce a valid Clique Extra Data object."); } final int validatorByteCount = input.size() - EXTRA_VANITY_LENGTH - Signature.BYTES_REQUIRED; //Start. Added for analyzing LOG.info("input.size(): {}", input.size()); LOG.info("EXTRA_VANITY_LENGTH: {}", EXTRA_VANITY_LENGTH); LOG.info("Signature.BYTES_REQUIRED: {}", Signature.BYTES_REQUIRED); LOG.info("validatorByteCount: {}", validatorByteCount); LOG.info("Address.SIZE: {}", Address.SIZE); System.out.println("input.size():" + input.size()); System.out.println("EXTRA_VANITY_LENGTH:" + EXTRA_VANITY_LENGTH); System.out.println("Signature.BYTES_REQUIRED:" + Signature.BYTES_REQUIRED); System.out.println("validatorByteCount:" + validatorByteCount); System.out.println("Address.SIZE:" + Address.SIZE); //End. Added for analiyzing if ((validatorByteCount % Address.SIZE) != 0) { throw new IllegalArgumentException( "BytesValue is of invalid size - i.e. contains unused bytes."); } pcmola@wonjongyoon:~/my/edu/besu/Clique-Network/Node-1$ besu --data-path=data --genesis-file=../cliqueGenesis.json --network-id 123 --rpc-http-enabled --rpc-http-api=ETH,NET,CLIQUE --host-whitelist="*" --rpc-http-cors-origins="all" 2019-11-06 14:56:36.785+09:00 | main | INFO | RocksDBPlugin | Registering plugin 2019-11-06 14:56:36.789+09:00 | main | INFO | RocksDBPlugin | Plugin registered. Setting logging level to INFO 2019-11-06 14:56:36.817+09:00 | main | INFO | Besu | Starting Besu version: besu/v1.2.4-dev-9aadbcb9/osx-x86_64/oracle_openjdk-java-12 2019-11-06 14:56:36.835+09:00 | main | INFO | StaticNodesParser | StaticNodes file /Users/pcmola/my/edu/besu/Clique-Network/Node-1/data/static-nodes.json does not exist, no static connections will be created. 2019-11-06 14:56:36.836+09:00 | main | INFO | Besu | Connecting to 0 static nodes. 2019-11-06 14:56:37.222+09:00 | main | INFO | KeyPairUtil | Loaded key 0xb315f2afa341dbf851603b38d4fb7608895b23d329cbac67d42054bce4b89ca447fbc3137346786299b90558cfb0e45ba9b6e556053bc0c3d45febcad6b444f8 from /Users/pcmola/my/edu/besu/Clique-Network/Node-1/data/key 2019-11-06 14:56:37.293+09:00 | main | INFO | RocksDBKeyValueStorageFactory | Existing database detected at /Users/pcmola/my/edu/besu/Clique-Network/Node-1/data/database. Version 1 2019-11-06 14:56:37.507+09:00 | main | INFO | ProtocolScheduleBuilder | Protocol schedule created with milestones: [ConstantinopleFix: 0] 2019-11-06 14:56:37.550+09:00 | main | INFO | CliqueExtraData | input.size(): 161 2019-11-06 14:56:37.550+09:00 | main | INFO | CliqueExtraData | EXTRA_VANITY_LENGTH: 32 2019-11-06 14:56:37.550+09:00 | main | INFO | CliqueExtraData | Signature.BYTES_REQUIRED: 65 2019-11-06 14:56:37.551+09:00 | main | INFO | CliqueExtraData | validatorByteCount: 64 2019-11-06 14:56:37.551+09:00 | main | INFO | CliqueExtraData | Address.SIZE: 20 input.size():161 EXTRA_VANITY_LENGTH:32 Signature.BYTES_REQUIRED:65 validatorByteCount:64 Address.SIZE:20 BytesValue is of invalid size - i.e. contains unused bytes.`

pcmola (Wed, 06 Nov 2019 06:17:03 GMT):
static CliqueExtraData decodeRaw(final BlockHeader header) { final BytesValue input = header.getExtraData(); if (input.size() < EXTRA_VANITY_LENGTH + Signature.BYTES_REQUIRED) { throw new IllegalArgumentException( "Invalid BytesValue supplied - too short to produce a valid Clique Extra Data object."); } final int validatorByteCount = input.size() - EXTRA_VANITY_LENGTH - Signature.BYTES_REQUIRED; //Start. Added for analyzing LOG.info("input.size(): {}", input.size()); LOG.info("EXTRA_VANITY_LENGTH: {}", EXTRA_VANITY_LENGTH); LOG.info("Signature.BYTES_REQUIRED: {}", Signature.BYTES_REQUIRED); LOG.info("validatorByteCount: {}", validatorByteCount); LOG.info("Address.SIZE: {}", Address.SIZE); System.out.println("input.size():" + input.size()); System.out.println("EXTRA_VANITY_LENGTH:" + EXTRA_VANITY_LENGTH); System.out.println("Signature.BYTES_REQUIRED:" + Signature.BYTES_REQUIRED); System.out.println("validatorByteCount:" + validatorByteCount); System.out.println("Address.SIZE:" + Address.SIZE); //End. Added for analiyzing if ((validatorByteCount % Address.SIZE) != 0) { throw new IllegalArgumentException( "BytesValue is of invalid size - i.e. contains unused bytes."); } pcmola@wonjongyoon:~/my/edu/besu/Clique-Network/Node-1$ besu --data-path=data --genesis-file=../cliqueGenesis.json --network-id 123 --rpc-http-enabled --rpc-http-api=ETH,NET,CLIQUE --host-whitelist="*" --rpc-http-cors-origins="all" 2019-11-06 14:56:36.785+09:00 | main | INFO | RocksDBPlugin | Registering plugin 2019-11-06 14:56:36.789+09:00 | main | INFO | RocksDBPlugin | Plugin registered. Setting logging level to INFO 2019-11-06 14:56:36.817+09:00 | main | INFO | Besu | Starting Besu version: besu/v1.2.4-dev-9aadbcb9/osx-x86_64/oracle_openjdk-java-12 2019-11-06 14:56:36.835+09:00 | main | INFO | StaticNodesParser | StaticNodes file /Users/pcmola/my/edu/besu/Clique-Network/Node-1/data/static-nodes.json does not exist, no static connections will be created. 2019-11-06 14:56:36.836+09:00 | main | INFO | Besu | Connecting to 0 static nodes. 2019-11-06 14:56:37.222+09:00 | main | INFO | KeyPairUtil | Loaded key 0xb315f2afa341dbf851603b38d4fb7608895b23d329cbac67d42054bce4b89ca447fbc3137346786299b90558cfb0e45ba9b6e556053bc0c3d45febcad6b444f8 from /Users/pcmola/my/edu/besu/Clique-Network/Node-1/data/key 2019-11-06 14:56:37.293+09:00 | main | INFO | RocksDBKeyValueStorageFactory | Existing database detected at /Users/pcmola/my/edu/besu/Clique-Network/Node-1/data/database. Version 1 2019-11-06 14:56:37.507+09:00 | main | INFO | ProtocolScheduleBuilder | Protocol schedule created with milestones: [ConstantinopleFix: 0] 2019-11-06 14:56:37.550+09:00 | main | INFO | CliqueExtraData | input.size(): 161 2019-11-06 14:56:37.550+09:00 | main | INFO | CliqueExtraData | EXTRA_VANITY_LENGTH: 32 ```2019-11-06 14:56:37.550+09:00 | main | INFO | CliqueExtraData | Signature.BYTES_REQUIRED: 65 2019-11-06 14:56:37.551+09:00 | main | INFO | CliqueExtraData | validatorByteCount: 64 2019-11-06 14:56:37.551+09:00 | main | INFO | CliqueExtraData | Address.SIZE: 20``` input.size():161 EXTRA_VANITY_LENGTH:32 Signature.BYTES_REQUIRED:65 validatorByteCount:64 Address.SIZE:20 BytesValue is of invalid size - i.e. contains unused bytes.`

pcmola (Wed, 06 Nov 2019 06:17:03 GMT):
```static CliqueExtraData decodeRaw(final BlockHeader header) { final BytesValue input = header.getExtraData(); if (input.size() < EXTRA_VANITY_LENGTH + Signature.BYTES_REQUIRED) { throw new IllegalArgumentException( "Invalid BytesValue supplied - too short to produce a valid Clique Extra Data object."); } final int validatorByteCount = input.size() - EXTRA_VANITY_LENGTH - Signature.BYTES_REQUIRED; //Start. Added for analyzing LOG.info("input.size(): {}", input.size()); LOG.info("EXTRA_VANITY_LENGTH: {}", EXTRA_VANITY_LENGTH); LOG.info("Signature.BYTES_REQUIRED: {}", Signature.BYTES_REQUIRED); LOG.info("validatorByteCount: {}", validatorByteCount); LOG.info("Address.SIZE: {}", Address.SIZE); System.out.println("input.size():" + input.size()); System.out.println("EXTRA_VANITY_LENGTH:" + EXTRA_VANITY_LENGTH); System.out.println("Signature.BYTES_REQUIRED:" + Signature.BYTES_REQUIRED); System.out.println("validatorByteCount:" + validatorByteCount); System.out.println("Address.SIZE:" + Address.SIZE); //End. Added for analiyzing if ((validatorByteCount % Address.SIZE) != 0) { throw new IllegalArgumentException( "BytesValue is of invalid size - i.e. contains unused bytes."); } pcmola@wonjongyoon:~/my/edu/besu/Clique-Network/Node-1$ besu --data-path=data --genesis-file=../cliqueGenesis.json --network-id 123 --rpc-http-enabled --rpc-http-api=ETH,NET,CLIQUE --host-whitelist="*" --rpc-http-cors-origins="all" 2019-11-06 14:56:36.785+09:00 | main | INFO | RocksDBPlugin | Registering plugin 2019-11-06 14:56:36.789+09:00 | main | INFO | RocksDBPlugin | Plugin registered. Setting logging level to INFO 2019-11-06 14:56:36.817+09:00 | main | INFO | Besu | Starting Besu version: besu/v1.2.4-dev-9aadbcb9/osx-x86_64/oracle_openjdk-java-12 2019-11-06 14:56:36.835+09:00 | main | INFO | StaticNodesParser | StaticNodes file /Users/pcmola/my/edu/besu/Clique-Network/Node-1/data/static-nodes.json does not exist, no static connections will be created. 2019-11-06 14:56:36.836+09:00 | main | INFO | Besu | Connecting to 0 static nodes. 2019-11-06 14:56:37.222+09:00 | main | INFO | KeyPairUtil | Loaded key 0xb315f2afa341dbf851603b38d4fb7608895b23d329cbac67d42054bce4b89ca447fbc3137346786299b90558cfb0e45ba9b6e556053bc0c3d45febcad6b444f8 from /Users/pcmola/my/edu/besu/Clique-Network/Node-1/data/key 2019-11-06 14:56:37.293+09:00 | main | INFO | RocksDBKeyValueStorageFactory | Existing database detected at /Users/pcmola/my/edu/besu/Clique-Network/Node-1/data/database. Version 1 2019-11-06 14:56:37.507+09:00 | main | INFO | ProtocolScheduleBuilder | Protocol schedule created with milestones: [ConstantinopleFix: 0] 2019-11-06 14:56:37.550+09:00 | main | INFO | CliqueExtraData | input.size(): 161 2019-11-06 14:56:37.550+09:00 | main | INFO | CliqueExtraData | EXTRA_VANITY_LENGTH: 32 2019-11-06 14:56:37.550+09:00 | main | INFO | CliqueExtraData | Signature.BYTES_REQUIRED: 65 2019-11-06 14:56:37.551+09:00 | main | INFO | CliqueExtraData | validatorByteCount: 64 2019-11-06 14:56:37.551+09:00 | main | INFO | CliqueExtraData | Address.SIZE: 20 input.size():161 EXTRA_VANITY_LENGTH:32 Signature.BYTES_REQUIRED:65 validatorByteCount:64 Address.SIZE:20 BytesValue is of invalid size - i.e. contains unused bytes.```

pcmola (Wed, 06 Nov 2019 06:17:03 GMT):
```static CliqueExtraData decodeRaw(final BlockHeader header) { final BytesValue input = header.getExtraData(); if (input.size() < EXTRA_VANITY_LENGTH + Signature.BYTES_REQUIRED) { throw new IllegalArgumentException( "Invalid BytesValue supplied - too short to produce a valid Clique Extra Data object."); } final int validatorByteCount = input.size() - EXTRA_VANITY_LENGTH - Signature.BYTES_REQUIRED; //Start. Added for analyzing LOG.info("input.size(): {}", input.size()); LOG.info("EXTRA_VANITY_LENGTH: {}", EXTRA_VANITY_LENGTH); LOG.info("Signature.BYTES_REQUIRED: {}", Signature.BYTES_REQUIRED); LOG.info("validatorByteCount: {}", validatorByteCount); LOG.info("Address.SIZE: {}", Address.SIZE); //End. Added for analyzing if ((validatorByteCount % Address.SIZE) != 0) { throw new IllegalArgumentException( "BytesValue is of invalid size - i.e. contains unused bytes."); } pcmola@wonjongyoon:~/my/edu/besu/Clique-Network/Node-1$ besu --data-path=data --genesis-file=../cliqueGenesis.json --network-id 123 --rpc-http-enabled --rpc-http-api=ETH,NET,CLIQUE --host-whitelist="*" --rpc-http-cors-origins="all" 2019-11-06 14:56:36.785+09:00 | main | INFO | RocksDBPlugin | Registering plugin 2019-11-06 14:56:36.789+09:00 | main | INFO | RocksDBPlugin | Plugin registered. Setting logging level to INFO 2019-11-06 14:56:36.817+09:00 | main | INFO | Besu | Starting Besu version: besu/v1.2.4-dev-9aadbcb9/osx-x86_64/oracle_openjdk-java-12 2019-11-06 14:56:36.835+09:00 | main | INFO | StaticNodesParser | StaticNodes file /Users/pcmola/my/edu/besu/Clique-Network/Node-1/data/static-nodes.json does not exist, no static connections will be created. 2019-11-06 14:56:36.836+09:00 | main | INFO | Besu | Connecting to 0 static nodes. 2019-11-06 14:56:37.222+09:00 | main | INFO | KeyPairUtil | Loaded key 0xb315f2afa341dbf851603b38d4fb7608895b23d329cbac67d42054bce4b89ca447fbc3137346786299b90558cfb0e45ba9b6e556053bc0c3d45febcad6b444f8 from /Users/pcmola/my/edu/besu/Clique-Network/Node-1/data/key 2019-11-06 14:56:37.293+09:00 | main | INFO | RocksDBKeyValueStorageFactory | Existing database detected at /Users/pcmola/my/edu/besu/Clique-Network/Node-1/data/database. Version 1 2019-11-06 14:56:37.507+09:00 | main | INFO | ProtocolScheduleBuilder | Protocol schedule created with milestones: [ConstantinopleFix: 0] 2019-11-06 14:56:37.550+09:00 | main | INFO | CliqueExtraData | input.size(): 161 2019-11-06 14:56:37.550+09:00 | main | INFO | CliqueExtraData | EXTRA_VANITY_LENGTH: 32 2019-11-06 14:56:37.550+09:00 | main | INFO | CliqueExtraData | Signature.BYTES_REQUIRED: 65 2019-11-06 14:56:37.551+09:00 | main | INFO | CliqueExtraData | validatorByteCount: 64 2019-11-06 14:56:37.551+09:00 | main | INFO | CliqueExtraData | Address.SIZE: 20 BytesValue is of invalid size - i.e. contains unused bytes.```

pcmola (Wed, 06 Nov 2019 06:18:25 GMT):
I can't analyze more than this. What else can I check?

pcmola (Wed, 06 Nov 2019 06:20:56 GMT):
And I want to know how to get syntax highlighting and tabs applied to source code in this chat.

arash009 (Wed, 06 Nov 2019 07:23:36 GMT):
:besu: Besu 1.3.4 has been released and is available now: https://bintray.com/hyperledger-org/besu-repo/besu/1.3.4 :besu: Change log available at: https://github.com/hyperledger/besu/blob/master/CHANGELOG.md A bug was found in Besu 1.3.3. Please ensure you use Besu 1.3.4 when upgrading to the latest version.

faraggi (Wed, 06 Nov 2019 09:04:09 GMT):
Hi pcmola. Code can be sourrounded by tildes \` in-line to show `code` and \``` 3 tildes can ``` make a code block ``` ```

faraggi (Wed, 06 Nov 2019 09:04:09 GMT):
Hi pcmola. Code can be sourrounded by tildes \` in-line to show `code` and \``` 3 tildes can ``` make a code block ``` ```

faraggi (Wed, 06 Nov 2019 09:04:09 GMT):
Hi pcmola. Code can be sourrounded by tildes \` in-line to show `code` and \``` 3 tildes can ```make a code block ```

faraggi (Wed, 06 Nov 2019 09:04:09 GMT):
Hi pcmola. Code can be sourrounded by tildes \` in-line to show `code` and \`\`\` 3 tildes can ``` make a code block ```

faraggi (Wed, 06 Nov 2019 09:04:09 GMT):
Hi pcmola. Code can be sourrounded by tildes \` in-line to show `code` and 3 tildes can ``` make a code block ```

faraggi (Wed, 06 Nov 2019 09:04:09 GMT):
Hi pcmola. Code can be surrounded by tildes in-line to show `code` and 3 tildes can ``` make a code block ```

faraggi (Wed, 06 Nov 2019 09:05:51 GMT):
From what I can tell, there seems to be some extra chars in that private key. Double check that and tell us if the problem persists.

oyincode (Wed, 06 Nov 2019 09:25:38 GMT):
hey guys I'm trying to setup the besu project on my local machine and its giving me this error, Each time I run the gradlew build or gradlew installDist, i get this in my console. What went wrong: Execution failed for task ':buildSrc:compileGroovy'. BUG! exception in phase 'semantic analysis' in source unit 'C:\Users\onuem\Desktop\besu\buildSrc\src\main\groovy\CheckSpdxHeader.groovy' Unsupported class file major version 57 Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights. Get more help at https://help.gradle.org BUILD FAILED in 7s I'm using Java 13.0.1 Please I'd appreciate any help

NicolasMassart (Wed, 06 Nov 2019 09:27:59 GMT):
First, be aware that all the keys we provide in our tutorials are test keys, do not use them for other purpose than tests. Then, if you imported miner account key in metamask, no issue, you should see the account balance increase in Metamask as blocks are mined and rewards sent to this account. If you don't see the account balance inclrease, it may be a sign that the mining process is not working well. I suggest that you do as you did, restarting the quickstart in this case.

faraggi (Wed, 06 Nov 2019 09:50:25 GMT):
Gradle doesn't support Java 13 (yet).Besu runs fine on Java 13. It just doesn’t currently build on Java 13 because gradle doesn’t support it. You could revert to Java11 (LTS version). Alternatively, you can run Besu without building it, by using our binaries here https://bintray.com/hyperledger-org/besu-repo/besu/_latestVersion#files

oyincode (Wed, 06 Nov 2019 09:52:13 GMT):
alright thanks @faraggi

NicolasMassart (Wed, 06 Nov 2019 10:40:38 GMT):
Hi, not yet, we are working on it but we don't have any release date to communicate for the moment. We will keep you posted.

faraggi (Wed, 06 Nov 2019 12:46:05 GMT):
@RealDeanZhao I'm not sure exactly how much overlap there is, because I don't know maker in detail, but we are currently working with the Ethereum Foundation to help them integrate Besu into a tool that acts somewhat like maker. https://github.com/ethereum/grid Its a GUI desktop tool to handle config and deployment of ethereum networks using different clients. They will be present in our November 26th Contributor call to give updates on the Besu integration.

shemnon (Wed, 06 Nov 2019 14:38:00 GMT):
The extra quoting for `host-whitelist` and `cors-origin` look to be the problem. ``` "command": ["besu", "--data-path=data", "--genesis-file=../genesis.json", "--p2p-host=0.0.0.0", "--p2p-port=30303", "--rpc-http-enabled", "--rpc-http-api=ETH,NET,IBFT", "--host-whitelist=*", "--rpc-http-cors-origins=all", "--rpc-http-host=0.0.0.0", "--rpc-http-port=8545", "--min-gas-price=0"] , ```

eum602 (Wed, 06 Nov 2019 15:12:25 GMT):
The problem comes in the following scenario: I have an ibft2 network which is under onchain permissioning. At the beggining all works well but if for some reason the network stops validating blocks(eg. some validators >1/3 n;n=#total_validators;go offline) then when trying to start the network again by starting the offline validators then THE NETWORK DOES NOT START VALIDATING BLOCKS. The way I found to start the network is by restarting validators WITHOUT: ``` --permissions-accounts-contract-enabled --permissions-accounts-contract-address=0x0000000000000000000000000000000000008888 --permissions-nodes-contract-enabled --permissions-nodes-contract-address=0x0000000000000000000000000000000000009999 ``` Then the network started without permissioning. Finally I procceded restarting, gradually in order to not to loose connection between validators. But this time each node was started with the permissioning flags. I consider that if the network fails, then the validators should be able to start again with onchain permissioning without any extra step.

rachidchami (Wed, 06 Nov 2019 15:42:06 GMT):
Has joined the channel.

eum602 (Wed, 06 Nov 2019 17:05:25 GMT):
@NicolasMassart

NicolasMassart (Wed, 06 Nov 2019 17:06:28 GMT):
Sorry, yes I saw your answer, I'm working on it. Will keep you posted.

eum602 (Wed, 06 Nov 2019 17:06:51 GMT):
ok thanks! :)

rachidchami (Wed, 06 Nov 2019 18:02:22 GMT):
Hello, Im curious about how besu fetches blocks from the network when specifying a network like Rinkeby but i cant seem to find in which portion of the project that happens... Any help is welcomed

rachidchami (Wed, 06 Nov 2019 18:03:02 GMT):
project = besu code on github

GregTheGreek (Wed, 06 Nov 2019 18:11:04 GMT):
hey all -- sorry for the delay on the ETC stuff. We had no idea you needed to --signoff. Its causing some headaches but I think we've got it all resolved now

NicolasMassart (Wed, 06 Nov 2019 18:13:43 GMT):
It works the same on all networks except that for each of them we have a different genesis file that indicates the required chain id and state. But we also have a predefined list of bootnodes. So when you use the `--network=rinkeby` CLI option, it loads this genesis and bootnodes and connects to the nodes to retrieve blocks using p2p as for any other network. One place you could start having a look to see how it differs is /besu/src/main/java/org/hyperledger/besu/cli/config/EthNetworkConfig.java

rachidchami (Wed, 06 Nov 2019 18:29:30 GMT):
I checked the code over there and i found the part when a new *EthNetworkConfig* gets created but after what i have no clue what happens after neither where do these parameters get parsed. I guess ill just have to read the code more. Thank you for your help

NicolasMassart (Wed, 06 Nov 2019 18:33:24 GMT):
You're welcome. Also do you plan on contributing to Besu code? If this sis the case, I think that a more appropriate place to discuss that would be the #besu-contributors channel. You would have more chances to get answers on how the code works.

rachidchami (Wed, 06 Nov 2019 18:35:25 GMT):
Yes i am trying to contribute.

rachidchami (Wed, 06 Nov 2019 18:35:37 GMT):
I will make sure to join that channel, Thank you so much

peter_somogyvari (Wed, 06 Nov 2019 20:34:52 GMT):
Has joined the channel.

GregTheGreek (Wed, 06 Nov 2019 21:06:08 GMT):
Whats the difference between `--signoff` and signing your commits ?

shemnon (Wed, 06 Nov 2019 21:17:05 GMT):
`--signoff` auto-generates the signoff based on your git config. As far as I know it's the exact same comment you can hand write.

shemnon (Wed, 06 Nov 2019 21:17:45 GMT):
signed commits use actual cryptography to generate a cryptographic signautre. The DCO process doesn't care about these cryptographic signatures.

GregTheGreek (Wed, 06 Nov 2019 21:17:52 GMT):
i see ok

GregTheGreek (Wed, 06 Nov 2019 21:18:09 GMT):
this ought to be one of the most challenging things ive done in the last couple weeks lol

GregTheGreek (Wed, 06 Nov 2019 21:18:24 GMT):
I think we finally have it

ajsutton (Wed, 06 Nov 2019 21:40:14 GMT):
Yes, for a process that looks so simple DCO can be a real pain. :)

shemnon (Wed, 06 Nov 2019 22:15:00 GMT):
Ironically the "fix signoff" is where the DCO bot started complaining again.

GregTheGreek (Wed, 06 Nov 2019 22:16:59 GMT):
*throws computer on the ground*

pcmola (Wed, 06 Nov 2019 23:29:14 GMT):
Thanks for the guide and thanks to your help I updated the code. And I think the tilde is '~'. Perhaps what you intended is '`', a grave accent.

pcmola (Wed, 06 Nov 2019 23:42:03 GMT):
As you pointed out, I confirmed that I entered a different private key. After correcting, Besu confirmed normal operation. Thank you.

pcmola (Wed, 06 Nov 2019 23:42:03 GMT):
As you pointed out, I confirmed that I entered a different private key. After correcting, I confirmed Besu normal operation. Thank you.

pcmola (Wed, 06 Nov 2019 23:42:03 GMT):
As you pointed out, I confirmed that I entered a different private key. Since I corrected, I confirmed that Besu was working fine. Thank you.

pcmola (Wed, 06 Nov 2019 23:42:03 GMT):
As you pointed out, I confirmed that I entered a different node 1address. Since I corrected, I confirmed that Besu was working fine. Thank you.

pcmola (Wed, 06 Nov 2019 23:42:03 GMT):
As you pointed out, I confirmed that I entered a different node 1 address. Since I corrected, I confirmed that Besu was working fine. Thank you.

pcmola (Wed, 06 Nov 2019 23:42:03 GMT):
As you pointed out, I confirmed that I entered a different node 1 address. After I corrected, I confirmed that Besu was working fine. Thank you.

RealDeanZhao (Thu, 07 Nov 2019 02:07:18 GMT):
@faraggi Seems grid is a desktop tool, not a server tool for ops.

RealDeanZhao (Thu, 07 Nov 2019 02:07:18 GMT):
@faraggi Seems grid is a desktop tool, not a server tool for ops and network administrator.

RealDeanZhao (Thu, 07 Nov 2019 02:07:18 GMT):
@faraggi Seems grid is a desktop tool, not a server tool for ops and network administrators.

RealDeanZhao (Thu, 07 Nov 2019 02:07:18 GMT):
@faraggi Seems grid is a desktop tool, not a server tool with GUI for ops and network administrators.

faraggi (Thu, 07 Nov 2019 08:23:18 GMT):
For additional context, this question is in relation to the issues: (old) https://pegasys1.atlassian.net/browse/PAN-3184 (new) https://jira.hyperledger.org/browse/BESU-65

faraggi (Thu, 07 Nov 2019 08:25:52 GMT):
Yes, that's in fact the main difference. Gris purpose is more for developers trying out different clients and configs.

Nabilel 1 (Thu, 07 Nov 2019 15:12:31 GMT):
Has joined the channel.

tvanepps (Thu, 07 Nov 2019 20:59:20 GMT):
Has joined the channel.

MathiasGlintborg (Fri, 08 Nov 2019 07:26:42 GMT):
Has joined the channel.

MathiasGlintborg (Fri, 08 Nov 2019 07:26:47 GMT):
Hi. Is it possible to use Besu as public consortium interchain?. I want to build a permissioned network where selected nodes can read/write/transact, but also have a token which can be public. This also means that public nodes must be able to read and broadcast transactions to the network.

hiteshjoshi1 (Fri, 08 Nov 2019 07:47:31 GMT):
Has joined the channel.

NicolasMassart (Fri, 08 Nov 2019 09:08:03 GMT):
Hi, can you explain me a few things? What do you mean by interchain? What do you mean by a node having a public token?

GregTheGreek (Fri, 08 Nov 2019 18:03:59 GMT):
https://github.com/hyperledger/besu/pull/176

GregTheGreek (Fri, 08 Nov 2019 18:04:06 GMT):
FINALLY GOT THE DCO

GregTheGreek (Fri, 08 Nov 2019 18:04:06 GMT):
FINALLY GOT THE DCO (sorry for spam)

shemnon (Fri, 08 Nov 2019 18:17:05 GMT):
merged

eum602 (Fri, 08 Nov 2019 22:29:24 GMT):
Hello everyone, we are working with JAVA to deploy private transactions; I wonder if there is a library to do that with private transactions. For example Quorum have an extended library for web3j which allows to deploy private transaction (web3j-quorum)

shemnon (Sat, 09 Nov 2019 00:41:49 GMT):
Have you looked at the Web3J Besu libraries? https://github.com/web3j/web3j/blob/master/besu/src/main/java/org/web3j/protocol/besu/Besu.java

shemnon (Sat, 09 Nov 2019 00:42:15 GMT):
If something is not covered there I bet Web3Labs would like to hear about it.

mojo (Sat, 09 Nov 2019 14:26:35 GMT):
Has joined the channel.

mojo (Sat, 09 Nov 2019 14:26:36 GMT):
Hi! My name is Mohamed and I am one of the cofounders of Blok-Z. I was invited here by Faisal from the PegaSys team. Nice to meet you all! I've been going through the Besu documentation and the following section made we wonder: "We do not recommend putting bootnodes behind a load balancer. Put more bootnodes on the network itself." *See*: https://besu.hyperledger.org/en/latest/HowTo/Deploy/Bootnodes/ What is the rationale behind the recommendation? Is it due to: 1. Issues arising from requests to the bootnode appearing to originate from the load balancer instead of from peers. 2. Or the added hassle to collect request logs from both bootnodes as well as the load balancer Or some other reason altogether? Thanks!

mojo (Sat, 09 Nov 2019 14:26:36 GMT):
Hi! My name is Mohamed and I am one of the cofounders of Blok-Z. I was invited here by Faisal from the PegaSys team. Nice to meet you all! I've been going through the Besu documentation and the following section made we wonder: "We do not recommend putting bootnodes behind a load balancer. Put more bootnodes on the network itself." *See*: https://besu.hyperledger.org/en/latest/HowTo/Deploy/Bootnodes/ What is the rationale behind the recommendation? Is it due to: 1. Issues arising from requests to the bootnode appearing to originate from the load balancer instead of from peers. 2. And/Or the added hassle to collect request logs from both bootnodes as well as the load balancer 3. And/Or is it to maximize the number of P2P connections that can be established with the bootnode Or is it some other reason altogether? Thanks!

sigma67 (Sat, 09 Nov 2019 21:14:17 GMT):
Has joined the channel.

camilo5972 (Sun, 10 Nov 2019 17:24:36 GMT):
Has joined the channel.

camilo5972 (Sun, 10 Nov 2019 17:24:38 GMT):
Hello everyone, I'm using web3j with Besu protocol (https://github.com/web3j/web3j/blob/master/besu/src/main/java/org/web3j/protocol/besu/Besu.java). I can make a private transaction but I can't get the result of a call in the contract. I'm using this to load the contract: "contract.load(address ..., Besu ..., BesuPrivateTransactionManager ..., BesuPrivacyGasProvider ...)" and for call "contract.myfunction(param).send()" but nothing returns.

camilo5972 (Sun, 10 Nov 2019 17:32:01 GMT):
or if someone has examples of how to use web3j-besu for interaction with smart contracts it would be very helpful. In a context of private transactions.

joshuafernandes (Sun, 10 Nov 2019 20:52:12 GMT):
Hi @mojo Mainly 1. This is because the node's enode is tied to the IP of the bootnode itself so this doesn't quite work when behind a load balancer. For redundancy what we'd recommend is multiple bootnodes and keeping their IP's & keys static so that should they fail for some reason, automation can recover them with the same enode. Logs are fine as is - where possible we'd recommend using a log collation tool to make life easier - eg: ELK, Sumo, Fluentd etc

MohamedAbdulaziz (Sun, 10 Nov 2019 22:48:19 GMT):
Has joined the channel.

sanket1211 (Mon, 11 Nov 2019 06:19:12 GMT):
can anyone tell how besu is different from ethreum client and what was the need to introduce besu when there were ethreum clients..

madelinemurray (Mon, 11 Nov 2019 10:01:27 GMT):
@camilo5972 - it looks like this is probably related to web3j. I see you've already posted over on their gitter - hopefully they can help you out :-)

mojo (Mon, 11 Nov 2019 11:17:20 GMT):
Ahh that makes a lot of sense! So if either the public key, IP or port changes then the bootnode's enode will be different. Therefore, nodes won't be able to connect to that bootnode on startup, right? Thanks a lot for the explanation and suggestions!

mojo (Mon, 11 Nov 2019 11:34:25 GMT):
Hyperledger Besu is an enterprise-focused Ethereum client. It is designed with permissioning and privacy features out of the gate. It is also written in Java, popularly used in enterprise software, which means that companies will be more willing to try Besu out and contribute. One other important distinction between other clients such as Geth and Quorum is licensing. Besu is under the Apache 2.0 license while Geth and Quorum fall under GPL. GPL forces derivative work to be open-sourced. This is a big obstacle for most businesses that want to extend Ethereum clients using their own proprietary software. These are just some of the differences that I know which make Besu a compelling Ethereum client option for enterprise. Hyperledger Besu is an open source Ethereum client developed under the Apache 2.0 license and written in Java. It can be run on the Ethereum public network or on private permissioned networks, as well as test networks such as Rinkeby, Ropsten, and Görli. Hyperledger Besu includes several consensus algorithms including PoW, PoA, and IBFT, and has comprehensive permissioning schemes designed specifically for uses in a consortium environment.

mojo (Mon, 11 Nov 2019 11:35:42 GMT):
Hyperledger Besu is an enterprise-focused Ethereum client. It is designed with permissioning and privacy features out of the gate. It is also written in Java, popularly used in enterprise software, which means that companies will be more willing to try Besu out and contribute. One other important distinction between other clients such as Geth and Quorum is licensing. Besu is under the Apache 2.0 license while Geth and Quorum fall under GPL. GPL forces derivative work to be open-sourced. This is a big obstacle for most businesses that want to extend Ethereum clients using their own proprietary software. These are just some of the differences that I know which make Besu a compelling Ethereum client option for enterprise.

kunju_shihas (Mon, 11 Nov 2019 12:51:24 GMT):
Has joined the channel.

camilo5972 (Mon, 11 Nov 2019 15:42:56 GMT):
I already solved my problem. Apparently it was something in my node configuration. Now I can write and read private transactions using web3j.

camilo5972 (Mon, 11 Nov 2019 19:20:46 GMT):
Anyone know how I can read the events emitted by a private contract with Web3J or directly with JSON-RPC?

shemnon (Mon, 11 Nov 2019 22:00:24 GMT):
We have a Besu Contributor Call today at 0100 UTC (11am Brisbane, 5pm SF, 8pm NY, middle of night Eurooe). Adrian Sutton will be the host. If you have anything to discuss please add it to the agenda: https://wiki.hyperledger.org/display/BESU/2019-11-12+Besu+Contributor+Call

shemnon (Mon, 11 Nov 2019 22:00:24 GMT):
We have a Besu Contributor Call today at 0100 UTC (11am Brisbane, 5pm SF, 8pm NY, middle of night Europe). Adrian Sutton will be the host. If you have anything to discuss please add it to the agenda: https://wiki.hyperledger.org/display/BESU/2019-11-12+Besu+Contributor+Call

eum602 (Mon, 11 Nov 2019 22:27:49 GMT):
Hello Besu team, I am having an issue with a regular node: ``` Context: This node has the rpc port opened to any connection ```

eum602 (Mon, 11 Nov 2019 22:35:15 GMT):
Hello Besu team, I am having an issue with a regular node: Context: This node has the rpc port opened to any connection. The problem is the high cpu usage the vm is consuming:

eum602 (Mon, 11 Nov 2019 22:36:22 GMT):

top-monitoring

eum602 (Mon, 11 Nov 2019 22:36:42 GMT):
When checking Logs these show an error periodically(every 15 seconds aproximately):

eum602 (Mon, 11 Nov 2019 22:37:49 GMT):

error-vertx

eum602 (Mon, 11 Nov 2019 22:38:22 GMT):
Please I would like to know how can we deal with this issue. Thanks in advance

EdJoJob (Mon, 11 Nov 2019 22:57:16 GMT):
you are totally correct

ajsutton (Mon, 11 Nov 2019 23:00:02 GMT):
I would strongly recommend against opening the JSON-RPC to any internet traffic. Most likely there are bots spamming it in an attempt to steal funds from any unlocked accounts (besu doesn't include a wallet to avoid this problem but that won't stop them trying). Or they may just be spamming it as a DOS attempt to cause trouble.

eum602 (Mon, 11 Nov 2019 23:18:56 GMT):
In fact I have tested that closing the rpc decreases the cpu resource usage. But I would like to know why this error is appearing and why it is consuming so much cpu?

eum602 (Mon, 11 Nov 2019 23:19:19 GMT):

Clipboard - November 11, 2019 6:19 PM

ajsutton (Mon, 11 Nov 2019 23:20:43 GMT):
Most likely it's using a lot of CPU because someone is executing a lot of requests - probably as fast as they can send them and potentially asking Besu to perform complex tasks like via calls to eth_call. The error indicates that they send the request and disconnect before receiving the response - we should reduce the log level it's printed at.

ajsutton (Mon, 11 Nov 2019 23:21:44 GMT):
It looks very much like someone is performing a deliberate DOS attack on the node.

shemnon (Tue, 12 Nov 2019 00:41:05 GMT):
I can confirm that even on a testnet that snoppers will start port scanning IPs of nodes that are connected and making calls on the RPC designed to attack lax security.

MathiasGlintborg (Tue, 12 Nov 2019 04:30:57 GMT):
Hi @NicolasMassart thank you for the reply. And sorry for the late reply. Let me remulate the question since the last one was a little unclear. I would like to build a consortium chain run by selected participants and with a native token. On top of that I want to deploy a collateral debt position contract for a payment token that can only be used inside the network.

MathiasGlintborg (Tue, 12 Nov 2019 04:31:18 GMT):
The native token will be listed on crypto exchanges

MathiasGlintborg (Tue, 12 Nov 2019 04:32:06 GMT):
I'm wondering if Hyperledger Besu is suitable for this?

syuta-sugawara (Tue, 12 Nov 2019 09:29:17 GMT):
hi,i created free gas private network with besu. now i cannot send transaction by using web3js. i created raw transaction like this. const rawTx = { nonce: this.web3.utils.numberToHex(tempNonce), gasPrice: this.web3.utils.toHex(0), gasLimit: this.web3.utils.toHex(126165), to: this.contractAddress, data: functionAbi, from: address, }; when i tried to send transaction, i got this error. Error: Returned error: Invalid params how can i solve this?

NicolasMassart (Tue, 12 Nov 2019 09:44:34 GMT):
If it's listed on crypto exchange, does it mean available on mainnet? So you need a nodes with a link to mainnet where your public token will be and a private chain with your private token and contract?

syuta-sugawara (Tue, 12 Nov 2019 09:45:36 GMT):
hi, should i use web3.js-eea for sending transaction to besu nodes? what's the difference between web3.js-eea and web3.js when we send transaction to besu nodes?

NicolasMassart (Tue, 12 Nov 2019 09:50:56 GMT):
Hi, web3.js-eea is only if you need to use Besu privacy features https://besu.hyperledger.org/en/stable/Concepts/Privacy/Privacy-Overview/ Otherwise, the regular web3.js is fine (for instance if interacting with public networks like mainnet or public test nets).

syuta-sugawara (Tue, 12 Nov 2019 09:51:39 GMT):
sure. thanks!

syuta-sugawara (Tue, 12 Nov 2019 10:01:01 GMT):
i'd like to send transaction from server side by using node js. should i use this command when starting besu? --permissions-accounts-config-file-enabled

NicolasMassart (Tue, 12 Nov 2019 10:06:41 GMT):
It's not related to server side (by the way, server side or client side works the same, you call a JSON-RPC API). The `--permissions-accounts-config-file-enabled` option enables the use of a local configuration file to set the account whitelist: https://besu.hyperledger.org/en/stable/HowTo/Limit-Access/Local-Permissioning/#permissions-configuration-file

syuta-sugawara (Tue, 12 Nov 2019 10:09:23 GMT):
you mean, i don't need to use this command? --permissions-accounts-config-file-

syuta-sugawara (Tue, 12 Nov 2019 10:09:23 GMT):
you mean, i don't need to use this command? --permissions-accounts-config-file-enabled

carlosfaria (Tue, 12 Nov 2019 10:44:34 GMT):
Hello, It's possible to run only 1 node with IBFT 2.0 consensus? (only to have a lite environment to run integration tests)

faraggi (Tue, 12 Nov 2019 10:52:02 GMT):
Nope, that command is only related to permissioning configuration. If you use it or not, would depend on how you configure your node's permissions.

faraggi (Tue, 12 Nov 2019 10:57:03 GMT):
Hi Carlos, see here for minimum requirements for networks: https://besu.hyperledger.org/en/stable/Concepts/Consensus-Protocols/Comparing-PoA/#minimum-number-of-validators

carlosfaria (Tue, 12 Nov 2019 11:01:43 GMT):
Thank you @faraggi

faraggi (Tue, 12 Nov 2019 11:12:08 GMT):
wait, I just tried setting it up with 1 node, and it works. So I guess for tests, you can do it

faraggi (Tue, 12 Nov 2019 11:12:11 GMT):
``` $ curl -X POST --data '{"jsonrpc":"2.0","method":"net_peerCount","params":[],"id":1}' localhost:8545 { "jsonrpc" : "2.0", "id" : 1, "result" : "0x0" }% ```

carlosfaria (Tue, 12 Nov 2019 11:12:48 GMT):
Yeah, it says on the docs that you sent `Networks with 3 or less validators are able to produce blocks but do not guarantee finality when operating in adversarial environments.`

faraggi (Tue, 12 Nov 2019 11:13:06 GMT):
Jus make sure to modify the `ibftConfigFile` file

faraggi (Tue, 12 Nov 2019 11:13:26 GMT):
``` }, "blockchain": { "nodes": { "generate": true, "count": 4 } } } ``` here ^

eum602 (Tue, 12 Nov 2019 15:55:41 GMT):
Hello everyone, we are working on private contracts working with java; we would like to know how if it is possible to FILTER events in private transactions; and also if it is possible to SUBSCRIBE to events related to private transactions. I appreciate all responses. Thanks a lot!

eum602 (Tue, 12 Nov 2019 15:57:50 GMT):
Thanks for both responses!

cam-parra (Tue, 12 Nov 2019 17:23:08 GMT):
How have the persistent data problems been solved on then k8s implementation of Besu? Does any know?

matkt (Tue, 12 Nov 2019 20:55:29 GMT):
Has joined the channel.

syuta-sugawara (Wed, 13 Nov 2019 03:36:57 GMT):
hi. i set public key in genesis file like this. fe3b557e8fb62b89f4916b721be55ceb828dbd73

syuta-sugawara (Wed, 13 Nov 2019 03:36:57 GMT):
hi. i set address in genesis file like this. 0xfe3b557e8fb62b89f4916b721be55ceb828dbd73 but this address is shown when i deploy contract to besu node with truffle. 0xFE3B557E8Fb62b89F4916B721be55cEb828dBd73 which should i use?

ajsutton (Wed, 13 Nov 2019 03:50:40 GMT):
The use of upper and lower case letters doesn't affect the actual resulting address so both are referring to the same account. Truffle is capitalising some letters as a form of checksumming to help detect mistyped addresses. It's common for wallets, including metamask, to verify this checksum and alert the user they may have entered the address incorrectly, but clients like Besu will treat both addresses as the same.

syuta-sugawara (Wed, 13 Nov 2019 05:27:23 GMT):
sure

syuta-sugawara (Wed, 13 Nov 2019 05:27:28 GMT):
thanks

syuta-sugawara (Wed, 13 Nov 2019 05:29:07 GMT):
i'm trying to send transaction to private besu nodes. should i use ethsigner? i don't need to use it? https://besu.hyperledger.org/en/stable/HowTo/Send-Transactions/Account-Management/

syuta-sugawara (Wed, 13 Nov 2019 06:12:48 GMT):
hi. when i send transaction to gas free network,what value should i set gas price and gas limit in raw transaction?

syuta-sugawara (Wed, 13 Nov 2019 06:12:48 GMT):
hi. when i send transaction to gas free network,what value should i set gas price and gas limit in raw transaction? i've gotten this error. Error: Returned error: Intrinsic gas exceeds gas limit

syuta-sugawara (Wed, 13 Nov 2019 09:19:13 GMT):
hello. I used "ethereumjs-tx": "^2.1.1" and "web3": "^1.2.1" for sending send a signed transaction to besu, however those don't work, so i changed those versions like this. "ethereumjs-tx": "^1.3.7", "web3": "^1.0.0-beta.55" these worked. I use besu version v1.3.2. I'd like to use newer versions. how can I do that?

syuta-sugawara (Wed, 13 Nov 2019 09:19:13 GMT):
sorry to bothering you. I used "ethereumjs-tx": "^2.1.1" and "web3": "^1.2.1" for sending send a signed transaction to besu, however those don't work, so i changed those versions like this. "ethereumjs-tx": "^1.3.7", "web3": "^1.0.0-beta.55" these worked. I use besu version v1.3.2. I'd like to use newer versions. how can I do that?

coenie (Wed, 13 Nov 2019 10:52:04 GMT):
Has joined the channel.

coenie (Wed, 13 Nov 2019 10:52:05 GMT):
Hi, do you perhaps have any data on time to perform EVM opcodes on besu that you could share?

shemnon (Wed, 13 Nov 2019 15:47:48 GMT):
We don't have low level benchmarks of that yet, and some opcodes (such as SLOAD and SSTORE) vary based on state size. Were you concerned about mainnet performance or consortium performance?

jimjag (Wed, 13 Nov 2019 17:10:54 GMT):
Has joined the channel.

cam-parra (Wed, 13 Nov 2019 18:24:54 GMT):
Does anyone have a copy of the docker file that is used to make this image? https://hub.docker.com/r/hyperledger/besu

shemnon (Wed, 13 Nov 2019 18:26:23 GMT):
Likely this one, or a lightly modified version - https://github.com/hyperledger/besu/blob/master/docker/Dockerfile

cam-parra (Wed, 13 Nov 2019 18:27:14 GMT):
Thank you, Danno!

mojo (Wed, 13 Nov 2019 19:03:22 GMT):
enode

coenie (Wed, 13 Nov 2019 19:54:37 GMT):
Hi, consortium performance. Our smart contracts are quite complex and gas heavy, and some statistics on how that translates into how long a given smart contract function actually takes to execute would be super useful. I know it wouldn't be accurate, but it would help guide certain discussions and decisions we make :)

shemnon (Wed, 13 Nov 2019 19:57:15 GMT):
How much are you working with storage and how much are you doing on-chain calculations (like cryptography)?

EdJoJob (Wed, 13 Nov 2019 20:57:55 GMT):
I can confirm that it is exactly that one

ajsutton (Wed, 13 Nov 2019 21:00:37 GMT):
FYI the Rinkeby testnet recently reached it's Istanbul fork block. Our Besu 1.3.4 node has handled it fine.

shemnon (Wed, 13 Nov 2019 22:11:15 GMT):
I love the "nothingburger" transitions.

lucassaldanha (Thu, 14 Nov 2019 00:48:59 GMT):
Awesome!

coenie (Thu, 14 Nov 2019 06:01:42 GMT):
For the cases which I'm investigating it is primarily storage with few calculations

bobsummerwill (Thu, 14 Nov 2019 15:36:00 GMT):
Has joined the channel.

Radhi (Thu, 14 Nov 2019 15:39:39 GMT):
Has joined the channel.

cam-parra (Thu, 14 Nov 2019 18:27:50 GMT):
Quick question: What ports are exposed on a Besu node? Is that configurable in the genesis or is it a preset?

cam-parra (Thu, 14 Nov 2019 18:27:50 GMT):
Quick question: What ports are exposed on a Besu node? Is that configurable in the genesis or is it a preset? (in indy we expose 2 ports a client and node port, that is set in our genesis)

coenie (Thu, 14 Nov 2019 18:34:40 GMT):
There are several ports exposed, but not configured in genesis though. Here is a starting point: https://besu.hyperledger.org/en/stable/Reference/API-Methods/. Here are some options that can be specified in the genesis config: https://besu.hyperledger.org/en/stable/Reference/Config-Items/

coenie (Thu, 14 Nov 2019 18:34:40 GMT):
There are several ports exposed, but not configured in genesis (file) though. Here is a starting point: https://besu.hyperledger.org/en/stable/Reference/API-Methods/. Here are some options that can be specified in the genesis config: https://besu.hyperledger.org/en/stable/Reference/Config-Items/

shemnon (Thu, 14 Nov 2019 18:49:44 GMT):
5 ports right now, only one is "required". All via CLI or a config .toml. Only P2P/Discovery is opened by default. 30303 - P2P/Discovery (tcp and udp) - `--p2p-port` 8545 - JSON-RPC APIs (tcp, optional) - `--rpc-http-port` 8546 - Websockets APIs (tcp, optional) - `--rpc-ws-port` 8547 - Graphql queries (tcp, optional) - `--graphql-port` 9545 - metrics (prometheus format, tcp, optional) `--metrics-port`

shemnon (Thu, 14 Nov 2019 18:51:08 GMT):
all the servers are enabled via `---enabled` - and only p2p hash it enabled by default.

mattatkiva (Thu, 14 Nov 2019 19:34:19 GMT):
what about ENS? does that require additional ports?

shemnon (Thu, 14 Nov 2019 19:43:53 GMT):
I believe ENS is resolved via the JSON-RPC apis., so 8545.

eum602 (Thu, 14 Nov 2019 21:11:47 GMT):
Hello, how can I be able to make comments on Jira?, for example here: https://wiki.hyperledger.org/display/BESU/Switchable+Consensus+Parameters

EdJoJob (Thu, 14 Nov 2019 21:50:42 GMT):
Hi @eum602, I believe you should be able to login to that site using the same credentials you used to sign-in here and you should have comment access

eum602 (Thu, 14 Nov 2019 22:00:52 GMT):
thanks.

RealDeanZhao (Fri, 15 Nov 2019 02:53:19 GMT):
For a 4-org consortia, should we use ibftConfigFile to generate the genesis config file? No org want to share his private key with other orgs.

RealDeanZhao (Fri, 15 Nov 2019 02:56:03 GMT):
Another situation, can the first org set up the network with only one node in the genesis file? And then, use the ibft api to add other 3 nodes one by one?

RealDeanZhao (Fri, 15 Nov 2019 02:56:03 GMT):
Another situation, can the first org set up the network with only one node in the genesis file, and then, use the ibft api to add other 3 nodes one by one?

RealDeanZhao (Fri, 15 Nov 2019 03:03:20 GMT):
Or should we wait until there have 4 nodes to start the network.

NicolasMassart (Fri, 15 Nov 2019 12:00:06 GMT):
Yes you can start with one validator and add other validators. The important thing is that you have to vote the new validator (make the addValidator call) on enough validators to reach the consensus. If you have only one node to start with, the consensus (51%) is reached by voting only on this node. Then to add a third node, you have to vote on node 1 and node 2. To ad a 4th node, vote on at least on 2 of the 3 validators nodes, and so on.

AzizMezzi (Fri, 15 Nov 2019 14:10:27 GMT):
Has joined the channel.

faraggi (Fri, 15 Nov 2019 14:12:42 GMT):
In the spirit of improving the way we communicate and the information you receive, we've put together a short survey to gather your feedback. All answers are optional, and we'd love to hear what you have to say: https://forms.gle/oRZpzHzPU4FPy1qc6

SamuelDare (Fri, 15 Nov 2019 14:47:56 GMT):
does anyone know what the status of this is?

SamuelDare (Fri, 15 Nov 2019 14:47:57 GMT):
https://github.com/ConsenSys/ethereum-dissectors

SamuelDare (Fri, 15 Nov 2019 14:48:33 GMT):
I am trying to chaos test different clients and would like to observe messages over the wire

AzizMezzi (Fri, 15 Nov 2019 14:51:13 GMT):
Hi, we 've setup a 4 besu nodes, all working fine, deployed contracts. But I want to create accounts, like web3.eth.personal.newAccount even with geth command personal.newAccounts , but I can't. It says that ether undefined or the method does not exists. I've tried metamask to relate it with nodes but it's not possible. Can you guys help me, please?

NicolasMassart (Fri, 15 Nov 2019 15:38:39 GMT):
Besu does not provide account management, on purpose for security reasons. https://besu.hyperledger.org/en/stable/HowTo/Send-Transactions/Account-Management/

NicolasMassart (Fri, 15 Nov 2019 17:20:18 GMT):
Status of the project seems to be that it's unmaintained but code can probably still be used. It would just require a fork and new maintainers if you want to keep it alive.

shemnon (Fri, 15 Nov 2019 20:30:44 GMT):
They negotiate per-session symmetric keys. It would require the same level of maniulation that watching a SSL connection live would require. If you turn on trace debugging we do spit out a lot of the P2P messages, but it's not in a common format and theres also a bunch of EVM traceing too.

SamuelDare (Sat, 16 Nov 2019 10:06:45 GMT):
|Thanks... think i am going to go with tcpdump and feed it into wireshark so its easier to make like for like comparisons

SamuelDare (Sat, 16 Nov 2019 10:07:57 GMT):
Maintain that? I wouldnt trust any C++ code written by me

eum602 (Sat, 16 Nov 2019 19:39:30 GMT):
Hello everyone, I am using orion and Besu, I have troubles when I try to create a group with createPrivacyGroup: ``` { "jsonrpc": "2.0", "method": "priv_findPrivacyGroup", "params": [ ["6v46IAyxnLmuiVNNMykdwlgLyDFDOy8HJSl66eSpwRc=", "2t0IA54d2SaezQVGDfGV9juGMxlQl6OIccVwUgXVOTg="] ], "id": 1 }``` The group is only created on the node that was involved in the rpc url, but not on the other node. If I deploy on nodes that are on localhost then all works well, the problem appears when I try to do the same on nodes that are on cloud VM. On VM I have opened the nodeport; the client port only listens on localhost because each orion node is on the same VM with the BESU node. I would like to receive some suggests about hot to deal with this issue. Thanks!

lucassaldanha (Sun, 17 Nov 2019 20:14:38 GMT):
Hi, could you confirm if your Orion nodes are connected to each other? One way that you could test this is sending a payload using /send and trying to receive it in another node using /receive. Also, double check your Orion config to ensure that you have configured the nodeurl with an reachable endpoint, as this is the url that Orion will advertise. It would help if you could share your Orion config file (for the local nodes and the nodes running on cloudVM). Your problem seems to be related to network config. This is a common issue when using Docker or VMs. Take a look at this repo (https://github.com/lucassaldanha/besu-three-nodes-example). It is a docker config but it might help you to see the required config options.

eum602 (Sun, 17 Nov 2019 21:24:28 GMT):
the config in my pc is :

eum602 (Sun, 17 Nov 2019 21:24:33 GMT):

Clipboard - November 17, 2019 4:24 PM

lucassaldanha (Sun, 17 Nov 2019 21:26:52 GMT):
I believe you need to update your nodeurl property to something that is reachable by the other nodes. Unless you are running all nodes locally, this nodeurl won't work.

eum602 (Sun, 17 Nov 2019 21:27:27 GMT):
for my cloud config is:

eum602 (Sun, 17 Nov 2019 21:27:31 GMT):

Clipboard - November 17, 2019 4:27 PM

eum602 (Sun, 17 Nov 2019 21:28:06 GMT):
as you mention i have opened the nodeport

lucassaldanha (Sun, 17 Nov 2019 21:28:20 GMT):
I'm not talking about nodeport, I'm talking about nodeurl :)

lucassaldanha (Sun, 17 Nov 2019 21:28:56 GMT):
The ports need to be open, but the url also need to be reachable by external nodes

eum602 (Sun, 17 Nov 2019 21:31:19 GMT):
ok, great, Iwill try it. :)

lucassaldanha (Sun, 17 Nov 2019 21:31:20 GMT):
(similar to what you did in the othernodes, using the external addresses)

lucassaldanha (Sun, 17 Nov 2019 21:31:30 GMT):
Ok! Let me know how it goes!

eum602 (Sun, 17 Nov 2019 21:31:38 GMT):
thanks a lot!

syuta-sugawara (Mon, 18 Nov 2019 01:20:28 GMT):
hello. sorry so suddenly. I used "ethereumjs-tx": "^2.1.1" and "web3": "^1.2.1" for sending send a signed transaction to besu, however those don't work, so i changed those versions like this. "ethereumjs-tx": "^1.3.7", "web3": "^1.0.0-beta.55" these worked. I use besu version v1.3.2. I'd like to use newer versions. how can I do that?

MathiasGlintborg (Mon, 18 Nov 2019 01:39:45 GMT):
@NicolasMassart initially it will be issued on Ethereum with ERC-20 and listed on mainstream crypto exchanges. We are currently designing our own blockchain, and yes, once that one runs on MainNet we will migrate from Ethereum to that one. We are currently exploring different blockchain frameworks that accommodate our requirements. We want to build a consortium network with known node participants, the native and public traded token, a CDP contract similar to DAI, and payment tokens that the CDP will create. It's only the native token that will be listed on exchanges.

syuta-sugawara (Mon, 18 Nov 2019 02:15:53 GMT):
hi. I'd like to confirm this node status. i deployed besu node on aws. then now I'm watching log. i created private network with three nodes by using ibft. does this log show that this node work as a peering node?

syuta-sugawara (Mon, 18 Nov 2019 02:16:00 GMT):

besu.png

trent.mohay (Mon, 18 Nov 2019 03:15:41 GMT):
Hi @syuta-sugawara The lines containing "IbftRound" imply the node producing this log file is acting as a validator in the network and appears to be receiving the expected numbers of prepare/commit messages. If you require further information, you can turn on DEBUG (or maybe TRACE) logging, which will show you all of the reception/transmission of each prepare/commit messages (but will also produce _a lot_ of noise)

syuta-sugawara (Mon, 18 Nov 2019 03:18:01 GMT):
thank you for your reply.

syuta-sugawara (Mon, 18 Nov 2019 03:20:55 GMT):
does this log show that this node work as a peering node? so sorry. i'd like to get simpler answer like, 'yes' or 'no'...

syuta-sugawara (Mon, 18 Nov 2019 05:00:42 GMT):
hi. how to stop besu by using any command?

faraggi (Mon, 18 Nov 2019 08:14:45 GMT):
Hi @syuta-sugawara , if you're running besu with a docker container, you stop it with: `docker stop ` https://besu.hyperledger.org/en/stable/HowTo/Get-Started/Run-Docker-Image/#stopping-besu-and-cleaning-up-resources If you ran it in your terminal, you can stop it by interrpting/terminating the process with `CTRL+C` or equivalent.

faraggi (Mon, 18 Nov 2019 09:07:02 GMT):
Yes. :)

syuta-sugawara (Mon, 18 Nov 2019 09:14:09 GMT):
thanks!

cam-parra (Mon, 18 Nov 2019 16:10:53 GMT):
Is there a command to generate a genesis that includes 4 nodes? Or does the genesis just declare your boot node?

AzizMezzi (Mon, 18 Nov 2019 16:12:44 GMT):
hi,i created free gas private network with besu. now i cannot send transaction by using web3js. i created raw transaction like this var txObject = { nonce: web3.utils.numberToHex(txnCount), gasPrice: web3.utils.numberToHex(1000), gasLimit: web3.utils.numberToHex(21000), to: addressTo, value: web3.utils.numberToHex(web3.utils.toWei(valueInEther.toString(), 'ether')) }; when i tried to send transaction, i got this error. Error: Returned error: Invalid params how can i solve this? and thank you

NicolasMassart (Mon, 18 Nov 2019 16:23:01 GMT):
Hi, you can find a full example of transaction sending on our doc site at https://besu.hyperledger.org/en/stable/HowTo/Send-Transactions/Transactions/#5-send-ether

AzizMezzi (Mon, 18 Nov 2019 16:23:44 GMT):
i use this script and i got that error

NicolasMassart (Mon, 18 Nov 2019 16:44:27 GMT):
can you post the full script you used so I can inspect it?

AzizMezzi (Mon, 18 Nov 2019 16:46:14 GMT):
const Web3 = require('web3') const ethTx = require('ethereumjs-tx').Transaction ; const readline = require('readline'); async function askQuestion(query) { const rl = readline.createInterface({ input: process.stdin, output: process.stdout, }); return new Promise(resolve => rl.question(query, ans => { rl.close(); resolve(ans); })) } const args = process.argv.slice(2); // web3 initialization - must point to the HTTP JSON-RPC endpoint var provider = args[0] || 'http://localhost:8545'; console.log("******************************************"); console.log("Using provider : " + provider); console.log("******************************************"); var web3 = new Web3(new Web3.providers.HttpProvider(provider)) web3.transactionConfirmationBlocks = 1; // Sender address and private key // Second acccount in dev.json genesis file // Exclude 0x at the beginning of the private key const addressFrom = '0x627306090abaB3A6e1400e9345bC60c78a8BEf57' const privKey = Buffer.from('c87509a1c067bbde78beb793e6fa76530b6382a4c0241e5e4a9ec0a0f44dc0d3', 'hex') // Receiver address and value to transfer // Third account in dev.json genesis file const addressTo = '0xf17f52151EbEF6C7334FAD080c5704D77216b732' const valueInEther = 2 // Get the address transaction count in order to specify the correct nonce web3.eth.getTransactionCount(addressFrom, "pending").then((txnCount) => { // Create the transaction object var txObject = { nonce: web3.utils.numberToHex(txnCount), gasPrice: web3.utils.numberToHex(1000), gasLimit: web3.utils.numberToHex(21000), to: addressTo, value: web3.utils.numberToHex(web3.utils.toWei(valueInEther.toString(), 'ether')) }; // Sign the transaction with the private key var tx = new ethTx(txObject); tx.sign(privKey) //Convert to raw transaction string var serializedTx = tx.serialize(); var rawTxHex = '0x' + serializedTx.toString('hex'); // log raw transaction data to the console so you can send it manually console.log("Raw transaction data: " + rawTxHex); // but also ask you if you want to send this transaction directly using web3 (async() => { const ans = await askQuestion("******************************************\n\ Do you want to send the signed value transaction now ? (Y/N):"); if("y" == ans || "Y" == ans){ // Send the signed transaction using web3 web3.eth.sendSignedTransaction(rawTxHex) .on('receipt', receipt => { console.log('Receipt: ', receipt); }) .catch(error => { console.log('Error: ', error.message); }); console.log("******************************************"); console.log("Value transaction sent, waiting for receipt."); console.log("******************************************"); }else{ console.log("******************************************"); console.log("You can for instance send this transaction manually with the following command:"); console.log("curl -X POST --data '{\"jsonrpc\":\"2.0\",\"method\":\"eth_sendRawTransaction\",\"params\":[\"" + rawTxHex + "\"],\"id\":1}'", provider); } })(); }) .catch(error => { console.log('Error: ', error.message); });

AzizMezzi (Mon, 18 Nov 2019 16:46:34 GMT):
const Web3 = require('web3') const ethTx = require('ethereumjs-tx').Transaction ; const readline = require('readline'); async function askQuestion(query) { const rl = readline.createInterface({ input: process.stdin, output: process.stdout, }); return new Promise(resolve => rl.question(query, ans => { rl.close(); resolve(ans); })) } const args = process.argv.slice(2); // web3 initialization - must point to the HTTP JSON-RPC endpoint var provider = args[0] || 'http://localhost:8545'; console.log("******************************************"); console.log("Using provider : " + provider); console.log("******************************************"); var web3 = new Web3(new Web3.providers.HttpProvider(provider)) web3.transactionConfirmationBlocks = 1; // Sender address and private key // Second acccount in dev.json genesis file // Exclude 0x at the beginning of the private key const addressFrom = '0x627306090abaB3A6e1400e9345bC60c78a8BEf57' const privKey = Buffer.from('c87509a1c067bbde78beb793e6fa76530b6382a4c0241e5e4a9ec0a0f44dc0d3', 'hex') // Receiver address and value to transfer // Third account in dev.json genesis file const addressTo = '0xf17f52151EbEF6C7334FAD080c5704D77216b732' const valueInEther = 2 // Get the address transaction count in order to specify the correct nonce web3.eth.getTransactionCount(addressFrom, "pending").then((txnCount) => { // Create the transaction object var txObject = { nonce: web3.utils.numberToHex(txnCount), gasPrice: web3.utils.numberToHex(1000), gasLimit: web3.utils.numberToHex(21000), to: addressTo, value: web3.utils.numberToHex(web3.utils.toWei(valueInEther.toString(), 'ether')) }; // Sign the transaction with the private key var tx = new ethTx(txObject); tx.sign(privKey) //Convert to raw transaction string var serializedTx = tx.serialize(); var rawTxHex = '0x' + serializedTx.toString('hex'); // log raw transaction data to the console so you can send it manually console.log("Raw transaction data: " + rawTxHex); // but also ask you if you want to send this transaction directly using web3 (async() => { const ans = await askQuestion("******************************************\n\ Do you want to send the signed value transaction now ? (Y/N):"); if("y" == ans || "Y" == ans){ // Send the signed transaction using web3 web3.eth.sendSignedTransaction(rawTxHex) .on('receipt', receipt => { console.log('Receipt: ', receipt); }) .catch(error => { console.log('Error: ', error.message); }); console.log("******************************************"); console.log("Value transaction sent, waiting for receipt."); console.log("******************************************"); }else{ console.log("******************************************"); console.log("You can for instance send this transaction manually with the following command:"); console.log("curl -X POST --data '{\"jsonrpc\":\"2.0\",\"method\":\"eth_sendRawTransaction\",\"params\":[\"" + rawTxHex + "\"],\"id\":1}'", provider); } })(); }) .catch(error => { console.log('Error: ', error.message); });

AzizMezzi (Mon, 18 Nov 2019 16:46:43 GMT):
this is my code

NicolasMassart (Mon, 18 Nov 2019 16:47:15 GMT):
I will have a look.

AzizMezzi (Mon, 18 Nov 2019 16:47:54 GMT):
thank you

NicolasMassart (Mon, 18 Nov 2019 16:50:48 GMT):
can you tell me more about the node you are using? What command line did you use to run it?

AzizMezzi (Mon, 18 Nov 2019 16:56:33 GMT):
the command line to run besu besu --data-path=data --genesis-file=../genesis.json --rpc-http-enabled --rpc-http-api=ETH,NET,IBFT --host-whitelist="*" --rpc-http-cors-origins="all" --metrics-enabled

AzizMezzi (Mon, 18 Nov 2019 16:56:42 GMT):
for the first node

NicolasMassart (Mon, 18 Nov 2019 17:06:52 GMT):
can you send me your genesis file too so that I can reproduce your setup?

NicolasMassart (Mon, 18 Nov 2019 17:29:55 GMT):
And can you tell me what version of Besu you are using? use `besu -v` command to have the exact version

cam-parra (Mon, 18 Nov 2019 19:52:41 GMT):
Another question for enode URL do you use an aws ec2 private IP or public IP?

EdJoJob (Mon, 18 Nov 2019 20:06:44 GMT):
the genesis file only specifies the first block in the network, and the network hardforks. If you are using a Proof of Authority network, that first block will need to include the `extradata` which specifies the validator nodes. Have a look at https://besu.hyperledger.org/en/stable/Tutorials/Private-Network/Create-Private-Clique-Network/ or https://besu.hyperledger.org/en/stable/Tutorials/Private-Network/Create-IBFT-Network/ which has the generation steps

EdJoJob (Mon, 18 Nov 2019 20:08:49 GMT):
The IP in the enode URL needs to be the IP by which the node would normally be accessible by other nodes in the network. If all nodes are in EC2, then the Private IP can work, but if you are joining to a wider network, or wanting to work with any node outside EC2, then you need to use the Public IP.

cam-parra (Mon, 18 Nov 2019 20:10:58 GMT):
This is very helpful! Thanks for taking the time to answer my questions :)

EdJoJob (Mon, 18 Nov 2019 20:12:04 GMT):
No worries. Happy to help

cam-parra (Mon, 18 Nov 2019 20:57:33 GMT):
Was there a change in 1.3.4 that doesn't create `database` directory when running `~/besu-1.3.4/bin/besu --data-path=data public-key export --to=data/pubkey`?

pcmola (Tue, 19 Nov 2019 00:54:59 GMT):
Hi, when I try to restart besu after stopping besu using Ctrl + C, I get the following DB LOCK error message: `org.rocksdb.RocksDBException: While lock file: /home2/pcmola/besu-1.3.4/database/LOCK: Resource temporarily unavailable` Is there any other way than deleting the database directory?

AkihiroTanaka (Tue, 19 Nov 2019 02:03:52 GMT):
Has joined the channel.

syuta-sugawara (Tue, 19 Nov 2019 02:18:38 GMT):
hi. we use nodejs. we'd like to send a singed transaction by using below codes.

syuta-sugawara (Tue, 19 Nov 2019 02:18:38 GMT):
hi. we use nodejs. we'd like to send a singed transaction by using below codes. const data = contractInstance .deploy({ data: contractBytecode, arguments: args }) .encodeABI(); const to = null; const rawTx = await this.getRawTx( to, value, data, pendingTxCount, accountAddress, gasLimit, );

syuta-sugawara (Tue, 19 Nov 2019 02:18:38 GMT):
hi. we use nodejs. we'd like to send a singed transaction by using below codes. const data = contractInstance .deploy({ data: contractBytecode, arguments: args }) .encodeABI(); const to = null; const rawTx = await this.getRawTx( to, value, data, pendingTxCount, accountAddress, gasLimit, ); however, we got these error Error: Transaction has been reverted by the EVM:↵{↵ "blockHash": "0x6bc7f94edb8ff43cb40ac439d134d4c37700f5c4db51fb10298ac92778215589",↵ "blockNumber": 34599,↵ "contractAddress": "0x42699A7612A82f1d9C36148af9C77354759b210b",↵ "cumulativeGasUsed": 1996831,↵ "from": "0xfe3b557e8fb62b89f4916b721be55ceb828dbd73",↵ "gasUsed": 1996831,↵ "logs": [],↵ "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",↵ "status": false,↵ "to": null,↵ "transactionHash": "0xf6ebec42c12a9745e63eba2f1ab561d947ab4f74260129ecc0ef40bc7a868990",↵ "transactionIndex": 0↵}" could any one help us?

syuta-sugawara (Tue, 19 Nov 2019 02:18:38 GMT):
hi. we use nodejs. we'd like to send a singed transaction by using below codes. const data = contractInstance .deploy({ data: contractBytecode, arguments: args }) .encodeABI(); const to = null; const rawTx = await this.getRawTx( to, value, data, pendingTxCount, accountAddress, gasLimit, ); however, we got these error Error: Transaction has been reverted by the EVM:↵{↵ "blockHash": "0x6bc7f94edb8ff43cb40ac439d134d4c37700f5c4db51fb10298ac92778215589",↵ "blockNumber": 34599,↵ "contractAddress": "0x42699A7612A82f1d9C36148af9C77354759b210b",↵ "cumulativeGasUsed": 1996831,↵ "from": "0xfe3b557e8fb62b89f4916b721be55ceb828dbd73",↵ "gasUsed": 1996831,↵ "logs": [],↵ "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",↵ "status": false,↵ "to": null,↵ "transactionHash": "0xf6ebec42c12a9745e63eba2f1ab561d947ab4f74260129ecc0ef40bc7a868990",↵ "transactionIndex": 0↵}" could any one help us? actually sending transaction with above codes works in ethreum public and test net.

syuta-sugawara (Tue, 19 Nov 2019 02:18:38 GMT):
hi. we use nodejs. we'd like to send a singed transaction to private network with besu by using below codes. const data = contractInstance .deploy({ data: contractBytecode, arguments: args }) .encodeABI(); const to = null; const rawTx = await this.getRawTx( to, value, data, pendingTxCount, accountAddress, gasLimit, ); however, we got these error Error: Transaction has been reverted by the EVM:↵{↵ "blockHash": "0x6bc7f94edb8ff43cb40ac439d134d4c37700f5c4db51fb10298ac92778215589",↵ "blockNumber": 34599,↵ "contractAddress": "0x42699A7612A82f1d9C36148af9C77354759b210b",↵ "cumulativeGasUsed": 1996831,↵ "from": "0xfe3b557e8fb62b89f4916b721be55ceb828dbd73",↵ "gasUsed": 1996831,↵ "logs": [],↵ "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",↵ "status": false,↵ "to": null,↵ "transactionHash": "0xf6ebec42c12a9745e63eba2f1ab561d947ab4f74260129ecc0ef40bc7a868990",↵ "transactionIndex": 0↵}" could any one help us? actually sending transaction with above codes works in ethreum public and test net.

bradyjoestar (Tue, 19 Nov 2019 04:05:23 GMT):
Has joined the channel.

bradyjoestar (Tue, 19 Nov 2019 04:05:24 GMT):
hi, could I connect to ethereum mainnet by besu and send a private transaction? Thanks

lucassaldanha (Tue, 19 Nov 2019 04:20:46 GMT):
Hi, the possibility of using privacy with a Mainnet node is under development.

lucassaldanha (Tue, 19 Nov 2019 04:20:46 GMT):
Hi, using privacy with a Mainnet node feature is under development.

lucassaldanha (Tue, 19 Nov 2019 04:20:46 GMT):
Hi, using privacy with a Mainnet node is under development.

bradyjoestar (Tue, 19 Nov 2019 04:41:07 GMT):
thanks a lot!

AkihiroTanaka (Tue, 19 Nov 2019 04:59:52 GMT):
Hi I'm trying to deploy ERC1400 contract below to besu by truffle, but I can not because of the error, "The contract code couldn't be stored, please check your gas limit..". (I can deoly it to ganache) https://github.com/ConsenSys/ERC1400/blob/master/contracts/token/ERC20/ERC1400ERC20.sol I can deploy ERC20 contract by Openzeppelin to besu. Are there any limitation of contract size to deploy?

AkihiroTanaka (Tue, 19 Nov 2019 04:59:52 GMT):
I did it but the same problem is still occurred.

AkihiroTanaka (Tue, 19 Nov 2019 04:59:52 GMT):
Hi I'm trying to deploy ERC1400 contract below by truffle, but I can't not because of the error, "The contract code couldn't be stored, please check your gas limit..". https://github.com/ConsenSys/ERC1400/blob/master/contracts/token/ERC20/ERC1400ERC20.sol I can deploy ERC20 contract by Openzeppelin. Are there any limitation of contract to deploy?

madelinemurray (Tue, 19 Nov 2019 07:57:58 GMT):
There's a `contractSizeLimit` item in the genesis file - https://besu.hyperledger.org/en/stable/Reference/Config-Items/#configuration-items

syuta-sugawara (Tue, 19 Nov 2019 08:24:59 GMT):
i wrote this. is this correct? "config" : { "chainId" : 2018, "constantinoplefixblock" : 0, "ibft2" : { "blockperiodseconds" : 2, "epochlength" : 30000, "requesttimeoutseconds" : 10 }, "contractSizeLimit" : 2147483647 },

faraggi (Tue, 19 Nov 2019 08:46:43 GMT):
@syuta-sugawara yes, that would signal the maximum contract size limit

faraggi (Tue, 19 Nov 2019 08:48:59 GMT):
This might help to get more information: `--revert-reason-enabled` https://besu.hyperledger.org/en/stable/HowTo/Send-Transactions/Revert-Reason/

AkihiroTanaka (Tue, 19 Nov 2019 09:36:12 GMT):
I did it but the same problem is still occurred.

AkihiroTanaka (Tue, 19 Nov 2019 09:42:43 GMT):
@madelinemurray @faraggi I did it but the same problem is still occurred. Do you have any idea for this?

madelinemurray (Tue, 19 Nov 2019 09:53:02 GMT):
Are you using a free gas network? https://besu.hyperledger.org/en/stable/HowTo/Configure/FreeGas/

syuta-sugawara (Tue, 19 Nov 2019 12:39:11 GMT):
yes

AkihiroTanaka (Tue, 19 Nov 2019 12:59:05 GMT):
yes!!

AkihiroTanaka (Tue, 19 Nov 2019 12:59:24 GMT):
@madelinemurray yes!!

shemnon (Tue, 19 Nov 2019 15:16:31 GMT):
That particular error message is coming from truffle, not besu - https://github.com/trufflesuite/truffle/issues/825

cam-parra (Tue, 19 Nov 2019 16:59:36 GMT):
Hi all! thanks again for helping me out. Is there a best way to leave a node running in the background?

cam-parra (Tue, 19 Nov 2019 16:59:36 GMT):
Hi all! thanks again for helping me out. Is there a best practice to leave a node running in the background?

cam-parra (Tue, 19 Nov 2019 23:03:34 GMT):
Also if a validator fails to connect to the enode does the validator try to connect to a default enode?

eum602 (Tue, 19 Nov 2019 23:50:48 GMT):
Related to this problem I have found orion runs out of memory:

eum602 (Tue, 19 Nov 2019 23:50:52 GMT):

Clipboard - November 19, 2019 6:50 PM

eum602 (Tue, 19 Nov 2019 23:52:22 GMT):
initially I had 2 cpu and 4 GB RAM ; I increased to 4 CPU and 8GB RAM but the error persist.

eum602 (Tue, 19 Nov 2019 23:55:03 GMT):
With 4GB of RAM communication with other orion nodes wascontinually interruped, by increasing the ram to 8GB the communication is sustained but errors about RUN OUT OF MEMORY persist periodically.

eum602 (Tue, 19 Nov 2019 23:56:05 GMT):
Also I see this message:

eum602 (Tue, 19 Nov 2019 23:56:12 GMT):

Clipboard - November 19, 2019 6:56 PM

lucassaldanha (Tue, 19 Nov 2019 23:58:31 GMT):
Have you increased the available memory to the JVM? Or have you just increased the memory in the instance?

eum602 (Tue, 19 Nov 2019 23:58:52 GMT):
the memory in the VM isntance

eum602 (Tue, 19 Nov 2019 23:59:15 GMT):
the memory in the VM isntance

lucassaldanha (Wed, 20 Nov 2019 00:02:06 GMT):
Interesting, I'm currently running a test network using AWS t3.large instances, each with 8GB of RAM. I'm running in the same instance Besu and Orion and haven't had any memory issues. I'll try to get someone to grab more details with you to sort it out.

lucassaldanha (Wed, 20 Nov 2019 00:12:50 GMT):
@NicolasMassart Would you be available to help?

AkihiroTanaka (Wed, 20 Nov 2019 05:12:57 GMT):
I tried to deploy same contract using sendSignedTransaction of web3.js like below link, but I coudn't. https://besu.hyperledger.org/en/stable/HowTo/Send-Transactions/Transactions/

AkihiroTanaka (Wed, 20 Nov 2019 05:12:57 GMT):
I tried to deploy same contract using "sendSignedTransaction" of web3.js like below link, but I coudn't. https://besu.hyperledger.org/en/stable/HowTo/Send-Transactions/Transactions/

AkihiroTanaka (Wed, 20 Nov 2019 05:13:15 GMT):
I got the error:

AkihiroTanaka (Wed, 20 Nov 2019 05:14:02 GMT):
I got the error: Error: Transaction has been reverted by the EVM:↵{↵ "blockHash": "0x6bc7f94edb8ff43cb40ac439d134d4c37700f5c4db51fb10298ac92778215589",↵ "blockNumber": 34599,↵ "contractAddress": "0x42699A7612A82f1d9C36148af9C77354759b210b",↵ "cumulativeGasUsed": 1996831,↵ "from": "0xfe3b557e8fb62b89f4916b721be55ceb828dbd73",↵ "gasUsed": 1996831,↵ "logs": [],↵ "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",↵ "status": false,↵ "to": null,↵ "transactionHash": "0xf6ebec42c12a9745e63eba2f1ab561d947ab4f74260129ecc0ef40bc7a868990",↵ "transactionIndex": 0↵}"

AkihiroTanaka (Wed, 20 Nov 2019 05:16:17 GMT):
Does anybody can deploy ERC1400 by ConsenSys to besu?

AkihiroTanaka (Wed, 20 Nov 2019 05:16:17 GMT):
@faraggi This is my truffle config setting. besu: { provider: new HDWalletProvider(process.env.MNEMONIC, process.env.RPC_ENDPOINT), network_id: '*', gasPrice:0, gas: '0x1ffffffffffffe' },

syuta-sugawara (Wed, 20 Nov 2019 05:50:36 GMT):
hello. sorry, this is the second time for me to ask this question. I used "ethereumjs-tx": "^2.1.1" and "web3": "^1.2.1" for sending send a signed transaction to besu, however those don't work, so i changed those versions like this. "ethereumjs-tx": "^1.3.7", "web3": "^1.0.0-beta.55" these worked. I use besu version v1.3.2. I'd like to use newer versions. how can I do that?

syuta-sugawara (Wed, 20 Nov 2019 08:25:52 GMT):
@faraggi do you know how we can solve this problem?

syuta-sugawara (Wed, 20 Nov 2019 08:26:53 GMT):
@faraggi i work with him @AkihiroTanaka

faraggi (Wed, 20 Nov 2019 08:41:10 GMT):
Have you tried the truffle configs @shemnon linked to? https://github.com/trufflesuite/truffle/issues/825#issuecomment-409036963

faraggi (Wed, 20 Nov 2019 08:44:32 GMT):
`"gasUsed": 1996831` Might be the problem.

syuta-sugawara (Wed, 20 Nov 2019 08:53:25 GMT):
thank you for your reply. we are using gas free private network. do you think that is related to our problem?

syuta-sugawara (Wed, 20 Nov 2019 08:53:25 GMT):
@faraggi thank you for your reply. we are using gas free private network. do you think that is related to our problem?

faraggi (Wed, 20 Nov 2019 08:55:03 GMT):
Can you show what config you're using to run your network?

AkihiroTanaka (Wed, 20 Nov 2019 08:55:50 GMT):
@faraggi This is my truffle config setting. besu: { provider: new HDWalletProvider(process.env.MNEMONIC, process.env.RPC_ENDPOINT), network_id: '*', gasPrice:0, gas: '0x1ffffffffffffe' },

syuta-sugawara (Wed, 20 Nov 2019 09:42:32 GMT):
hi what is the maximum contract size in genesis file? this one? "contractSizeLimit": 2147483647

syuta-sugawara (Wed, 20 Nov 2019 09:43:16 GMT):
@faraggi also

syuta-sugawara (Wed, 20 Nov 2019 09:43:16 GMT):
@faraggi also this is the genesis.json { "config" : { "chainId" : 2018, "constantinoplefixblock" : 0, "ibft2" : { "blockperiodseconds" : 2, "epochlength" : 30000, "requesttimeoutseconds" : 10 }, "contractSizeLimit" : 2147483647 }, "nonce" : "0x0", "timestamp" : "0x58ee40ba", "gasLimit" : "0x1fffffffffffff", "difficulty" : "0x1", "mixHash" : "0x63746963616c2062797a616e74696e65206661756c7420746f6c6572616e6365", "coinbase" : "0x0000000000000000000000000000000000000000", "alloc" : { "fe3b557e8fb62b89f4916b721be55ceb828dbd73" : { "privateKey" : "praivate key", "comment" : "private key and this comment are ignored. In a real chain, the private key should NOT be stored", "balance" : "0xad78ebc5ac6200000" }, "627306090abaB3A6e1400e9345bC60c78a8BEf57" : { "privateKey" : "praivate key", "comment" : "private key and this comment are ignored. In a real chain, the private key should NOT be stored", "balance" : "90000000000000000000000" } }, "extraData" : "0xf869a00000000000000000000000000000000000000000000000000000000000000000f83f941fd210803d9fa01634f1d7e1674b4d7fbff1d677949355dbfc02f162071d03a5bc15d172126577442c94e61cb89f8e601c4ada161f73c6e8531f056df69d808400000000c0" }

NicolasMassart (Wed, 20 Nov 2019 13:45:08 GMT):
Hi, it may not be related but there's at least one issue in your truffle config because the provider should be a closure instead of a new instance. See https://besu.hyperledger.org/en/stable/Tutorials/Quickstarts/Private-Network-Quickstart/#truffle-pet-shop-tutorial As shown in the sample, your provider should be `provider: () => new PrivateKeyProvider(privateKey, ""),` in order to prevent connection limits. The closure creates a new connection each time. It's an issue especially when running tests in truffle as they create a lot of connections to run parallel tests, but it may have some consequences here too. Give it at least a try and even if it does not solve this specific issue, know that it's the preferred way to instantiate the provider anyway.

NicolasMassart (Wed, 20 Nov 2019 13:45:08 GMT):
Hi, it may not be related but there's at least one issue in your truffle config because the provider should be a function instead of a new instance. See https://besu.hyperledger.org/en/stable/Tutorials/Quickstarts/Private-Network-Quickstart/#truffle-pet-shop-tutorial As shown in the sample, your provider should be `provider: () => new PrivateKeyProvider(privateKey, ""),` in order to prevent connection limits. The function reference here creates a new connection each time. It's an issue especially when running tests in truffle as they create a lot of connections to run parallel tests, but it may have some consequences here too. Give it at least a try and even if it does not solve this specific issue, know that it's the preferred way to instantiate the provider anyway.

RealDeanZhao (Wed, 20 Nov 2019 14:42:40 GMT):
```curl -X POST --data '{"jsonrpc":"2.0","method":"ibft_proposeValidatorVote","params":["7c8753c2bf4bea06f95cddbed1946c9ba212c3a9aae700c89a24b4588dabf920d9b2d505b22df1665a92bde8c524836b34b0878bf3d69a3e177d74025a9b7c4c",true], "id":1}' http://127.0.0.1:7545 { "jsonrpc" : "2.0", "id" : 1, "error" : { "code" : -32602, "message" : "Invalid params" } }%```

RealDeanZhao (Wed, 20 Nov 2019 14:43:32 GMT):
Could anyone help me solve the above error?

RealDeanZhao (Wed, 20 Nov 2019 14:45:47 GMT):
```{ "config": { "chainId": 2018, "constantinoplefixblock": 0, "ibft2": { "blockperiodseconds": 5, "epochlength": 30000, "requesttimeoutseconds": 10 } }, "nonce": "0x0", "timestamp": "0x58ee40ba", "extraData": "0xf83ea00000000000000000000000000000000000000000000000000000000000000000d5949811ebc35d7b06b3fa8dc5809a1f9c52751e1deb808400000000c0", "gasLimit": "0x1fffffffffffff", "contractSizeLimit": 2147483647, "difficulty": "0x1", "mixHash": "0x63746963616c2062797a616e74696e65206661756c7420746f6c6572616e6365", "coinbase": "0xF21028A2aDE5727AcA48a9973C5C0008a89D2153", "alloc": { "9811ebc35d7b06b3fa8dc5809a1f9c52751e1deb": { "balance": "0xad78ebc5ac6200000" } } }```

RealDeanZhao (Wed, 20 Nov 2019 14:58:41 GMT):
how to get the node address of a validator

shemnon (Wed, 20 Nov 2019 15:29:29 GMT):
The first parameter "7c87...7c4c" is not an address, it looks like a public or private key. Addresses are 20 bytes or 40 hex numbers long.

RealDeanZhao (Wed, 20 Nov 2019 15:30:53 GMT):
Thanks, i tried to use /opt/besu/bin/besu public-key export-address to get the correct address just now.

shemnon (Wed, 20 Nov 2019 15:30:58 GMT):
On the node itself this script should work - https://besu.hyperledger.org/en/stable/Tutorials/Private-Network/Create-Private-Clique-Network/#2-get-address-for-node-1

RealDeanZhao (Wed, 20 Nov 2019 15:31:29 GMT):
Why not make this as a default step when starting a besu node? The terminal only print the enode on the screen.

shemnon (Wed, 20 Nov 2019 15:31:56 GMT):
Good feedback. I'll open a Jira Issue to add it.

shemnon (Wed, 20 Nov 2019 15:33:57 GMT):
BESU-124

RealDeanZhao (Wed, 20 Nov 2019 15:46:38 GMT):
thanks a lot

RealDeanZhao (Wed, 20 Nov 2019 16:16:36 GMT):
I send a proposeValidatorVote to the first node. how can i approve the propose?

RealDeanZhao (Wed, 20 Nov 2019 16:16:36 GMT):
I send a proposeValidatorVote to the first node(only one node in the network). how can i approve the propose?

RealDeanZhao (Wed, 20 Nov 2019 16:17:00 GMT):
```{ "jsonrpc" : "2.0", "id" : 1, "result" : { "0x208e1fdea2e06187227f1acd200e19c6200a35dd" : true } }%```this is the pending proposal

cam-parra (Wed, 20 Nov 2019 17:18:04 GMT):
Has anyone setup a network on EC2 and does anyone have documentation they can share on that process? Our team is currently stuck on trying to do this. We are not to sure how to start and leave a node running (if there is a command to do that) and we also have validators defaulting to the default enode address and not the one specified

shemnon (Wed, 20 Nov 2019 18:02:34 GMT):
`nuhup `

shemnon (Wed, 20 Nov 2019 18:02:34 GMT):
`nohup `

cam-parra (Wed, 20 Nov 2019 18:46:42 GMT):
Ooops totally forgot about nohup. I also get ```2019-11-20 18:44:19.581+00:00 | main | INFO | DefaultP2PNetwork | Enode URL enode://1b01f66ef6893c1592f98009bcf22114dd152fff6772cf21e39320daaddc72b3071808e7fb504d9b0d32eb2c1f36f6973f29f5df8909b065040e3b9142794458@127.0.0.1:30303``` when I start the enode. Is this normal output?

shemnon (Wed, 20 Nov 2019 19:00:42 GMT):
IS this in a docker? is your 30303 port mapped?

shemnon (Wed, 20 Nov 2019 19:03:05 GMT):
If you are in docker I would recommend `--p2p-host= and `--p2p-interface=127.0.0.1` as CLI parameters to make discovery bi-directional. Right now you will only find host you connect to, there will be no inbound connections.

shemnon (Wed, 20 Nov 2019 19:03:05 GMT):
If you are in docker I would recommend `--p2p-host=` and `--p2p-interface=127.0.0.1` as CLI parameters to make discovery bi-directional. Right now you will only find host you connect to, there will be no inbound connections.

cam-parra (Wed, 20 Nov 2019 19:04:25 GMT):
Would you do the same if this is an ec2 instance running ubuntu 18.04?

shemnon (Wed, 20 Nov 2019 19:04:43 GMT):
no, I'd jsut do the --p2p-host option

shemnon (Wed, 20 Nov 2019 19:04:43 GMT):
no, I'd jsut do the `--p2p-host` option

shemnon (Wed, 20 Nov 2019 19:19:35 GMT):
`--p2p-host=0.0.0.0` will take whatever the external address is.

cam-parra (Wed, 20 Nov 2019 20:36:59 GMT):
great! That changed the output! So to connect the other validators would I specify the enodes ip?

cam-parra (Wed, 20 Nov 2019 20:37:18 GMT):
replacing the 0.0.0.0 with the ip ?

shemnon (Wed, 20 Nov 2019 21:52:12 GMT):
If you want to be explicit about your IP replace 0.0.0.0 with the IP. If you want to advertise what the networking stack advertisis as your external address, use 0.0.0.0 But for AWS IIRC you will need the actual external address. I think we got some magic scripts to extract it in our setup from AWS calls.

cam-parra (Wed, 20 Nov 2019 23:27:32 GMT):
If you could share those scripts that be great!

joshuafernandes (Wed, 20 Nov 2019 23:40:49 GMT):
Hello @cam-parra We run an ansible script that sets things up for us

joshuafernandes (Wed, 20 Nov 2019 23:40:49 GMT):
Hello @cam-parra We run an ansible galaxy role that sets things up for us

joshuafernandes (Wed, 20 Nov 2019 23:41:31 GMT):
https://galaxy.ansible.com/pegasyseng/hyperledger_besu

joshuafernandes (Wed, 20 Nov 2019 23:42:06 GMT):
Absolutely, agnostic of linux distro - only requirement is systemd

joshuafernandes (Wed, 20 Nov 2019 23:42:06 GMT):
Its agnostic of linux distro - only requirement is systemd

joshuafernandes (Wed, 20 Nov 2019 23:43:01 GMT):
Our process is install jdk11 or greater, then provisioning/updating etc is done via this role

cam-parra (Wed, 20 Nov 2019 23:46:13 GMT):
Nice! I am not too familiar with ansible so I will have to look into this.

joshuafernandes (Wed, 20 Nov 2019 23:46:49 GMT):
Give us a yell if you need a hand, happy to help

joshuafernandes (Wed, 20 Nov 2019 23:48:25 GMT):
Give us a yell if you need a hand, happy to help

cam-parra (Wed, 20 Nov 2019 23:48:46 GMT):
Thanks! All of you have been super helpful :)

RealDeanZhao (Thu, 21 Nov 2019 02:00:54 GMT):
Anyone help me on this?

syuta-sugawara (Thu, 21 Nov 2019 02:52:55 GMT):
hi. what is the maximum evmStackSize in genesis.json?

syuta-sugawara (Thu, 21 Nov 2019 02:56:00 GMT):
and i wrote genesis.json. is this correct? { "config" : { "chainId" : 2018, "constantinoplefixblock" : 0, "ibft2" : { "blockperiodseconds" : 2, "epochlength" : 30000, "requesttimeoutseconds" : 10     }, "contractSizeLimit" : 2147483647, "evmStackSize":4096   }, "nonce" : "0x0", "timestamp" : "0x58ee40ba", "gasLimit" : "0x1fffffffffffff", "difficulty" : "0x1", "mixHash" : "0x63746963616c2062797a616e74696e65206661756c7420746f6c6572616e6365", "coinbase" : "0x0000000000000000000000000000000000000000", "alloc" : {   }, "extraData" : "0xf869a00000000000000000000000000000000000000000000000000000000000000000f83f941fd210803d9fa01634f1d7e1674b4d7fbff1d677949355dbfc02f162071d03a5bc15d172126577442c94e61cb89f8e601c4ada161f73c6e8531f056df69d808400000000c0" }

AkihiroTanaka (Thu, 21 Nov 2019 03:00:12 GMT):
@NicolasMassart Thanks for your reply!! I did it but error is still occurred...

RealDeanZhao (Thu, 21 Nov 2019 03:46:57 GMT):
Hi, I have created one node network of ibft2 on a machine using docker. And i want to the second node to the network. I tried to send the ibft_proposeValidatorVote request first and the vote was pending forever. What's the right way to add the second node to the ibft network?

RealDeanZhao (Thu, 21 Nov 2019 03:46:57 GMT):
Hi, I have created one node network of ibft2 on a machine using docker. And i wanted create the second node to the network. I tried to send the ibft_proposeValidatorVote request first and the vote was pending forever. What's the right way to add the second node to the ibft network?

RealDeanZhao (Thu, 21 Nov 2019 03:46:57 GMT):
Hi, I have created one node network of ibft2 on a machine using docker. And i wanted to add the second node to the network. I tried to send the ibft_proposeValidatorVote request first and the vote was pending forever. What's the right way to add the second node to the ibft network?

RealDeanZhao (Thu, 21 Nov 2019 03:46:57 GMT):
Hi, I have created one node network of ibft2 on a machine using docker. And i wanted to add the second node to the network. I tried to send the ibft_proposeValidatorVote request first and the vote was pending forever. What's the right way to add the second node to the ibft network?

RealDeanZhao (Thu, 21 Nov 2019 03:46:57 GMT):
Hi, I have created one node network of ibft2 on a machine using docker. And i wanted to add the second node to the network. I tried to send the ibft_proposeValidatorVote request first and the vote was pending forever. What's the right way to add the second node to the ibft network? The extra data was generated by the first node address.

trent.mohay (Thu, 21 Nov 2019 05:36:33 GMT):
Hi @RealDeanZhao, When dealing with IBFT2, there 2 ways to be considered "in the network". The first, is standard Ethereum peering - i.e. are all the nodes in the network communicating using standard Ethereum protocols (i.e. discovering and sharing blocks etc). The second way it needs to be considered is "now that my node is part of the network, how do I make it a validator (i.e. one of the authorised mining nodes)".

shemnon (Thu, 21 Nov 2019 05:38:29 GMT):
A java int, 2^31-1, so 2 Billion. In practice there are other rules to keep this from mattering, like the "all but 1/64th" rule on CALL operations.

trent.mohay (Thu, 21 Nov 2019 05:39:03 GMT):
So there's a few things to work out first: 1. What validators are specified in your Genesis file (encoded in the extra data) 2. Are your nodes connected at a network level? 3. Are blocks being mined (can be determined using the Json RPC documented here https://besu.hyperledger.org/en/stable/Reference/API-Methods/#eth_blocknumber)

trent.mohay (Thu, 21 Nov 2019 05:40:40 GMT):
So there's a few things to work out first: 1. What validators are specified in your Genesis file (encoded in the extra data) 2. Are your nodes connected at a network level? 3. Are blocks being mined (can be determined using the Json RPC documented here https://besu.hyperledger.org/en/stable/Reference/API-Methods/#eth_blocknumber)

shemnon (Thu, 21 Nov 2019 05:42:18 GMT):
Seems accurate, it's hard to tell without runnning it. However you have no ether allocations so your nodes will have to run with `--min-gas-price=0` and you won't be able to use gas to limit transactions. I would add some so you at least have the option of turning it on later.

RealDeanZhao (Thu, 21 Nov 2019 05:55:25 GMT):
2019-11-21 05:55:15.051+00:00 | pool-10-thread-1 | INFO | IbftRound | Importing block to chain. round=ConsensusRoundIdentifier{Sequence=4, Round=0}, hash=0x849d56129726cfdc6b1cab6a822498e27557e577b3e5cc11623bd0ac648d25f3

RealDeanZhao (Thu, 21 Nov 2019 05:55:32 GMT):
I think the first node is mining

trent.mohay (Thu, 21 Nov 2019 05:56:18 GMT):
I think you're right, that looks really positive - so I take it you've created a Genesis file with just a single validator in the ExtraData?

RealDeanZhao (Thu, 21 Nov 2019 05:56:45 GMT):
yes, single validator

RealDeanZhao (Thu, 21 Nov 2019 05:56:55 GMT):
```docker run -p 7555:8545 \ -p 7556:8545 \ -p 30313:30313 \ -v $PWD/lib/besu:/var/lib/besu \ -v $PWD/besu-data:/besu-data \ -v $PWD/../genesis.json:/genesis.json \ hyperledger/besu:1.3.4 \ --data-path=/besu-data \ --p2p-host=10.244.200.77 \ --p2p-interface=0.0.0.0 \ --p2p-port=30313 \ --rpc-ws-enabled \ --rpc-http-enabled \ --rpc-http-api=ETH,NET,IBFT \ --host-whitelist="*" \ --rpc-http-cors-origins="all" \ --genesis-file=/genesis.json \ --miner-coinbase=0x0000000000000000000000000000000000000000 \ --miner-enabled \ --min-gas-price=0 \ --bootnodes=enode://8ea51c5159b8d187c65f632e25d3961826cafd84b9544c673f09efd9bfef06965378bee8d0ceaf23f831c496a515dd93ea4f655550a69650e57412c6ffd01020@10.244.200.77:30303 ```

trent.mohay (Thu, 21 Nov 2019 05:57:04 GMT):
next question - can your two nodes communicate with each other? I.e. when you start the second docker container, do you see it discovering and connecting to the first node?

RealDeanZhao (Thu, 21 Nov 2019 05:57:12 GMT):
I use the command to start a second validator

trent.mohay (Thu, 21 Nov 2019 05:57:27 GMT):
you can confirm this with the admin_peers Json RPC (curl -X POST --data '{"jsonrpc":"2.0","method":"admin_peers","params":[],"id":1}' http://127.0.0.1:8545)

RealDeanZhao (Thu, 21 Nov 2019 05:59:04 GMT):
curl -X POST --data '{"jsonrpc":"2.0","method":"ibft_getPendingVotes","params":[], "id":1}' http://10.244.200.77:7545

RealDeanZhao (Thu, 21 Nov 2019 05:59:04 GMT):
curl -X POST --data '{"jsonrpc":"2.0","method":"admin_peers","params":[], "id":1}' http://10.244.200.77:7545

RealDeanZhao (Thu, 21 Nov 2019 05:59:10 GMT):
{ "jsonrpc" : "2.0", "id" : 1, "result" : { } }#

trent.mohay (Thu, 21 Nov 2019 06:00:59 GMT):
just to confirm Is "node-1" on http://10.244.200.77:7545?

trent.mohay (Thu, 21 Nov 2019 06:02:02 GMT):
ok - so that _looks_ like your two nodes are not able to "find" each other over the network

RealDeanZhao (Thu, 21 Nov 2019 06:02:51 GMT):
yes, it is. I use the docker command to start the first node exposing 7545:8645

RealDeanZhao (Thu, 21 Nov 2019 06:02:51 GMT):
yes, it is. I use the docker command to start the first node exposing 7545:8545

RealDeanZhao (Thu, 21 Nov 2019 06:03:20 GMT):
the log from the second node: FullSyncTargetManager | No sync target, wait for peers.

RealDeanZhao (Thu, 21 Nov 2019 06:05:39 GMT):
These two nodes are running on my local machine. I can successfully start a ibft network use besu-quick-start repo. But i cannot start it manually one by one.

trent.mohay (Thu, 21 Nov 2019 06:05:41 GMT):
Right - so we just need to make sure your second docker container has the right bootnode enode to find the first container

RealDeanZhao (Thu, 21 Nov 2019 06:05:59 GMT):
--bootnodes=enode://8ea51c5159b8d187c65f632e25d3961826cafd84b9544c673f09efd9bfef06965378bee8d0ceaf23f831c496a515dd93ea4f655550a69650e57412c6ffd01020@10.244.200.77:30303

trent.mohay (Thu, 21 Nov 2019 06:07:02 GMT):
Is the config above your first or second node?

RealDeanZhao (Thu, 21 Nov 2019 06:07:27 GMT):
the second

trent.mohay (Thu, 21 Nov 2019 06:08:30 GMT):
unfortunately, Docker networking is _not_ my strength - let me see if we've got some docker people around :)

RealDeanZhao (Thu, 21 Nov 2019 06:08:45 GMT):
second node docker command```#/bin/bash docker run -p 7555:8545 \ -p 7556:8545 \ -p 30313:30313 \ -v $PWD/lib/besu:/var/lib/besu \ -v $PWD/besu-data:/besu-data \ -v $PWD/../genesis.json:/genesis.json \ hyperledger/besu:1.3.4 \ --data-path=/besu-data \ --p2p-host=10.244.200.77 \ --p2p-interface=0.0.0.0 \ --p2p-port=30313 \ --rpc-ws-enabled \ --rpc-http-enabled \ --rpc-http-api=ETH,NET,IBFT \ --host-whitelist="*" \ --rpc-http-cors-origins="all" \ --genesis-file=/genesis.json \ --miner-coinbase=0x0000000000000000000000000000000000000000 \ --miner-enabled \ --min-gas-price=0 \ --bootnodes=enode://8ea51c5159b8d187c65f632e25d3961826cafd84b9544c673f09efd9bfef06965378bee8d0ceaf23f831c496a515dd93ea4f655550a69650e57412c6ffd01020@10.244.200.77:30303 ```

RealDeanZhao (Thu, 21 Nov 2019 06:09:01 GMT):
first node docker command ```docker run -p 7545:8545 \ -p 7546:8545 \ -p 30303:30303 \ -v $PWD/lib/besu:/var/lib/besu \ -v $PWD/besu-data:/besu-data \ -v $PWD/../genesis.json:/genesis.json \ hyperledger/besu:1.3.4 \ --data-path=/besu-data \ --p2p-host=10.244.200.77 \ --p2p-interface=0.0.0.0 \ --p2p-port=30303 \ --rpc-ws-enabled \ --rpc-http-enabled \ --rpc-http-api=ETH,NET,IBFT,ADMIN \ --host-whitelist="*" \ --rpc-http-cors-origins="all" \ --genesis-file=/genesis.json \ --miner-coinbase=0x0000000000000000000000000000000000000000 \ --miner-enabled \ --min-gas-price=0 ```

trent.mohay (Thu, 21 Nov 2019 06:09:09 GMT):
fantastic - thanks for that

RealDeanZhao (Thu, 21 Nov 2019 06:09:52 GMT):
np. hope this will be solved soon.

trent.mohay (Thu, 21 Nov 2019 06:16:49 GMT):
what platform are you running on?

trent.mohay (Thu, 21 Nov 2019 06:16:49 GMT):
what operating system are you running on?

RealDeanZhao (Thu, 21 Nov 2019 06:17:06 GMT):
macos

trent.mohay (Thu, 21 Nov 2019 06:17:26 GMT):
:thumbsup:

trent.mohay (Thu, 21 Nov 2019 06:21:09 GMT):
and confirming 10.244.200.77 is the IP of the host?

trent.mohay (Thu, 21 Nov 2019 06:21:26 GMT):
(i.e. its not on a docker network, it is literally the IP address of your mac)

RealDeanZhao (Thu, 21 Nov 2019 06:22:40 GMT):
yes, it's the ip of my mac

trent.mohay (Thu, 21 Nov 2019 06:24:19 GMT):
My suspicion is that may not work - you may be required to construct a "docker network" for the two containers to be able to communicate...

RealDeanZhao (Thu, 21 Nov 2019 06:27:23 GMT):
it's a lan ip of my mac. I will try to ping the ip inside the container.

robertosaltini (Thu, 21 Nov 2019 06:37:52 GMT):
Has joined the channel.

joshuafernandes (Thu, 21 Nov 2019 06:38:28 GMT):
Hi @RealDeanZhao you'd need to bind this to your host network

joshuafernandes (Thu, 21 Nov 2019 06:38:53 GMT):
so stop the first node and add `--net=host` as an option to every container

joshuafernandes (Thu, 21 Nov 2019 06:39:17 GMT):
that will bind them to your host interface and you can use 10.244.200.77

joshuafernandes (Thu, 21 Nov 2019 06:42:16 GMT):
start node1 like so: `docker run -p 7555:8545 -p 7556:8545 -p 30313:30313 --net=host -v $PWD/lib/besu:/var/lib/besu -v $PWD/besu-data:/besu-data -v $PWD/../genesis.json:/genesis.json hyperledger:besu.........`

joshuafernandes (Thu, 21 Nov 2019 06:42:16 GMT):
start node1 like so: `docker run -p 7555:8545 -p 7556:8546 -p 30313:30313 --net=host -v $PWD/lib/besu:/var/lib/besu -v $PWD/besu-data:/besu-data -v $PWD/../genesis.json:/genesis.json hyperledger:besu.........`

joshuafernandes (Thu, 21 Nov 2019 06:42:52 GMT):
the easier alternative to this is using a docker-compose file and starting one up at a time where you can see whats happening

RealDeanZhao (Thu, 21 Nov 2019 06:47:06 GMT):
I used docker-compose to start the network successfully. Now I want to use docker to start nodes on different machines.

joshuafernandes (Thu, 21 Nov 2019 06:47:45 GMT):
could you explain different machines please?

joshuafernandes (Thu, 21 Nov 2019 06:48:27 GMT):
you have n machines and you're trying to start besu on each to form the network?

RealDeanZhao (Thu, 21 Nov 2019 06:48:54 GMT):
yes, that's what i mean

RealDeanZhao (Thu, 21 Nov 2019 06:49:17 GMT):
i don't want to install besu binary on every machine

joshuafernandes (Thu, 21 Nov 2019 06:49:44 GMT):
right, so besu via docker on each machine?

joshuafernandes (Thu, 21 Nov 2019 06:50:22 GMT):
if so this makes things a lot simpler

RealDeanZhao (Thu, 21 Nov 2019 06:50:33 GMT):
I haven't tried yet. I tried to start the besu docker on my local machine with exposing different port for different node.

joshuafernandes (Thu, 21 Nov 2019 06:51:07 GMT):
ok so we have 2 setups to examine:

joshuafernandes (Thu, 21 Nov 2019 06:51:30 GMT):
1. the use case of docker on local machine exposing different ports

joshuafernandes (Thu, 21 Nov 2019 06:53:01 GMT):
so this setup requires you to bind each container to the host network interface. When you fire up each container add `--net=host` and the appropriate port maps and that should work.

joshuafernandes (Thu, 21 Nov 2019 06:53:29 GMT):
An alternative is to setup a docker network and set each container to use that network.

joshuafernandes (Thu, 21 Nov 2019 06:53:56 GMT):
2. The distributed setup with n machines is simpler

joshuafernandes (Thu, 21 Nov 2019 06:54:32 GMT):
But if you use docker you will have to bind to the host network otherwise there wont be any comms across machines.

joshuafernandes (Thu, 21 Nov 2019 06:54:46 GMT):
So start each container up like so:

joshuafernandes (Thu, 21 Nov 2019 06:55:46 GMT):
`docker run -p 8545:8545 -p 8546:8546 -p 30303:30303 --net=host -v $PWD/lib/besu:/var/lib/besu -v $PWD/besu-data:/besu-data -v $PWD/../genesis.json:/genesis.json hyperledger:besu .... `

joshuafernandes (Thu, 21 Nov 2019 06:55:46 GMT):
```docker run -p 8545:8545 -p 8546:8546 -p 30303:30303 --net=host -v $PWD/lib/besu:/var/lib/besu -v $PWD/besu-data:/besu-data -v $PWD/../genesis.json:/genesis.json hyperledger:besu .... ```

joshuafernandes (Thu, 21 Nov 2019 06:58:30 GMT):
and set the ` --p2p-port=30303` for all of the containers

joshuafernandes (Thu, 21 Nov 2019 06:59:44 GMT):
Also I think there is a typo in the command to start containers up port `7556 should bind to 8546` I think?

joshuafernandes (Thu, 21 Nov 2019 07:00:51 GMT):
Does that sound about right for what you're attempting to do?

joshuafernandes (Thu, 21 Nov 2019 07:01:07 GMT):
Also I think there is a typo in the command to start containers up port `7556 should bind to 8546` I think?

joshuafernandes (Thu, 21 Nov 2019 07:01:07 GMT):
Does that sound like I;ve understood what you're doing?

RealDeanZhao (Thu, 21 Nov 2019 07:02:03 GMT):
first node```docker run \ --net=host \ -v $PWD/lib/besu:/var/lib/besu \ -v $PWD/besu-data:/besu-data \ -v $PWD/../genesis.json:/genesis.json \ hyperledger/besu:1.3.4 \ --data-path=/besu-data \ --p2p-host=10.244.200.77 \ --p2p-interface=0.0.0.0 \ --p2p-port=30303 \ --rpc-http-port=7545 \ --rpc-ws-port=7546 \ --rpc-ws-enabled \ --rpc-http-enabled \ --rpc-http-api=ETH,NET,IBFT,ADMIN \ --host-whitelist="*" \ --rpc-http-cors-origins="all" \ --genesis-file=/genesis.json \ --miner-coinbase=0x0000000000000000000000000000000000000000 \ --miner-enabled \ --min-gas-price=0 ```

RealDeanZhao (Thu, 21 Nov 2019 07:02:24 GMT):
second node ```#/bin/bash docker run \ --net=host \ -v $PWD/lib/besu:/var/lib/bsesu \ -v $PWD/besu-data:/besu-data \ -v $PWD/../genesis.json:/genesis.json \ hyperledger/besu:1.3.4 \ --data-path=/besu-data \ --p2p-host=10.244.200.77 \ --p2p-interface=0.0.0.0 \ --p2p-port=30313 \ --rpc-http-port=7555 \ --rpc-ws-port=7556 \ --rpc-ws-enabled \ --rpc-http-enabled \ --rpc-http-api=ETH,NET,IBFT \ --host-whitelist="*" \ --rpc-http-cors-origins="all" \ --genesis-file=/genesis.json \ --miner-coinbase=0x0000000000000000000000000000000000000000 \ --miner-enabled \ --min-gas-price=0 \ --bootnodes=enode://8ea51c5159b8d187c65f632e25d3961826cafd84b9544c673f09efd9bfef06965378bee8d0ceaf23f831c496a515dd93ea4f655550a69650e57412c6ffd01020@10.244.200.77:30303 ```

RealDeanZhao (Thu, 21 Nov 2019 07:02:50 GMT):
It still show no sync target

joshuafernandes (Thu, 21 Nov 2019 07:03:17 GMT):
is this on your single machine?

RealDeanZhao (Thu, 21 Nov 2019 07:03:35 GMT):
yes, it is

joshuafernandes (Thu, 21 Nov 2019 07:04:08 GMT):
alright, lets start one node and confirm you can make rpc calls to it

RealDeanZhao (Thu, 21 Nov 2019 07:08:45 GMT):
when i use --net=host, i cannot make the rpc call

joshuafernandes (Thu, 21 Nov 2019 07:08:47 GMT):
```#/bin/bash docker run \ -p 7555:8545 -p 7556:8546 -p 30313:30303 \ --net=host \ -v $PWD/lib/besu:/var/lib/besu \ -v $PWD/besu-data:/besu-data \ -v $PWD/../genesis.json:/genesis.json \ hyperledger/besu:1.3.4 \ --data-path=/besu-data \ --p2p-host=10.244.200.77 \ --p2p-interface=0.0.0.0 \ --rpc-ws-enabled \ --rpc-http-enabled \ --rpc-http-api=ETH,NET,IBFT \ --host-whitelist="*" \ --rpc-http-cors-origins="all" \ --genesis-file=/genesis.json \ --min-gas-price=0 \ --bootnodes=enode://8ea51c5159b8d187c65f632e25d3961826cafd84b9544c673f09efd9bfef06965378bee8d0ceaf23f831c496a515dd93ea4f655550a69650e57412c6ffd01020@10.244.200.77:30303 ```

joshuafernandes (Thu, 21 Nov 2019 07:09:33 GMT):
when the node fires up can you confirm that the enode is correct? Im not sure where your keys are being stored

joshuafernandes (Thu, 21 Nov 2019 07:12:49 GMT):
and does the http rpc call work? ```curl -X POST --data '{"jsonrpc":"2.0","method":"net_peerCount","params":[],"id":1}' http://10.244.200.77:7555 ```

RealDeanZhao (Thu, 21 Nov 2019 07:13:10 GMT):
no, it not working even from the first node.

RealDeanZhao (Thu, 21 Nov 2019 07:13:19 GMT):
if i remove the --net=host, it will work

joshuafernandes (Thu, 21 Nov 2019 07:13:49 GMT):
ok if you remove the --net=host and start it up what is the response you get

RealDeanZhao (Thu, 21 Nov 2019 07:14:15 GMT):
{ "jsonrpc" : "2.0", "id" : 1, "result" : "0x0" }%

joshuafernandes (Thu, 21 Nov 2019 07:14:37 GMT):
:thumbsup:

joshuafernandes (Thu, 21 Nov 2019 07:14:49 GMT):
so lets do node#2 now with this command

joshuafernandes (Thu, 21 Nov 2019 07:15:34 GMT):
and the logs when it fired up matched the enode for the bootnode?

RealDeanZhao (Thu, 21 Nov 2019 07:15:49 GMT):
{ "jsonrpc" : "2.0", "id" : 1, "result" : "0x0" }%

joshuafernandes (Thu, 21 Nov 2019 07:16:19 GMT):
yup, the container logs when a node starts should display its enode

RealDeanZhao (Thu, 21 Nov 2019 07:16:24 GMT):
```Setting logging level to INFO 2019-11-21 07:15:23.812+00:00 | main | INFO | Besu | Starting Besu version: besu/v1.3.4/linux-x86_64/oracle_openjdk-java-11 2019-11-21 07:15:23.921+00:00 | main | INFO | StaticNodesParser | StaticNodes file /besu-data/static-nodes.json does not exist, no static connections will be created. 2019-11-21 07:15:23.921+00:00 | main | INFO | Besu | Connecting to 0 static nodes. 2019-11-21 07:15:25.073+00:00 | main | INFO | KeyPairUtil | Loaded key 0x1cb670cce617dfb478b898ffed54047701323fea3ec3e3ed617cbc3ff9723fc96ecba1fd29927ad9be5d5abe821245019e72bb4abebc5620f3c8315d799dc35b from /besu-data/key 2019-11-21 07:15:25.173+00:00 | main | INFO | DatabaseMetadata | Lookup database metadata file in data directory: /besu-data 2019-11-21 07:15:25.267+00:00 | main | INFO | RocksDBKeyValueStorageFactory | Existing database detected at /besu-data. Version 1 2019-11-21 07:15:25.825+00:00 | main | INFO | ProtocolScheduleBuilder | Protocol schedule created with milestones: [ConstantinopleFix: 0] 2019-11-21 07:15:26.473+00:00 | main | INFO | Runner | Starting Ethereum main loop ... 2019-11-21 07:15:26.482+00:00 | main | INFO | NetworkRunner | Starting Network. 2019-11-21 07:15:26.637+00:00 | nioEventLoopGroup-2-1 | INFO | RlpxAgent | P2P RLPx agent started and listening on /0.0.0.0:30313. 2019-11-21 07:15:26.639+00:00 | main | INFO | PeerDiscoveryAgent | Starting peer discovery agent on host=0.0.0.0, port=30313 2019-11-21 07:15:26.737+00:00 | vert.x-eventloop-thread-2 | INFO | VertxPeerDiscoveryAgent | Started peer discovery agent successfully, on effective host=0.0.0.0 and port=30313 2019-11-21 07:15:26.739+00:00 | vert.x-eventloop-thread-2 | INFO | PeerDiscoveryAgent | P2P peer discovery agent started and listening on /0.0.0.0:30313 2019-11-21 07:15:26.835+00:00 | main | INFO | DefaultP2PNetwork | Enode URL enode://1cb670cce617dfb478b898ffed54047701323fea3ec3e3ed617cbc3ff9723fc96ecba1fd29927ad9be5d5abe821245019e72bb4abebc5620f3c8315d799dc35b@10.244.200.77:30313```

RealDeanZhao (Thu, 21 Nov 2019 07:16:42 GMT):
this is the log from second node

joshuafernandes (Thu, 21 Nov 2019 07:17:07 GMT):
right what about the first node?

RealDeanZhao (Thu, 21 Nov 2019 07:17:08 GMT):
This is the log from first node```Enode URL enode://8ea51c5159b8d187c65f632e25d3961826cafd84b9544c673f09efd9bfef06965378bee8d0ceaf23f831c496a515dd93ea4f655550a69650e57412c6ffd01020@0.0.0.0:30303```

joshuafernandes (Thu, 21 Nov 2019 07:17:19 GMT):
:thumbsup:

RealDeanZhao (Thu, 21 Nov 2019 07:17:29 GMT):
this is the args pass to besu ``` --bootnodes=enode://8ea51c5159b8d187c65f632e25d3961826cafd84b9544c673f09efd9bfef06965378bee8d0ceaf23f831c496a515dd93ea4f655550a69650e57412c6ffd01020@10.244.200.77:30303 ```

RealDeanZhao (Thu, 21 Nov 2019 07:17:47 GMT):
they match

joshuafernandes (Thu, 21 Nov 2019 07:18:26 GMT):
nice, just what we want

joshuafernandes (Thu, 21 Nov 2019 07:18:28 GMT):
``` docker run \ -p 10555:8545 -p 10556:8546 -p 31313:30303 \ --net=host \ -v $PWD/lib/besu:/var/lib/besu \ -v $PWD/besu-data:/besu-data \ -v $PWD/../genesis.json:/genesis.json \ hyperledger/besu:1.3.4 \ --data-path=/besu-data \ --p2p-host=10.244.200.77 \ --p2p-interface=0.0.0.0 \ --rpc-ws-enabled \ --rpc-http-enabled \ --rpc-http-api=ETH,NET,IBFT \ --host-whitelist="*" \ --rpc-http-cors-origins="all" \ --genesis-file=/genesis.json \ --min-gas-price=0 \ --bootnodes=enode://8ea51c5159b8d187c65f632e25d3961826cafd84b9544c673f09efd9bfef06965378bee8d0ceaf23f831c496a515dd93ea4f655550a69650e57412c6ffd01020@10.244.200.77:30313```

joshuafernandes (Thu, 21 Nov 2019 07:18:49 GMT):
start your second node with that

joshuafernandes (Thu, 21 Nov 2019 07:19:38 GMT):
you may need to check the data paths so node2 has a differnt directory to node1

RealDeanZhao (Thu, 21 Nov 2019 07:21:24 GMT):
No sync target, wait for peers.

RealDeanZhao (Thu, 21 Nov 2019 07:21:38 GMT):
curl: (7) Failed to connect to 10.244.200.77 port 10555: Connection refused

joshuafernandes (Thu, 21 Nov 2019 07:22:51 GMT):
any firewall setup enabled on your mac?

RealDeanZhao (Thu, 21 Nov 2019 07:23:23 GMT):
no, if i remove the --net=host, it works

RealDeanZhao (Thu, 21 Nov 2019 07:23:39 GMT):
But it still cannot sync

RealDeanZhao (Thu, 21 Nov 2019 07:23:40 GMT):
FullSyncTargetManager | No sync target, wait for peers.

joshuafernandes (Thu, 21 Nov 2019 07:23:44 GMT):
sorry, remove that --net=host i copied and pasted from the previous one

joshuafernandes (Thu, 21 Nov 2019 07:23:53 GMT):
ok, what does this return

RealDeanZhao (Thu, 21 Nov 2019 07:24:03 GMT):
{ "jsonrpc" : "2.0", "id" : 1, "result" : "0x0" }%

joshuafernandes (Thu, 21 Nov 2019 07:24:03 GMT):
curl -X POST --data '{"jsonrpc":"2.0","method":"net_peerCount","params":[],"id":1}' http://10.244.200.77:7555

RealDeanZhao (Thu, 21 Nov 2019 07:25:17 GMT):
still this { "jsonrpc" : "2.0", "id" : 1, "result" : "0x0" }%

joshuafernandes (Thu, 21 Nov 2019 07:25:32 GMT):
so no connectivity between the two

RealDeanZhao (Thu, 21 Nov 2019 07:25:51 GMT):
how to see the log of p2p?

joshuafernandes (Thu, 21 Nov 2019 07:25:51 GMT):
i'll see if i can find someone here who has a mac that we can try your setup on

joshuafernandes (Thu, 21 Nov 2019 07:26:18 GMT):
what os version are you on? and docker version?

RealDeanZhao (Thu, 21 Nov 2019 07:26:29 GMT):
i also tried to use another centos machine to connect the first node, it fails

joshuafernandes (Thu, 21 Nov 2019 07:26:55 GMT):
yep, mac does docker networking different to standard linux

RealDeanZhao (Thu, 21 Nov 2019 07:27:08 GMT):
curl -X POST --data '{"jsonrpc":"2.0","method":"ibft_proposeValidatorVote","params":["0xde43abcd451266b715069b452d2ec3c244aac08c",true], "id":1}' http://127.0.0.1:7545

RealDeanZhao (Thu, 21 Nov 2019 07:27:21 GMT):
I tried to send a validator proposal

joshuafernandes (Thu, 21 Nov 2019 07:27:23 GMT):
on linux you'd normally do --net=host and and you'd bind it to the host interface

RealDeanZhao (Thu, 21 Nov 2019 07:27:29 GMT):
the vote keeps pending

joshuafernandes (Thu, 21 Nov 2019 07:27:46 GMT):
yup the network interface is different

RealDeanZhao (Thu, 21 Nov 2019 07:28:10 GMT):
ok, let me try setup with two linux machine

joshuafernandes (Thu, 21 Nov 2019 07:28:15 GMT):
:thumbsup:

joshuafernandes (Thu, 21 Nov 2019 07:28:50 GMT):
i run a linux setup locally and can confirm that `--net=host ` works

RealDeanZhao (Thu, 21 Nov 2019 07:29:15 GMT):
yes, i will also try that

joshuafernandes (Thu, 21 Nov 2019 07:29:17 GMT):
let us know if that doesnt - and i'll see if we have a mac user that can replicate your setup

RealDeanZhao (Thu, 21 Nov 2019 07:34:28 GMT):
1. Do the same without --net=host on one linux machine, it doesn't work. Next, i will try --net option

RealDeanZhao (Thu, 21 Nov 2019 07:37:08 GMT):
2. With --net=host on one linux machine, it works...

RealDeanZhao (Thu, 21 Nov 2019 07:37:57 GMT):
@joshuafernandes thanks.

joshuafernandes (Thu, 21 Nov 2019 07:38:35 GMT):
nw

joshuafernandes (Thu, 21 Nov 2019 07:39:08 GMT):
any nix machine will work just fine with that and you wont need the port maps unless you run multiple containers on the same machine

RealDeanZhao (Thu, 21 Nov 2019 07:41:00 GMT):
@joshuafernandes I only use the first node to generate the extra data. Why the second node can join successfully even i dont propose it to be a validator.

joshuafernandes (Thu, 21 Nov 2019 07:41:40 GMT):
lost me

RealDeanZhao (Thu, 21 Nov 2019 07:41:41 GMT):
In this situation, the first node is the bootnode and validator node but the second node is the only rpc node not a validator node?

joshuafernandes (Thu, 21 Nov 2019 07:42:17 GMT):
any node can join the network once you have the first (bootnode) up, however only certain nodes (validators) can create blocks

joshuafernandes (Thu, 21 Nov 2019 07:42:42 GMT):
in the extra data you specify which they are so it knows what to expect

joshuafernandes (Thu, 21 Nov 2019 07:43:24 GMT):
and that config generally lives in the genesis file when you get the rest of the network nodes up, after that you vote validators in /out

RealDeanZhao (Thu, 21 Nov 2019 07:43:45 GMT):
I proposed the second node to be a validator, but the vote is still pending.

RealDeanZhao (Thu, 21 Nov 2019 07:43:58 GMT):
curl -X POST --data '{"jsonrpc":"2.0","method":"ibft_getPendingVotes","params":[], "id":1}' http://127.0.0.1:7545 { "jsonrpc" : "2.0", "id" : 1, "result" : { "0xdc1a506ec0a6565697f13d464c09df20e9f18110" : true } }#

joshuafernandes (Thu, 21 Nov 2019 07:44:28 GMT):
when you created the genesis file how many validators did you specify ?

RealDeanZhao (Thu, 21 Nov 2019 07:44:34 GMT):
just one

joshuafernandes (Thu, 21 Nov 2019 07:47:15 GMT):
right i see, from what i can see the second node has joined as a normal node ie it cant validate - once the first node accepts it (second) can act as a validtor

joshuafernandes (Thu, 21 Nov 2019 07:47:30 GMT):
is that right @NicolasMassart

RealDeanZhao (Thu, 21 Nov 2019 08:02:07 GMT):
@joshuafernandes I just tried to add the 3 node. Before i propose it, it only show log _BlockPropagationManager | Imported #721 / 0 tx / 0 om / 0 (0.0%) gas / (0xced6b2._ After i propose it show log _| IbftRound | Importing block to chain. round=ConsensusRoundIdentifier{Sequence=849, Round=0}, hash=0xdf64_.

RealDeanZhao (Thu, 21 Nov 2019 08:02:39 GMT):
The ibft api won't help discarding the vote automatically. I have to manually discarding it

ppoliani (Thu, 21 Nov 2019 12:12:46 GMT):
Has joined the channel.

ppoliani (Thu, 21 Nov 2019 12:13:10 GMT):
Hi everyone :wave:

NicolasMassart (Thu, 21 Nov 2019 12:14:06 GMT):
hi

ppoliani (Thu, 21 Nov 2019 12:15:15 GMT):
I've got a question regarding private transactions. Is there a way to create a private transaction that can be accessed only by the members of the transaction? i.e. if I transfer some ERC20 to another address then only me and the other address would be able to view the details of the transaction

ppoliani (Thu, 21 Nov 2019 12:15:45 GMT):
I've read the docs and I can find these of restrictions at the orion nodes level

NicolasMassart (Thu, 21 Nov 2019 12:36:55 GMT):
That's exactly what private tx are made for IMO.

ppoliani (Thu, 21 Nov 2019 13:03:36 GMT):
ok thanks. Can you please confirm if my understanding of the privacy feature is correct? Imaging the following scenario. - We have two privacy groups (Node1, Node2) and (Node 1, Node 3) - We have the following account whitelisting on each node Node 1 Whitelist = [AccountA, AccountB] Node 2 Whitelist = [AccountB] Node 3 whitelist = [AccountC] Imagine AccountA sends 10 ERC20 tokens to AccountB via Node 1. Then 1) The balance of AccountA on Node 1 and Node 2 will be 10. 2) The balance of AccountA on Node 3 will 0 because it rejected the transaction

ppoliani (Thu, 21 Nov 2019 13:04:08 GMT):
is my understanding accurate?

NicolasMassart (Thu, 21 Nov 2019 13:11:01 GMT):
Let me ask some help on that, to be sure ;)

ppoliani (Thu, 21 Nov 2019 13:41:38 GMT):
thanks mate :)

antonydenyer (Thu, 21 Nov 2019 14:30:40 GMT):
Slightly different. The transaction isn't rejected it just doesn't exist on Node 3.

ppoliani (Thu, 21 Nov 2019 14:33:52 GMT):
oh ok. So basically Node 3 will receive the transaction but it will simply ignore it

antonydenyer (Thu, 21 Nov 2019 14:35:08 GMT):
Sort of, it will receive the marker transaction but will never have the private payload of. In this sense the privacy model is 'restricted' as in the data payload is only set to a restricted set of parties.

antonydenyer (Thu, 21 Nov 2019 14:35:08 GMT):
Sort of, it will receive the marker transaction but will never have the private payload of that transaction. In this sense the privacy model is 'restricted' as in the data payload is only set to a restricted set of parties.

ppoliani (Thu, 21 Nov 2019 14:46:41 GMT):
I think I'm getting it now. So the `privateFor` will decide who Node 1 (or more accurately it's orion node) will send the full private transaction to. I assume the marker transaction contains the minimum data possible for the private transaction

antonydenyer (Thu, 21 Nov 2019 14:47:04 GMT):
exactly.

ppoliani (Thu, 21 Nov 2019 14:50:44 GMT):
fantastic! Thank you guys this was very helpful

ppoliani (Thu, 21 Nov 2019 14:51:17 GMT):
one last thing, which I know might sound silly but I'll ask it anyway :rolling_on_the_floor_laughing:

antonydenyer (Thu, 21 Nov 2019 14:51:31 GMT):
sure

ppoliani (Thu, 21 Nov 2019 14:52:15 GMT):
is there any way when sending a transaction decide which other addresses will be able to read it. Basically privacy at the account level rather than node level

antonydenyer (Thu, 21 Nov 2019 14:52:38 GMT):
Do you mean ethereum address?

ppoliani (Thu, 21 Nov 2019 14:53:39 GMT):
correct

antonydenyer (Thu, 21 Nov 2019 14:57:11 GMT):
Each privacy group has it's own state root. Which means that only people inside that group will be able to read that state. If you have deployed a contract to group1 it will not exist in group2 (or more accurately it will be empty). Perhaps a use case might make it clearer what you are trying to achieve?

ppoliani (Thu, 21 Nov 2019 15:00:47 GMT):
from what I understood, privacy groups are formed of Orion public addresses rather that individual Ethereum address.

ppoliani (Thu, 21 Nov 2019 15:08:27 GMT):
Imagine Node 1, Node 2 and Node 3 being controlled by three distinct organisations. We can apply privacy groups for the organizations, as we pretty much discussed above. However, what if within the same organisation I would like to hide the transactions amongst different departments each of which is connected and sending transaction to the node via the JSON-RPC API.

ppoliani (Thu, 21 Nov 2019 15:09:13 GMT):
I would like to apologise beforehand if the example sounds a bit weird :laughing:

CezarVatafu (Thu, 21 Nov 2019 15:18:23 GMT):
Has joined the channel.

CezarVatafu (Thu, 21 Nov 2019 15:18:53 GMT):

CezarVatafu - Thu Nov 21 2019 17:18:26 GMT+0200 (Eastern European Standard Time).txt

CezarVatafu (Thu, 21 Nov 2019 15:19:22 GMT):
Hello, new here so have mercy; I am trying to Install Besu in AWS(ubuntu) building it from source with gradlew. Unfortunately I get an error which I don't know how to interpret

CezarVatafu (Thu, 21 Nov 2019 15:20:36 GMT):
Are there any restrictions that are you aware on Ubuntu AWS , or maybe from System Reqs ? Thank you !

antonydenyer (Thu, 21 Nov 2019 15:35:41 GMT):
Basically you need to do something else to encrypt the payload. You'd need to look at zkproofs. Or you could do something at the application.

antonydenyer (Thu, 21 Nov 2019 15:37:14 GMT):
but no, there's nothing out of the box that I know about

NicolasMassart (Thu, 21 Nov 2019 15:38:28 GMT):
Or have each department have its own Orion node

ppoliani (Thu, 21 Nov 2019 15:43:30 GMT):
yes guys this is pretty much what I thought as well. I was looking into the aztec protocol to support such ZK scenario. Also the solution with separate Orion nodes is quite viable

ppoliani (Thu, 21 Nov 2019 15:43:49 GMT):
cheers gentlemen, this was very helpful

ppoliani (Thu, 21 Nov 2019 15:43:51 GMT):
thanks :)

shemnon (Thu, 21 Nov 2019 17:01:02 GMT):
When gradle fails it can be quite terse sometimes. Can you try again with "--stacktrace --info" as gradle options?

shemnon (Thu, 21 Nov 2019 17:03:07 GMT):
As an alternative to building, would using a pre-built binary be acceptable? https://bintray.com/beta/#/hyperledger-org/besu-repo/besu/1.3.5?tab=files

carlosfaria (Fri, 22 Nov 2019 10:49:11 GMT):
Hi guys! I want to learn more in depth how Besu works, so that I can collaborate. But I only get this general architecture of the implementation: http://besu.hyperledger.org/en/latest/Concepts/ArchitectureOverview/ For instance, what's the role of `Account` and `DefaultEVMAccount` or `StateTrieAccountValue` ? I know they are part of different stages of a transaction execution, but it's difficult to have a clear picture of the implementation. Do you guys have any diagram with more detail that can help? Thanks

carlosfaria (Fri, 22 Nov 2019 10:49:11 GMT):
Hi guys! I want to learn more in depth how Besu works, so that I can collaborate. But I only get this general architecture of the implementation: http://besu.hyperledger.org/en/latest/Concepts/ArchitectureOverview/ For instance, what's the role of `Account` and `DefaultEVMAccount` or `StateTrieAccountValue` ? I know they are part of different stages of a transaction execution, but it's difficult to have a clear picture of the implementation for the different stages. Do you guys have any diagram with more detail that can help? Thanks

faraggi (Fri, 22 Nov 2019 14:34:16 GMT):
Hi Carlos, I'm glad to know you want to help and contribute. AFAIK, there isn't a more in-depth architecture diagram. Now that you've mentioned it though, it might make sense for us to spend some time and make one, or possibly a video walkthrough of our code base. In the meanwhile, `Account` and `StateTrieAccountValue` are implementations of core ethereum concepts that you can find in `besu/ethereum/core` I'm not sure what `DefaultEVMAccount` is though.

earizon (Fri, 22 Nov 2019 18:54:44 GMT):
Has joined the channel.

earizon (Fri, 22 Nov 2019 18:54:51 GMT):
Hi, I just setup my first 4-nodes IBFT2 test network. I'm able to publish new contract and invoke transactions calling public methods. My problem comes when trying to retrieve generated contract event/logs. If a call a method than triggers and event and I'm "fast enough" to retrieve the logs, I can see them for a while. A moment later the log looks to "hide for ever". The contract state is modified as expected, that warrants that the TX has not been rolled back, but no hint about how to retrieve the "hidden" logs. Any idea? (I'm using web3j that limits to setup a filter and call eth_getFilterChanges periodically ) Looks like if the network were always in "fast-sync" mode, even when I force "--sync-mode=FULL". (I can see a generated data/fastsync directory in the bootstrap node). The problem persists when using docker-compose example from https://github.com/PegaSysEng/besu-quickstart If I replace the besu network by a local ganache-cli things works as expected and I can retrieve "old" events. Any idea?

earizon (Fri, 22 Nov 2019 18:57:03 GMT):
(Besu version 1.3.0)

earizon (Fri, 22 Nov 2019 19:13:15 GMT):
Answering myself, the problem looks to be fixed updating to 1.3.5 ¿?

lucassaldanha (Sun, 24 Nov 2019 21:54:42 GMT):
Hi! Could you confirm what is the command that you are using to start the nodes? If using fast sync, could you try adding `--pruning-enabled=false` to the start command (or the config file).

madelinemurray (Sun, 24 Nov 2019 21:56:24 GMT):
@carlosfaria - I'm following up on this. Sorry about the delay in reply.

AkihiroTanaka (Mon, 25 Nov 2019 00:34:50 GMT):
I solved the problem!! It was gas problem you said and I missunderstood how to deploy ERC1400 by Consensys. Thank you for you help!!

madelinemurray (Mon, 25 Nov 2019 00:47:24 GMT):
@carlosfaria - this is a meetup talk about the Besu architecture (still named Pantheon at the time of recording) - https://www.youtube.com/watch?v=P0ZNyVu_-oU&t=12s The talk starts at about 18 minutes into the recording. Our Besu contributor calls (the next one is tomorrow - https://wiki.hyperledger.org/display/BESU/2019-11-26+Besu+Contributor+Call) are also a great place to ask specific questions about the architecture.

shemnon (Mon, 25 Nov 2019 01:42:39 GMT):
This tuesday we have a Besu contributor/community call in EMEA/AMER friendly times - https://wiki.hyperledger.org/display/BESU/2019-11-26+Besu+Contributor+Call

syuta-sugawara (Mon, 25 Nov 2019 01:44:22 GMT):
Hi. i’m getting into difficulties. i created private gas free network with besu 3 days ago. at that time, that worked. but, today, i realized a bootnode doesn't work. this is the log. looks like thread blocked. but i don't know what happen and what i should do. i'm not familier with java.

syuta-sugawara (Mon, 25 Nov 2019 01:44:22 GMT):
Hi. i’m getting into difficulties. i created private gas free network with besu 3 days ago. at that time, that worked. but, today, i realized a bootnode doesn't work. this is the log. looks like thread blocked. but i don't know what happen and what i should do. i'm not familier with java. could anyone help me?

syuta-sugawara (Mon, 25 Nov 2019 01:44:23 GMT):

log.png

syuta-sugawara (Mon, 25 Nov 2019 01:44:23 GMT):

log.png

syuta-sugawara (Mon, 25 Nov 2019 01:44:23 GMT):

log.png

syuta-sugawara (Mon, 25 Nov 2019 01:44:23 GMT):

log.png

shemnon (Mon, 25 Nov 2019 01:48:24 GMT):
The thread block is likely unrelated to the bootnode being down and could be a noisy confiuration in Besu. However we would need more of the log to be sure. Do you have more of the stack trace available?

syuta-sugawara (Mon, 25 Nov 2019 01:49:46 GMT):
thanks for your reply! i'll send you.

shemnon (Mon, 25 Nov 2019 01:50:17 GMT):
Also, what version of Besu, there is a chance it was addressed in the last month.

syuta-sugawara (Mon, 25 Nov 2019 01:50:43 GMT):
it is v1.3.2!

shemnon (Mon, 25 Nov 2019 01:51:00 GMT):
Definatly upgrade, the fix I'm thinking of went in in 1.3.3

syuta-sugawara (Mon, 25 Nov 2019 01:52:43 GMT):
you mean i should use 1.3.3?

shemnon (Mon, 25 Nov 2019 01:53:13 GMT):
Actually, the most current is 1.3.5. Use a version >= 1.3.3

syuta-sugawara (Mon, 25 Nov 2019 01:54:28 GMT):
i saw the release note. what is the best choice? v1.3.5?

shemnon (Mon, 25 Nov 2019 01:54:35 GMT):
Yes, 1.3.5

syuta-sugawara (Mon, 25 Nov 2019 03:47:57 GMT):
okay,I'll try! thanks!

NicolasMassart (Mon, 25 Nov 2019 08:27:43 GMT):
test

faraggi (Mon, 25 Nov 2019 08:31:42 GMT):
Hi @earizon . I'm curious to know if this did, in fact, fix the issue?

faraggi (Mon, 25 Nov 2019 08:32:47 GMT):
Hi Syuata, do you have an update on this? are you still facing the same issue?

faraggi (Mon, 25 Nov 2019 08:32:47 GMT):
Hi Syuta, do you have an update on this? are you still facing the same issue?

faraggi (Mon, 25 Nov 2019 10:23:41 GMT):
Hi again Carlos. In addition to Madeline's comment, do you mind expanding more on what it is you're trying to achieve? Maybe we can help you with something specific?

carlosfaria (Mon, 25 Nov 2019 13:43:58 GMT):
Thank you for the response @madelinemurray @faraggi I will take a look

hesusruiz (Mon, 25 Nov 2019 14:51:16 GMT):
Has joined the channel.

mandlamag (Tue, 26 Nov 2019 08:58:55 GMT):
Has joined the channel.

RealDeanZhao (Tue, 26 Nov 2019 09:09:13 GMT):
Hi, I set up an ibft network and call the deployed contract using web3j, it took almost 20 seconds to get the transaction receipt. Why does this take so long?

RealDeanZhao (Tue, 26 Nov 2019 09:09:13 GMT):
Hi, I set up an ibft network and call the deployed contract using web3j, it took almost 20 seconds to get the transaction receipt. Why does this take so long? FYI, it is a 4-node ibft network set up using docker. the client is deployed on the same server where the first node is. Besu version is 1.3.4.

RealDeanZhao (Tue, 26 Nov 2019 09:09:13 GMT):
Hi, I set up an ibft network and call the deployed contract using web3j, it took almost 15 seconds for every contract method call to get the transaction receipt. It is very fast if a deploy the contract to local ganache dev node. FYI, it is a 4-node ibft network set up using docker. the client is deployed on the same server where the first node is. Besu version is 1.3.4.

RealDeanZhao (Tue, 26 Nov 2019 09:09:27 GMT):
```"ibft2": { "blockperiodseconds": 2, "epochlength": 30000, "requesttimeoutseconds": 10 }```

faraggi (Tue, 26 Nov 2019 09:32:49 GMT):
Not sure this is the problem, but I would still recommend upgrading to 1.3.5.

RealDeanZhao (Tue, 26 Nov 2019 09:42:37 GMT):
Ok I will try update

RealDeanZhao (Tue, 26 Nov 2019 09:48:13 GMT):
Tried with 1.3.5, it still took 15 seconds.

RealDeanZhao (Tue, 26 Nov 2019 09:55:06 GMT):
I tried to send the request using Web3JS just now, it was very fast to get the transaction receipt. Maybe there is something wrong with Web3J?

ajsutton (Tue, 26 Nov 2019 09:57:33 GMT):
The default poll time for Web3J is quite long - something like 15 seconds from memory...

ajsutton (Tue, 26 Nov 2019 09:58:26 GMT):
There's a version of `Web3j.build` which allows you to specify the polling interval so you can make it shorter.

RealDeanZhao (Tue, 26 Nov 2019 09:58:40 GMT):
How can I set the poll time?

ajsutton (Tue, 26 Nov 2019 09:59:32 GMT):
I think messages crossed - the `Web3j.build` which takes three arguments will let you set poll time.

RealDeanZhao (Tue, 26 Nov 2019 10:00:14 GMT):
Got it, i will try.

RealDeanZhao (Tue, 26 Nov 2019 10:07:46 GMT):
I tried to set the polling time, it still took 15 seconds.

RealDeanZhao (Tue, 26 Nov 2019 10:07:54 GMT):

Clipboard - November 26, 2019 6:07 PM

faraggi (Tue, 26 Nov 2019 10:10:03 GMT):
In that case, this might be the best place to ask: https://gitter.im/web3j/web3j

faraggi (Tue, 26 Nov 2019 10:10:03 GMT):
In that case, this might be the best place to ask the question: https://gitter.im/web3j/web3j

faraggi (Tue, 26 Nov 2019 10:10:03 GMT):
In that case, this might be the best place to ask that question: https://gitter.im/web3j/web3j

RealDeanZhao (Tue, 26 Nov 2019 10:10:48 GMT):
Ok, i will

RealDeanZhao (Tue, 26 Nov 2019 10:42:59 GMT):
After reading web3j code, I found the solution that we need to load the contract with the custom transaction manager ``` final TransactionManager txManager = new RawTransactionManager(this.web3j, this.credentials, -1L, 10, 1000L);```

RealDeanZhao (Tue, 26 Nov 2019 10:42:59 GMT):
After reading web3j code, I found the solution that we need to load the contract with the custom transaction manager, give it a shorter sleep time``` final TransactionManager txManager = new RawTransactionManager(this.web3j, this.credentials, -1L, 10, 1000L);```

faraggi (Tue, 26 Nov 2019 10:55:21 GMT):
Glad to know it worked.

RealDeanZhao (Tue, 26 Nov 2019 10:55:43 GMT):
:smile:

helderjnpinto (Tue, 26 Nov 2019 14:42:00 GMT):
Hi, i have a question for case of call a contract with options defined on contract instantiation, like this config https://web3js.readthedocs.io/en/v1.2.0/web3-eth-contract.html#id2 with options gasPrice and gasLimit web3-eth-contract in all eth_calls like balanceOf of ERC20 give this error UnhandledPromiseRejectionWarning: Error: Returned error: Upfront cost exceeds account balance, because the account that i use not have balance, in other clients like geth i tested my script with infura to ethereum mainnet and not get this error, the balance return 0 is correct. Why besu have this warning ?

helderjnpinto (Tue, 26 Nov 2019 14:42:00 GMT):
Hi, i have a question for case of call a contract with options defined on contract instantiation, like this config https://web3js.readthedocs.io/en/v1.2.0/web3-eth-contract.html#id2 with options gasPrice and gasLimit web3-eth-contract in all eth_calls like balanceOf of ERC20 give this error UnhandledPromiseRejectionWarning: Error: Returned error: Upfront cost exceeds account balance, because the account that i use not have balance, in other clients like geth i tested my script with infura to ethereum mainnet and not get this error, the balance return 0 is correct. Why besu have this error?

helderjnpinto (Tue, 26 Nov 2019 14:42:00 GMT):
Hi, i have a question for case of call a contract with options defined on contract instantiation, like this config https://web3js.readthedocs.io/en/v1.2.0/web3-eth-contract.html#id2 with options gasPrice and gasLimit web3-eth-contract in all eth_calls like balanceOf of ERC20 give this error UnhandledPromiseRejectionWarning: Error: Returned error: Upfront cost exceeds account balance, because the account that i use not have balance, in other clients like geth i tested my script with infura to ethereum mainnet and not get this error, the balance return 0 is correct. Why besu have this error for eth_call ?

faraggi (Tue, 26 Nov 2019 14:50:50 GMT):
Reminder that the bi-weekly Besu Contributor call is going to be held in 10 minutes: https://consensys.zoom.us/j/725448960 Agenda can be found here: https://wiki.hyperledger.org/display/BESU/2019-11-26+Besu+Contributor+Call

shemnon (Tue, 26 Nov 2019 20:47:28 GMT):
Besu does not store or propogate transactions that cannot be immediatly committed. I can't say for sure what other clients do in this regard as I haven't become familiar with those sections of code. It is concievable that the tx would stay in the mem pool until some other tx funds it, but our miner logic does not support that currently. This may be worth posting a jira issue to jira.hyperledger.org so we don't forget about it but I cannot promise any timely delivery of a change.

ajsutton (Tue, 26 Nov 2019 20:59:11 GMT):
I suspect our implementation of `eth_call` is just being too strict here. It is very accurately saying what would happen if you submitted that as a transaction but since it's intended as a simulation is probably should skip the balance checks and jump straight into EVM execution. Raising a ticket would be very useful so we can ensure we're compatible with other clients.

helderjnpinto (Wed, 27 Nov 2019 10:49:15 GMT):
Yes, I think `eth_call` and maybe `eth_estimategas` probably do not need balance verification, beacause is simulation mode "read operation".

helderjnpinto (Wed, 27 Nov 2019 10:49:15 GMT):
Yes, I think `eth_call` and maybe `eth_estimategas` probably do not need balance verification, beacause is simulation mode "read operation". So please create a ticket for this. :+1: thanks

bobsummerwill (Thu, 28 Nov 2019 16:55:40 GMT):
Hey everyone! Is there a planned release date for the next point release? 1.3.5 contained ETC Atlantis support, so works on ETC mainline. But this next point release would also include ETC Agharta support. https://ecips.ethereumclassic.org/ECIPs/ecip-1056 Targeting 15 Jan 2020.

shemnon (Thu, 28 Nov 2019 18:02:50 GMT):
NExt tuesday. Agharta is merged.

shemnon (Thu, 28 Nov 2019 18:02:50 GMT):
Next tuesday. Agharta is merged.

bobsummerwill (Thu, 28 Nov 2019 19:33:05 GMT):
:bomb:

bobsummerwill (Thu, 28 Nov 2019 19:33:11 GMT):
:thumbsup:

eum602 (Thu, 28 Nov 2019 22:58:49 GMT):
Hello eveeryone, please I am running orion and besu on the same instance, I have memory problems, can someone tell me how can I tune jvm for both in order to avoid memory errors? , I appreciate all responses

helderjnpinto (Fri, 29 Nov 2019 12:23:45 GMT):
Hi @ajsutton just a reminder to add the jira ticket :D, i think i cannot do that.

eum602 (Fri, 29 Nov 2019 15:53:27 GMT):
Hello, we would like to run both orion and besu on the same instance; currently we have some problems with orion which shows the following:

eum602 (Fri, 29 Nov 2019 15:53:57 GMT):

Clipboard - November 29, 2019 10:53 AM

eum602 (Fri, 29 Nov 2019 15:55:25 GMT):
please I would like some suggestion how to tune the jvm in order to avoid these errors; I have tried to tune it with no success.

ajsutton (Fri, 29 Nov 2019 21:07:16 GMT):
You should be able to create the ticket yourself and then you can be notified when it's done. You just need to login to JIRA with your Linux Foundation ID (which you've probably used to login to RocketChat too)

lnbryan (Sat, 30 Nov 2019 02:12:06 GMT):
Has joined the channel.

lnbryan (Sat, 30 Nov 2019 02:12:06 GMT):
hello. please how can i start synching with BESU mainnet on my windows

edisinovcic (Sun, 01 Dec 2019 12:14:46 GMT):
Has joined the channel.

edisinovcic (Sun, 01 Dec 2019 12:14:48 GMT):
Hi, is anybody maintaining this repository? https://github.com/PegaSysEng/besu-kubernetes/pull/18

shemnon (Sun, 01 Dec 2019 15:13:12 GMT):
Like all other ethereum mainnet clients you will need a SSD with 250-500GB free. To do this directly on windows: * Download Java 11 or later * add it to your PATH * Download the latest version of the besu zip (1.3.5) from here - https://bintray.com/beta/#/hyperledger-org/besu-repo/besu?tab=files * Extract the zip to your SSD * inside the extracted directory run `bin/besu --sync-mode=FAST` * Downloading all 400 million state nodes will take a couple of days, and then you will be synced to the current block of the blockchain. It may be easier to run it in docker.

joshuafernandes (Sun, 01 Dec 2019 20:54:55 GMT):
Hi @edisinovcic Thanks for that PR, have approved and merged. Apologies for the delay in getting back to you

EdJoJob (Sun, 01 Dec 2019 21:05:06 GMT):
Docker is unsupported on Windows, as the images we publish do not work with RocksDB being mounted on a Windows drive

SamB (Mon, 02 Dec 2019 04:39:30 GMT):
Has joined the channel.

helderjnpinto (Mon, 02 Dec 2019 11:59:38 GMT):
Yes you are rigth, i created the ticket https://jira.hyperledger.org/browse/BESU-137

syuta-sugawara (Mon, 02 Dec 2019 12:54:59 GMT):
hi. I created private network with besu in aws ECS. i'd like to store data to cloud file storage which is Elastic file system in AWS. by using besu , which directory is the blockchain data stored in?

sloops77 (Mon, 02 Dec 2019 12:57:54 GMT):
Has joined the channel.

shemnon (Mon, 02 Dec 2019 15:43:14 GMT):
Wherever in the `database` directory of wherever '--data-path' points to, which defaults to the directory you extracted toe tar.gz to. If you run `--help` the default locaiton of `--data-path` will be listed. It is likely easiest to just point `--data-path` to wherever your ECS mount is.

eum602 (Mon, 02 Dec 2019 16:41:53 GMT):
I have created an issue to cover this : https://jira.hyperledger.org/browse/BESU-138

ajsutton (Mon, 02 Dec 2019 20:28:05 GMT):
Thank you, much appreciated.

lnbryan (Mon, 02 Dec 2019 21:41:35 GMT):
thanks for the help @shemnon that was really really helpful

jcarpenter (Mon, 02 Dec 2019 22:43:02 GMT):
Has joined the channel.

Hendobox (Mon, 02 Dec 2019 23:17:15 GMT):
Has joined the channel.

edisinovcic (Tue, 03 Dec 2019 09:17:23 GMT):
np, was just curious if it's maintained as it's still under pegasys org.

faraggi (Tue, 03 Dec 2019 09:50:04 GMT):
@edisinovcic , as a more general reply to that last comment, the pegasys github org still exists and contains some internal pegasys repos we use (most of which are open source).

syuta-sugawara (Tue, 03 Dec 2019 10:00:29 GMT):
i see. thanks.

syuta-sugawara (Tue, 03 Dec 2019 10:03:51 GMT):
hi. I created private network with besu by using IBFT 2.0. when i use ibft 2.0, should i set 4 nodes? now our private network includes only 3 nodes. my client required us to use only 3 nodes.

faraggi (Tue, 03 Dec 2019 10:04:56 GMT):
Yes, > IBFT 2.0 requires 4 validators to be Byzantine fault tolerant.

faraggi (Tue, 03 Dec 2019 10:05:03 GMT):
https://besu.hyperledger.org/en/stable/Concepts/Consensus-Protocols/Comparing-PoA/#minimum-number-of-validators

syuta-sugawara (Tue, 03 Dec 2019 10:06:05 GMT):
will there be any problem?

faraggi (Tue, 03 Dec 2019 10:06:50 GMT):
This is a requirement on behalf of the actual _consensus mechanism_.

faraggi (Tue, 03 Dec 2019 10:07:12 GMT):
The network won't be able to produce finality without 4+ nodes.

syuta-sugawara (Tue, 03 Dec 2019 10:09:33 GMT):
now looks like our private network is working. and this is for proof of concept.

cam-parra (Tue, 03 Dec 2019 18:08:52 GMT):
I am trying to run a private clique network using ansible. My playbook looks like this ```--- - hosts: localhost connection: local force_handlers: True roles: - role: ansible-role-besu vars: besu_version: 1.3.5 besu_network: custom besu_genesis_path: "/opt/besu/genesis-test-net.json" besu_rpc_http_api: [ETH,NET,CLIQUE] besu_p2p_port: 30304 besu_bootnodes: [enode://]```

cam-parra (Tue, 03 Dec 2019 18:09:19 GMT):
but I don't seem to be able to connect to my enode... in the logs it goes to a defauly enode url

cam-parra (Tue, 03 Dec 2019 18:09:19 GMT):
but I don't seem to be able to connect to my enode... in the logs it goes to a default enode url

cam-parra (Tue, 03 Dec 2019 18:10:19 GMT):
the log looks like this

cam-parra (Tue, 03 Dec 2019 18:10:59 GMT):
```2019-12-03 18:04:11.312+00:00 | main | INFO | DefaultP2PNetwork | Enode URL enode://@IP:30304```

cam-parra (Tue, 03 Dec 2019 18:29:54 GMT):
Has anyone else experienced this?

ajsutton (Tue, 03 Dec 2019 19:54:07 GMT):
Just to clarify, the network can reach consensus with even 1 node, but can not handle any faulty or malicious nodes unless there are at least 4 validators (at which point one node can be faulty without breaking the network).

faraggi (Wed, 04 Dec 2019 08:06:06 GMT):
@joshuafernandes You might be able to give some light on this issue.

coenie (Wed, 04 Dec 2019 08:29:28 GMT):
Hi, has anyone here done a comparison on the number of validator nodes IBFT2 (besu) vs Tendermint (autonity) can run?

joshuafernandes (Wed, 04 Dec 2019 09:40:39 GMT):
Hi @cam-parra is this still an issue or resolved now mate?

kamposter (Wed, 04 Dec 2019 14:15:13 GMT):
Has joined the channel.

faraggi (Wed, 04 Dec 2019 14:55:43 GMT):
I don't think I've ever heard of that specific comparison made, but I'll be glad to hear anyone's experiences.

cam-parra (Wed, 04 Dec 2019 17:30:12 GMT):
@joshuafernandes has done an awesome job and now I have everything up and running thanks for all the help :)

eum602 (Wed, 04 Dec 2019 19:32:07 GMT):
Hello, I have a doubt, where are the events emited, by the private smart contracts, stored?

lucassaldanha (Wed, 04 Dec 2019 20:07:09 GMT):
Events emitted from private contracts generate logs that can be retrieved from the private transaction receipt that originated the event. You can get the receipt of a private tx using priv_getTransactionReceipt method (https://besu.hyperledger.org/en/latest/Reference/API-Methods/#priv_gettransactionreceipt)

syuta-sugawara (Thu, 05 Dec 2019 04:16:29 GMT):
hi. i have a quesion. now I'm trying to create private network with three nodes. but I cannot. i think enode url's id is not correct. i thouht enode url is like this. enode://@ id is public key excluding the initial 0x. my bootnode's public key is 0x0ac3d4e8b81a5650cd61fcd62bb27bc2d34a6fe8141de51be35731dd0dba289bcfc623f5a236365e825e61eeb5700fe2997472c5821c6582c9c230c031871661. so i started other node with this command , --bootnodes=enode://0ac3d4e8b81a5650cd61fcd62bb27bc2d34a6fe8141de51be35731dd0dba289bcfc623f5a236365e825e61eeb5700fe2997472c5821c6582c9c230c031871661 but i was not able to

syuta-sugawara (Thu, 05 Dec 2019 04:16:29 GMT):
hi. i have a quesion. now I'm trying to create private network with three nodes. but I cannot. i think enode url's id is not correct. i thouht enode url is like this. enode://@ id is public key excluding the initial 0x. my bootnode's public key is 0x0ac3d4e8b81a5650cd61fcd62bb27bc2d34a6fe8141de51be35731dd0dba289bcfc623f5a236365e825e61eeb5700fe2997472c5821c6582c9c230c031871661. so i started other node with this command , --bootnodes=enode://0ac3d4e8b81a5650cd61fcd62bb27bc2d34a6fe8141de51be35731dd0dba289bcfc623f5a236365e825e61eeb5700fe2997472c5821c6582c9c230c031871661 but other nodes was not able to be connected to a bootnode. and also when i saw log of bootnode, this enode url is shown. i don't know what happen.

syuta-sugawara (Thu, 05 Dec 2019 04:21:29 GMT):

bootnode's log.png

syuta-sugawara (Thu, 05 Dec 2019 04:21:42 GMT):
could anyone help me?

lucassaldanha (Thu, 05 Dec 2019 04:25:47 GMT):
Hi! Have you set the p2p-host and p2p-port properties? These are the properties that you can use to specify your externally reachable address and port.

lucassaldanha (Thu, 05 Dec 2019 04:26:46 GMT):
Try setting p2p-host to your public IP address and p2p-port to the port that is open (default is 30303)

syuta-sugawara (Thu, 05 Dec 2019 04:27:07 GMT):
yes, i did it correctly.

syuta-sugawara (Thu, 05 Dec 2019 04:27:27 GMT):
thanks for your reply anyway.

syuta-sugawara (Thu, 05 Dec 2019 04:28:02 GMT):
i use besu v1.3.5.

lucassaldanha (Thu, 05 Dec 2019 04:28:32 GMT):
Can you share your config so I can take a look? (if needed send me in a DM)

lucassaldanha (Thu, 05 Dec 2019 04:30:21 GMT):
Also, in your msg you said that you are using this property `--bootnodes=enode://0ac3d4e8b81a5650cd61fcd62bb27bc2d34a6fe8141de51be35731dd0dba289bcfc623f5a236365e825e61eeb5700fe2997472c5821c6582c9c230c031871661` It is missing the bootnode url and port

lucassaldanha (Thu, 05 Dec 2019 04:30:53 GMT):
I'm not sure it this was a typo or if you missed this in the config :)

syuta-sugawara (Thu, 05 Dec 2019 04:32:25 GMT):
acutually, i worte host and port. but this is a puclic channel so i did't show it.

syuta-sugawara (Thu, 05 Dec 2019 04:32:39 GMT):
i'll send dm!

lucassaldanha (Thu, 05 Dec 2019 04:32:42 GMT):
Cool!

madelinemurray (Thu, 05 Dec 2019 04:40:19 GMT):
Besu v1.3.6 has been released. Download from https://pegasys.tech/solutions/hyperledger-besu/#downloads Changelog https://github.com/hyperledger/besu/blob/master/CHANGELOG.md

macfarla (Thu, 05 Dec 2019 05:37:28 GMT):
@pcmola do you still have this issue? I've tried but I can't reproduce it :) If you do still have it, can you provide further information about your setup? Orion version etc. Thanks!

carlosfaria (Thu, 05 Dec 2019 10:24:53 GMT):
Hey guys, How can I use the `IbftProtocolSchedule` to leverage a change in `blockPeriod` on a certain block number, defined on genesis forks?

NicolasMassart (Thu, 05 Dec 2019 11:09:20 GMT):
I cross posted in #besu-contributors , you may have more chances

carlosfaria (Thu, 05 Dec 2019 11:11:26 GMT):
Thanks @NicolasMassart

kamposter (Thu, 05 Dec 2019 15:31:41 GMT):
Dear Besu folks, I’m just started to research/explore this system. Might I ask some noob questions that mostly based on the architecture of the other dlt systems I know. 1. Do “Orion-based” transactions are off-chain or on-chain… or can be both? 2. Is there any best-practice guidelines of implementing “oracles” with Besu? 3. As I correctly understood, it is recommended (by the philosophy of IBFT2.0) to force client (apps) to send Tx to several nodes? Thanks

kamposter (Thu, 05 Dec 2019 15:31:41 GMT):
Dear Besu folks, I’m just started to research/explore this system. Might I ask some noob questions that mostly based on the architecture of the other dlt systems I know. 1. Do “Orion-based” transactions are off-chain or on-chain… or can be both? 2. Is there any best-practice guidelines of implementing “oracles” with Besu? 3. As I correctly understood, it is recommended (by the philosophy of IBFT2.0) to force client (apps) to send Tx to several nodes? Thanks!

faraggi (Thu, 05 Dec 2019 16:46:33 GMT):
1. Orion based TX are off-chain but have markers added to the public chain. 2. Not that I know of, lets see if anyone else wants to pitch in with more info on that. But Oracles and clients are very different beasts 3. the client will take care of propagation for you. can you link to what you mean by that philosophy?

kamposter (Thu, 05 Dec 2019 17:11:50 GMT):
1. Would be super if you can add some details about this process. 3. Based on Besu IBFT2.0 white paper, look 1.2 (page 2 - our contribution). So, I made assumption that Besu going to recommend to sent TX proposals to several nodes simultaneously. (like in Fabric).

kamposter (Thu, 05 Dec 2019 17:11:50 GMT):
3. Based on Besu IBFT2.0 white paper, look 1.2 (page 2 - our contribution). So, I made assumption that Besu going to recommend to sent TX proposals to several nodes simultaneously. (like in Fabric).

Radhi (Fri, 06 Dec 2019 10:03:32 GMT):
alethio

faraggi (Fri, 06 Dec 2019 13:27:38 GMT):
You know what? how about we call the actual author? :) @robertosaltini

faraggi (Fri, 06 Dec 2019 13:27:38 GMT):
You know what? how about we call the actual authors? :) @robertosaltini

faraggi (Fri, 06 Dec 2019 13:27:38 GMT):
You know what? how about we call the actual authors? :)

faraggi (Fri, 06 Dec 2019 13:27:59 GMT):
@dphhyland

faraggi (Fri, 06 Dec 2019 13:27:59 GMT):
@dphhyland @robertosaltini

Sam_Devs (Fri, 06 Dec 2019 14:46:46 GMT):
Has joined the channel.

robertosaltini (Fri, 06 Dec 2019 23:27:33 GMT):
The paper analyses the IBFT2 protocol without making any assumption on how the network layer is implemented. We just assume that there is a point in time after which the transmission latency is bounded. This is is to make the protocol as generic as possible and not dependent on a specific implementation. However, Beau as all (or most) Ethereum clients, implements the network layer via gossiping in which case if you send your tx to an honest nodes, then this node will propagate the transaction to all other nodes. Having said this, a very strong adversary may be able to mount an eclipse attack on an honest node, so sending the tx to more than one node increases the possibility that the transaction will be eventually received by all honest nodes. In conclusion, in most scenario sending a tx to only one node (if you know that that node is honest) will suffice, but if you are in an environment with high risk of attack I would suggest sending the tx to more than one node. This applies not only to IBFT2, but to all protocols running on top of a gossiping protocol.

edisinovcic (Tue, 10 Dec 2019 08:31:22 GMT):
@faraggi Tnx for the clarification :)

RealDeanZhao (Wed, 11 Dec 2019 02:43:18 GMT):

Clipboard - December 11, 2019 10:43 AM

RealDeanZhao (Wed, 11 Dec 2019 02:44:25 GMT):
Hi, I've setup a 4 node ibft network using docker on one machine. The network is working but sometimes some of the nodes restarts. How can i see the log of the node in the container?

RealDeanZhao (Wed, 11 Dec 2019 02:45:06 GMT):
Does besu write the logs to a file?

ajsutton (Wed, 11 Dec 2019 02:51:00 GMT):
You can use `docker logs ` to view the logs. For example `docker logs 0f80af3ea54f`

RealDeanZhao (Wed, 11 Dec 2019 02:51:31 GMT):
I can only see the latest log, how can i see the logs when the node stopped?

RealDeanZhao (Wed, 11 Dec 2019 02:51:31 GMT):
I can only see the latest log, how can i see the logs when the node stoped?

RealDeanZhao (Wed, 11 Dec 2019 02:51:52 GMT):
I can only see the latest log, how can i see the logs when the node stoped?

ajsutton (Wed, 11 Dec 2019 02:52:19 GMT):
If the whole docker container stopped then you'd need to use `docker container ls -a` to find the stopped container ID and the `docker logs`

RealDeanZhao (Wed, 11 Dec 2019 02:54:03 GMT):
I ran the container using --restart=always.

ajsutton (Wed, 11 Dec 2019 02:54:58 GMT):
hmm, that's beyond my docker expertise I'm afraid.

RealDeanZhao (Wed, 11 Dec 2019 02:55:48 GMT):
the container will restart when it stops. How can i configure the node to write the log to a file?

ajsutton (Wed, 11 Dec 2019 02:56:39 GMT):
Besu always outputs logs to stdout and you can then redirect that however you need. I'm very surprised that docker loses the logs when it restarts a container.

RealDeanZhao (Wed, 11 Dec 2019 02:59:40 GMT):
the log is not lost. I can only find one warning message:

RealDeanZhao (Wed, 11 Dec 2019 02:59:47 GMT):
docker logs c476ec930904 |grep WARN 2019-12-09 18:07:47.517+00:00 | vertx-blocked-thread-checker | WARN | BlockedThreadChecker | Thread Thread[vert.x-eventloop-thread-2,5,main]=Thread[vert.x-eventloop-thread-2,5,main] has been blocked for 6590 ms, time limit is 2000 ms

RealDeanZhao (Wed, 11 Dec 2019 03:00:33 GMT):
There are no logs for ERROR.

joshuafernandes (Wed, 11 Dec 2019 03:01:45 GMT):
`docker ps -a` gives you all the containers that ran (including stopped/failed etc)

joshuafernandes (Wed, 11 Dec 2019 03:02:04 GMT):
you can then do `docker logs `

ajsutton (Wed, 11 Dec 2019 03:02:31 GMT):
That warning suggests that either besu was under heavy load (probably lots of JSON-RPC requests) or potentially that it was running low on memory which was significantly impacting performance. If it was tight on memory it may have been suddenly killed by the system out of memory killer - you'd have to check it's logs (whereever your OS puts them) to determine if that's what happened or not. The lack of any logs does sound a lot like something external very abruptly killed Besu or the container.

joshuafernandes (Wed, 11 Dec 2019 03:03:16 GMT):
`docker ps -a` gives you all the containers that ran (including stopped/failed etc) you can then do `docker logs `

joshuafernandes (Wed, 11 Dec 2019 03:03:16 GMT):
`docker ps -a` gives you all the containers that ran (including stopped/failed etc) and you get an indication of when it ran & stopped via the timestamps you can then do `docker logs `

joshuafernandes (Wed, 11 Dec 2019 03:04:09 GMT):
you can alternatively mount a volume and a log file and write to your local file system like so: https://github.com/PegaSysEng/besu-quickstart/blob/master/docker-compose.yml#L13

joshuafernandes (Wed, 11 Dec 2019 03:05:28 GMT):
specify an appender and pass that in to besu, and then mount a volume to that path (line18) and you should see log files that persist

RealDeanZhao (Wed, 11 Dec 2019 03:05:47 GMT):
I will try that

RealDeanZhao (Wed, 11 Dec 2019 03:18:31 GMT):
I used dmesg to see the kernel log:

RealDeanZhao (Wed, 11 Dec 2019 03:18:33 GMT):
[Tue Dec 10 17:41:14 2019] Out of memory: Kill process 32242 (java) score 201 or sacrifice child [Tue Dec 10 17:41:14 2019] Killed process 32242 (java) total-vm:7065980kB, anon-rss:895300kB, file-rss:0kB, shmem-rss:0kB

RealDeanZhao (Wed, 11 Dec 2019 03:19:02 GMT):
Yes, something out of memory happened at that time.

faraggi (Wed, 11 Dec 2019 11:03:28 GMT):
@NicolasMassart You mentioned something of this sort recently. Does this problem ring a bell? @RealDeanZhao what are your hardware specs on that machine?

NicolasMassart (Wed, 11 Dec 2019 21:19:48 GMT):
Yes we had something similar and it was related to a log query that was too huge and making the system fail badly. @shemnon worked on a PR to fix that by having a distinct indexing of logs, that should be shipped in next release. @RealDeanZhao what tools do you have that make queries on your node? We experienced the issue with Eventeum specifically as the chain was big enough for the initial log retrieval to lock the system. But any other tool could behave like that as the issue is that during first start it requested logs for the whole database. So if it's only a few hundred thousand blocs it's ok, but as it get over multiple millions, it started to be hard to keep up with the requests. Now with the log index it should be fine.

EdJoJob (Wed, 11 Dec 2019 21:31:03 GMT):
Also if the machine in question is a Mac, please ensure that you have given enough memory to the Docker for Mac process. ~4G rather than the default 2G

Silona (Wed, 11 Dec 2019 21:44:34 GMT):
Hello everyone - Do you know of a developer event that we would like to get some Hyperledger representation at? Please submit it here. The marketing committee will review them all as we go thru our budget for 2020 Thank you! - Silona

Silona (Wed, 11 Dec 2019 22:01:04 GMT):
https://wiki.hyperledger.org/display/Marketing/Developer+Events

adrien_del (Thu, 12 Dec 2019 14:58:46 GMT):
Has joined the channel.

adrien_del (Thu, 12 Dec 2019 14:58:47 GMT):
Hello, I've a question around the statement: "Caution If a receiving Orion is available when the private transaction is distributed but is unavailable when the privacy marker transaction is processed, the private transaction is not executed by the receiving Besu node. The private states in the Besu nodes are then inconsistent." coming from the documentation : https://besu.hyperledger.org/en/stable/Concepts/Privacy/Privacy-Overview/ In Quorum, the private transaction is not distributed if the node recipient is not avialable, and I'm wondering why BESU is not doing the same ?

adrien_del (Thu, 12 Dec 2019 14:59:00 GMT):

image.png

adrien_del (Thu, 12 Dec 2019 14:59:08 GMT):
seems to contradict the above statement as well ?

NicolasMassart (Thu, 12 Dec 2019 15:04:54 GMT):
@madelinemurray ?

antonydenyer (Thu, 12 Dec 2019 16:22:39 GMT):
There's a period of time between when the transaction is submitted and when it is processed. Say Alice submits a private transaction with Bob and Charlie as recipients. If they are all online the marker transaction will end up on chain. When Bobs besu node sees that marker transaction, some time later, he will need to go and fetch the private payload for that transaction from Orion. If Orion is down at that point in time Bobs besu node will think it doesn't have access to it and will not process it. Consequently it will not update it's local private world state for that privacy group.

antonydenyer (Thu, 12 Dec 2019 16:23:12 GMT):
We're looking at changing it so that Bobs besu node will stop processing transactions if the enclave is down.

adrien_del (Thu, 12 Dec 2019 16:37:28 GMT):
ok I understand, so this is in the roadmap of BESU? do we have an ETA ?

adrien_del (Thu, 12 Dec 2019 16:37:48 GMT):
because for now, if I want my private states to stay synchronized, I better use Quorum?

antonydenyer (Thu, 12 Dec 2019 16:38:22 GMT):
it's the same problem in Quorum

adrien_del (Thu, 12 Dec 2019 16:38:42 GMT):
ah ok, I didn't know

adrien_del (Thu, 12 Dec 2019 16:38:45 GMT):
thanks :)

antonydenyer (Thu, 12 Dec 2019 16:39:08 GMT):
I think they handle it better, but if the enclave is down you have problems

adrien_del (Thu, 12 Dec 2019 16:41:41 GMT):
but in reality, it shouldn't be complicated to say that when the enclave is back up again, you execute the private transaction that is anchored on chain (the famous merker)

adrien_del (Thu, 12 Dec 2019 16:42:11 GMT):
so the node can't really lie and say he didn't receive it

antonydenyer (Thu, 12 Dec 2019 16:43:04 GMT):
it's this guy https://github.com/hyperledger/besu/blob/master/ethereum/core/src/main/java/org/hyperledger/besu/ethereum/mainnet/precompiles/privacy/PrivacyPrecompiledContract.java#L96

adrien_del (Thu, 12 Dec 2019 16:43:07 GMT):
as long as the enclave is not back up again, you don't trust this node

antonydenyer (Thu, 12 Dec 2019 16:43:43 GMT):
we need to only catch things like 4xx from the enclave

antonydenyer (Thu, 12 Dec 2019 16:43:43 GMT):
we should only catch things like 4xx from the enclave

syuta-sugawara (Fri, 13 Dec 2019 06:22:30 GMT):
hi. no suitable image found. Did find: /private/var/folders/1x/8j0s24710yz4s4gxwlqlnjbw0000gn/T/librocksdbjni8804614879769700996.jnilib we got above error when i try to start bootnode with this below command. besu --data-path=data --genesis-file=../genesis.json --rpc-http-enabled --rpc-http-api=ETH,NET,IBFT --host-whitelist="*" --rpc-http-cors-origins="all"

syuta-sugawara (Fri, 13 Dec 2019 06:22:38 GMT):
what happend?

faraggi (Fri, 13 Dec 2019 13:57:25 GMT):
Hi Silona, I'll be glad to help with HL representtion. I'll be attending and speaking at several of these events and others throughout the year. I've added the events I believe are important (and will personally attend) as well.

faraggi (Fri, 13 Dec 2019 13:58:04 GMT):
Hi Silona, I'll be glad to help with HL representtion. I'll be attending and speaking at several of these events and others throughout the year. I've added the events I believe are important (and will personally attend) as well.

NicolasMassart (Fri, 13 Dec 2019 14:32:56 GMT):
Hi, is that a new fresh Besu install?

juancc (Sun, 15 Dec 2019 16:49:50 GMT):
Has joined the channel.

juancc (Sun, 15 Dec 2019 16:49:50 GMT):
Hi everyone :wave: I am new to this chat

juancc (Sun, 15 Dec 2019 16:53:03 GMT):
I was following ethernodes.org to check Istanbul network synchronisation. I saw Besu on the list trying to sync, but I can't find it anymore on the list. Does anybody know why it was removed? Any compatibility issue with Istanbul reported? Thanks!

faraggi (Mon, 16 Dec 2019 08:44:20 GMT):
Hi @juancc , this was due to the 1.3.7 consensus issue fix released we released on Friday (https://github.com/hyperledger/besu/releases). We'll publish more information on this in some hours.

madelinemurray (Mon, 16 Dec 2019 08:45:47 GMT):
@adrien_del - this PR is in progress to stop processing private txns when the enclave is unavailable - https://github.com/hyperledger/besu/pull/253

timbeiko (Mon, 16 Dec 2019 19:09:16 GMT):
*IMPORTANT: * Besu experienced a mainnet consensus issue on Friday. 1.3.7 was promptly released to address it. More information about the issue and mitigation for both public and private networks is now available at: https://wiki.hyperledger.org/display/BESU/Mainnet+Consensus+Bug+Identified+and+Resolved+in+Hyperledger+Besu

atoulme (Mon, 16 Dec 2019 21:23:37 GMT):
Has joined the channel.

juancc (Mon, 16 Dec 2019 22:47:34 GMT):
Hi @juancc , this was due to the 1.3.7 consensus issue fix released we released on Friday (https://github.com/hyperledger/besu/releases). W

dhuseby (Mon, 16 Dec 2019 22:51:11 GMT):
besu-audit

juancc (Mon, 16 Dec 2019 23:00:37 GMT):
Thanks a lot for your prompt reply @faraggi ! :thumbsup:

EThomas 1 (Tue, 17 Dec 2019 11:36:22 GMT):
Has joined the channel.

EThomas 1 (Tue, 17 Dec 2019 11:36:24 GMT):
I am doing a project on hyperledger besu IBFT Proof of authority . I dont know how to write codes in managing the reputation of the validators according to the validations or transactions they perform . Can some one help me how to write codes to manage the reputations of the validators in hyperledger besu network .

EThomas 1 (Tue, 17 Dec 2019 11:36:42 GMT):
I am new to blockchain concepts

EThomas 1 (Tue, 17 Dec 2019 11:36:52 GMT):
thanks in advance

bobsummerwill (Tue, 17 Dec 2019 18:04:23 GMT):
I assume that the Contributor meeting on 24th Dec is NOT proceeding?

shemnon (Tue, 17 Dec 2019 18:22:43 GMT):
The next contributor call is 7 Jan in EMEA/AMER times. - https://wiki.hyperledger.org/display/BESU/2020-01-07+Besu+Contributor+Call (as noted in the 10 DEc meeting notes)

shemnon (Tue, 17 Dec 2019 18:22:43 GMT):
The next contributor call is 7 Jan in EMEA/AMER times. - https://wiki.hyperledger.org/display/BESU/2020-01-07+Besu+Contributor+Call (as noted in the 10 Dec meeting notes)

bobsummerwill (Tue, 17 Dec 2019 18:45:16 GMT):
Thanks for the confirmation.

MatiasGallardo (Wed, 18 Dec 2019 12:42:46 GMT):
Has joined the channel.

MatiasGallardo (Wed, 18 Dec 2019 12:42:47 GMT):
Hello!! I have a pantheon node with 1.1.1 in a private network running quite a lot, is it safe to upgrade to latest?

MatiasGallardo (Wed, 18 Dec 2019 12:44:17 GMT):
how would you recommend to do the upgrade?

NicolasMassart (Wed, 18 Dec 2019 19:06:30 GMT):
Yes it's safe and recommended. Stop your node, make a backup of the database forlder, the node key and the genesis file. Update to Besu latest version (currently 1.3.7) and run your node again. Depending on the command line parameters you used, some options may have changed. Can you paste your command line here for me to tell you if you have to change anything?

MatiasGallardo (Wed, 18 Dec 2019 19:53:31 GMT):
--data-path=/home/ubuntu/data/pantheon-1.0.2/network/node-1/data --genesis-file=/home/ubuntu/data/pantheon-1.0.2/network/ibftGenesis.json --rpc-http-enabled --rpc-http-api=ADMIN,ETH,NET,IBFT,WEB3,DEBUG --host-whitelist=* --rpc-http-cors-origins="all" --rpc-http-port=8545 --min-gas-price=0 --rpc-ws-enabled --rpc-ws-api=ADMIN,NET,ETH,IBFT,WEB3,DEBUG --rpc-ws-port=4444 --rpc-ws-host=0.0.0.0 --rpc-http-host=0.0.0.0

mmani99 (Thu, 19 Dec 2019 12:34:09 GMT):
Has joined the channel.

NicolasMassart (Thu, 19 Dec 2019 13:21:49 GMT):
yes it looks safe, nothing in conflict with the new version for what I can see. But of course, make a test on a non critical node prior to updating all your network.

Dion (Thu, 19 Dec 2019 15:45:01 GMT):
Has joined the channel.

MatiasGallardo (Thu, 19 Dec 2019 17:29:16 GMT):
ok thanks

magooster (Fri, 20 Dec 2019 01:17:55 GMT):
Has joined the channel.

juancc (Fri, 20 Dec 2019 08:47:22 GMT):
Hi all, using BESU permissioning: Can I limit a subset of addresses to be the only ones able to deploy smart contracts? Thx!

NicolasMassart (Fri, 20 Dec 2019 10:08:50 GMT):
Not for the moment. The onchain permission rules are about an account being able to send a tx or not. It would require a finer grained system that can handle regular tx and smart contract creation tx. You can have a look at https://github.com/PegaSysEng/permissioning-smart-contracts/ for more details on what the permissions smart contracts do.

juancc (Fri, 20 Dec 2019 10:10:13 GMT):
Thanks a lot @NicolasMassart :thumbsup:

faraggi (Fri, 20 Dec 2019 14:17:52 GMT):
*PSA: Besu 1.3.8 has been released* https://github.com/hyperledger/besu/releases/tag/1.3.8

b1001 (Sat, 21 Dec 2019 09:13:42 GMT):
Has joined the channel.

b1001 (Sat, 21 Dec 2019 09:24:45 GMT):
Hi I am referencing the verbiage in https://pegasys.tech/enterprise/. I have a question about "scalable" client solution. Can anyone elaborate a bit more that in a technical point of view?

b1001 (Sat, 21 Dec 2019 09:26:49 GMT):
My limited understanding is Besu is not a sidechain technology like Plasma

marlow (Sat, 21 Dec 2019 14:00:25 GMT):
Has joined the channel.

marlow (Sat, 21 Dec 2019 14:00:25 GMT):
Hi, I have a question regarding the besu-quickstart. There are two docker-compose files: one for a PoA network, and one for a privacy PoW network. I tried playing with the --genesis-file flag and the volumes. I get to the point where the chain is up but the nodes are not producing blocks. My question is: Is it possible to get a PoA (clique or ibft2) working with privacy enabled? Thanks!

marlow (Sat, 21 Dec 2019 14:00:25 GMT):
Hi, I have a question regarding the besu-quickstart. There are two docker-compose files: one for a PoA network, and one for a privacy PoW network. I tried playing with the --genesis-file flag and the volumes. I get to the point where the chain is up but the nodes are not producing blocks. My question is: Is it possible to get a private PoA (clique or ibft2) working with privacy enabled? Thanks!

marlow (Sat, 21 Dec 2019 14:00:25 GMT):
Hi, I have a question regarding the besu-quickstart. There are two docker-compose files: one for a PoA network, and one for a privacy PoW network. I tried playing with the --genesis-file flag and the volumes. I get to the point where the chain is up but the nodes are not producing blocks. My question is: Is it possible to get a private PoA (clique or ibft2) working with privacy enabled? As the docker-compose_privacy.yml uses the --network dev flag, which is a PoW chain

marlow (Sat, 21 Dec 2019 14:00:25 GMT):
Hi, I have a question regarding the besu-quickstart. There are two docker-compose files: one for a PoA network, and one for a privacy PoW network. My question is: Is it possible to get a private PoA (clique or ibft2) working with privacy enabled? As the docker-compose_privacy.yml uses the --network dev flag, which is a PoW chain I tried playing with the --genesis-file flag and the volumes. I get to the point where the chain is up but the nodes are not producing blocks.

MatiasGallardo (Sat, 21 Dec 2019 16:26:29 GMT):
Hi all!! How can I increase the block size gas limit in a running private network?

juancc (Sat, 21 Dec 2019 22:17:17 GMT):
Hi, what is the recommended heartbeat for a BESU POA network? 15 secs? Thx!

shemnon (Sun, 22 Dec 2019 19:44:17 GMT):
CLI flag `--target-gas-limit=` and it will require a node restart on each node you apply it to in the validator set.

joshuafernandes (Sun, 22 Dec 2019 21:30:11 GMT):
Hello @marlow Privacy for PoA works in much the same manner. I'd recommend taking the existing poa compose file and making sure it you can get blocks being created, then add the orion nodes to it (tie them to three besu nodes of your choice) with ``` "--privacy-enabled=true", "--privacy-url=http://orion1:8888", "--privacy-public-key-file=/config/orion/orion.pub"] ```

joshuafernandes (Sun, 22 Dec 2019 21:30:11 GMT):
Hello @marlow Privacy for PoA works in much the same manner. I'd recommend taking the existing poa compose file and making sure you can get blocks being created, then add the orion nodes to it (tie them to three besu nodes of your choice) with ``` "--privacy-enabled=true", "--privacy-url=http://orion1:8888", "--privacy-public-key-file=/config/orion/orion.pub"] ```

joshuafernandes (Sun, 22 Dec 2019 21:31:00 GMT):
And mount one extra volume to each of those containers with: ``` - ./config/orion/networkFiles/orion1/nodeKey.pub:/config/orion/orion.pub```

joshuafernandes (Sun, 22 Dec 2019 21:32:49 GMT):
and then follow the last few steps of the readme to deploy contracts /DApps

mikiasda (Mon, 23 Dec 2019 09:22:14 GMT):
Has joined the channel.

mikiasda (Mon, 23 Dec 2019 09:22:14 GMT):
Hi, im facing a problem when creating my own besu private network using the besu docker image Its runs perfectly but It get stuck trying to connect to more nodes and do not start creating blocks (idk why) any idea? I am sure the extradata field of genesis is right, derived from only one account, which is accesible for the node. I am using IBT btw

mikiasda (Mon, 23 Dec 2019 09:23:06 GMT):
Suspicious thing: my node address is 0xcc... and the eth.coinbase points to 0xfff could be this right? Or the eth.coinbase should be equal to the validator account?

faraggi (Mon, 23 Dec 2019 09:43:48 GMT):
Hi @b1001 , Keep in mind that this is the Hyperledger Besu chat and not a Pegasys chat, even though there are several Pegasys members (including me) that spend time on here. Having said that, Besu's scalability benefits really depend on what solution we're talking about. For example, Besu tooling makes it scalable regarding deployment (with integrated tools for this), monitoring (like graphana and prometheus), and infrastructure (ie multi-tenancy).

faraggi (Mon, 23 Dec 2019 09:43:48 GMT):
Hi @b1001 , Keep in mind that this is the Hyperledger Besu chat and not a Pegasys chat, even though there are several Pegasys members (including me) that spend time on here. Having said that, Besu's scalability benefits really depend on what solution we're talking about. For example, Besu tooling makes it scalable regarding deployment (with integrated tools for this), monitoring (graphana and prometheus), and infrastructure (ie multi-tenancy).

faraggi (Mon, 23 Dec 2019 09:43:48 GMT):
Hi @b1001 , Keep in mind that this is the Hyperledger Besu chat and not a Pegasys chat, even though there are several Pegasys members (including me) that spend time on here. Having said that, Besu's scalability benefits really depend on what solution we're talking about. For example, Besu tooling makes it scalable regarding deployment (with integrated tools for this), monitoring (graphana and prometheus), and infrastructure (ie multi-tenancy), etc...

faraggi (Mon, 23 Dec 2019 09:45:00 GMT):
> Besu is not a sidechain technology Correct. It's a full Ethereum client. We do, however, have some very interesting R&D projects having to do with sidechains ATM.

faraggi (Mon, 23 Dec 2019 09:48:00 GMT):
I don't think there is a recommended generic setting. I've seen networks as low as 2 seconds that work just fine. Really depends on your setup.

faraggi (Mon, 23 Dec 2019 09:51:27 GMT):
Hi @mikis Are you following this? https://besu.hyperledger.org/en/stable/Tutorials/Quickstarts/Privacy-Quickstart/

faraggi (Mon, 23 Dec 2019 09:51:27 GMT):
Hi @mikiasda Are you following this? https://besu.hyperledger.org/en/stable/Tutorials/Quickstarts/Privacy-Quickstart/

mikiasda (Mon, 23 Dec 2019 09:56:33 GMT):
yep, this tutorial among others

mikiasda (Mon, 23 Dec 2019 09:57:14 GMT):
wait, no, I am following this one: https://besu.hyperledger.org/en/stable/Tutorials/Private-Network/Create-IBFT-Network/

mikiasda (Mon, 23 Dec 2019 09:57:19 GMT):
with docker-compose

mikiasda (Mon, 23 Dec 2019 09:57:47 GMT):
I am getting this log continuosly: ```2019-12-23 08:37:58.917+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, wait for peers. 2019-12-23 08:37:58.918+00:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2019-12-23 08:38:03.918+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, wait for peers. 2019-12-23 08:38:03.918+00:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2019-12-23 08:38:08.919+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, wait for peers. 2019-12-23 08:38:08.919+00:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. ```

mikiasda (Mon, 23 Dec 2019 09:58:28 GMT):
and this error from netty: (idk if its realted) ``` java.lang.UnsupportedOperationException: Reflective setAccessible(true) disabled at io.netty.util.internal.ReflectionUtil.trySetAccessible(ReflectionUtil.java:31) ~[netty-common-4.1.34.Final.jar:4.1.34.Final] at io.netty.util.internal.PlatformDependent0$4.run(PlatformDependent0.java:224) ~[netty-common-4.1.34.Final.jar:4.1.34.Final] at java.security.AccessController.doPrivileged(Native Method) ~[?:?] at io.netty.util.internal.PlatformDependent0.(PlatformDependent0.java:218) [netty-common-4.1.34.Final.jar:4.1.34.Final] at io.netty.util.internal.PlatformDependent.isAndroid(PlatformDependent.java:213) [netty-common-4.1.34.Final.jar:4.1.34.Final] at io.netty.util.internal.PlatformDependent.(PlatformDependent.java:81) [netty-common-4.1.34.Final.jar:4.1.34.Final] at io.netty.channel.nio.NioEventLoop.newTaskQueue(NioEventLoop.java:269) [netty-transport-4.1.34.Final.jar:4.1.34.Final] ```

KGiou (Mon, 23 Dec 2019 11:21:56 GMT):
Has joined the channel.

marlow (Mon, 23 Dec 2019 11:40:33 GMT):
Thanks for the response @joshuafernandes ! I started with the poa compose file and just included the orion nodes in the file. At this point the chain is producing blocks. But when I add the volume and edit the nodes to enable privacy then it stops producing blocks.

marlow (Mon, 23 Dec 2019 11:42:17 GMT):

docker-compose_poa.txt

marlow (Mon, 23 Dec 2019 11:43:39 GMT):
This is the custom docker compose i'm trying. Maybe you see something I miss in this config?

faraggi (Mon, 23 Dec 2019 12:45:59 GMT):
Just so we're clear, are you running each of the nods in a different terminal in parallel?

faraggi (Mon, 23 Dec 2019 12:48:33 GMT):
Just so we're clear, are you running each of the nodes in a different terminal?

faraggi (Mon, 23 Dec 2019 12:48:39 GMT):
It should look something like this: https://i.imgur.com/NPvG93B.png

faraggi (Mon, 23 Dec 2019 12:49:14 GMT):
Also, the syncing will take some seconds, maybe a minute to start, after you get the `No sync target, wait for peers.` message

marlow (Mon, 23 Dec 2019 13:20:19 GMT):
@joshuafernandes Nevermind, got it working! Had to make an small adjustment in the ./run.sh and combined your answer with looking at the privacy compose. You think this is worth a pull request? It's a working PoA chain with privacy enabled example, maybe it can help other people aswell?

marlow (Mon, 23 Dec 2019 13:20:19 GMT):
@joshuafernandes Nevermind, got it working! Had to make a small adjustment in the ./run.sh and combined your answer with looking at the privacy compose. You think this is worth a pull request? It's a working PoA chain with privacy enabled example, maybe it can help other people aswell?

faraggi (Mon, 23 Dec 2019 13:40:15 GMT):
I definitely think its worth a PR! :muscle:

marlow (Mon, 23 Dec 2019 14:38:52 GMT):
Cool, I have it ready. But I don't have permissions to push a branch and make a pull request afterwards!

faraggi (Mon, 23 Dec 2019 14:49:09 GMT):
Can you link it here? I'll make sure to show it to a maintainer. Only they can merge PRs.

faraggi (Mon, 23 Dec 2019 14:49:43 GMT):
BTW, anyone can become a maintainer so long as you make 5 meaningful PRs. See here for more into: https://github.com/hyperledger/besu/blob/master/MAINTAINERS.md#becoming-a-maintainer

marlow (Mon, 23 Dec 2019 15:07:48 GMT):
Forked it and made a pull request: https://github.com/PegaSysEng/besu-quickstart/pull/48

marlow (Mon, 23 Dec 2019 15:08:08 GMT):
@faraggi Thanks for the maintainer tip didn't know that!

adityasingh177 (Mon, 23 Dec 2019 15:31:36 GMT):
Has joined the channel.

faraggi (Mon, 23 Dec 2019 15:32:36 GMT):
Thanks @marlow , just don't expect it to get merged before the new year. :)

adityasingh177 (Mon, 23 Dec 2019 15:38:22 GMT):
Hello , i am new to hyperledger besu , i am trying to understand how privacy is maintained using ethereum ?

joshuafernandes (Mon, 23 Dec 2019 20:11:42 GMT):
Very nice @marlow, 100% agree with @faraggi !

RealDeanZhao (Tue, 24 Dec 2019 04:43:50 GMT):
Hello, I tried to sendRawTransaction use web3j to besu network. ` "jsonrpc" : "2.0", "id" : 21, "error" : { "code" : -32602, "message" : "Invalid params" } }`

RealDeanZhao (Tue, 24 Dec 2019 04:43:50 GMT):
Hello, I tried to sendRawTransaction use web3j to besu network. `org.web3j.protocol.exceptions.ClientConnectionException: Invalid response received: 400; { "jsonrpc" : "2.0", "id" : 21, "error" : { "code" : -32602, "message" : "Invalid params" } }`

RealDeanZhao (Tue, 24 Dec 2019 04:43:50 GMT):
Hello, I tried to sendRawTransaction use web3j to besu network. ` org.web3j.protocol.exceptions.ClientConnectionException: Invalid response received: 400; { "jsonrpc" : "2.0", "id" : 21, "error" : { "code" : -32602, "message" : "Invalid params" } } `

RealDeanZhao (Tue, 24 Dec 2019 04:43:50 GMT):
Hello, I used web3j to send a raw transaction to besu network. ` org.web3j.protocol.exceptions.ClientConnectionException: Invalid response received: 400; { "jsonrpc" : "2.0", "id" : 21, "error" : { "code" : -32602, "message" : "Invalid params" } } `

RealDeanZhao (Tue, 24 Dec 2019 04:44:28 GMT):
It worked to send the raw transaction to ganache.

adityasingh177 (Tue, 24 Dec 2019 06:06:06 GMT):
Hello, i am looking for more details on https://jira.hyperledger.org/browse/BESU-52

RealDeanZhao (Tue, 24 Dec 2019 07:19:41 GMT):
how to sign the transaciton with EthereumJS for the ibft network?

RealDeanZhao (Tue, 24 Dec 2019 07:20:03 GMT):
The transaction signature generated by EthereumJS is different with web3js.

RealDeanZhao (Tue, 24 Dec 2019 07:33:50 GMT):
I find the solution, I need to specify the ethereumjs-common options for the transaction: `const customCommon = Common.forCustomChain( "mainnet", { chainId: 6174 }, "istanbul" ); `

mikiasda (Tue, 24 Dec 2019 09:13:14 GMT):
it does not work the sign method from web3?

RealDeanZhao (Tue, 24 Dec 2019 09:13:59 GMT):
web3js works because web3js will automatically help get the chain id from the network.

mikiasda (Tue, 24 Dec 2019 09:15:04 GMT):
I am running the network using docker-compose. A question, the coinbase accounts should be equal to the validator account?

mikiasda (Tue, 24 Dec 2019 09:15:13 GMT):
oh, nice

faraggi (Tue, 24 Dec 2019 09:16:26 GMT):
That's great information, we might consider adding it to the documentation.

mikiasda (Tue, 24 Dec 2019 18:43:39 GMT):
The latter was the problem. Both should be equal. If not there is a problem with the nodekey... Could be a great idea to add tip on the doc about this. "If you want to validate if everything is correct, you should check both validator address and eth.coinbase are equal"

Radhi (Wed, 25 Dec 2019 12:46:18 GMT):
Hi, I want to know when I use this configuration(--bootnodes=enode://@:30303,@:30303) how synchronization is done with the other nodes (which bootnodes will be supported) and when I use web3.js how can I connect to one of the providers (if one bootnodes is faulty).

mikiasda (Wed, 25 Dec 2019 18:09:01 GMT):
Hi, I am following this tutorial: https://besu.hyperledger.org/en/latest/Tutorials/Privacy/eeajs-Multinode-example/ and getting an error when deploying contract. Everything looks fine but I can see in logs this message: `ERROR | PrivacyPrecompiledContract | Failed to process the private transaction: private transaction nonce 13 does not match sender account nonce 14.`

mikiasda (Wed, 25 Dec 2019 18:09:01 GMT):
Hi, I am following this tutorial: https://besu.hyperledger.org/en/latest/Tutorials/Privacy/eeajs-Multinode-example/ and getting an error when deploying contract. Everything looks fine but I can see in logs this message from besu: `ERROR | PrivacyPrecompiledContract | Failed to process the private transaction: private transaction nonce 13 does not match sender account nonce 14.`

mikiasda (Wed, 25 Dec 2019 23:33:51 GMT):
and I am getting in orion of nodes 1 and 2 this error: `[ERROR] [DefaultDispatcher-worker-1] 12-25-2019 22:33:08 n.c.o.h.s.v.HttpErrorHandler - null failed HttpError{error='EnclavePayloadNotFound'} net.consensys.orion.exception.OrionException: null`

mikiasda (Wed, 25 Dec 2019 23:33:51 GMT):
and I am getting in orion of nodes 1 and 2 this error: ```[ERROR] [DefaultDispatcher-worker-1] 12-25-2019 22:33:08 n.c.o.h.s.v.HttpErrorHandler - null failed HttpError{error='EnclavePayloadNotFound'} net.consensys.orion.exception.OrionException: null```

faraggi (Thu, 26 Dec 2019 08:26:46 GMT):
Let me take a look a it and I'll get back to you

faraggi (Thu, 26 Dec 2019 08:27:03 GMT):
Let me take a look a it and I'll get back to you

faraggi (Thu, 26 Dec 2019 08:33:40 GMT):
Hi @Radhi , bootndes will help you discover other peers. Once they are discovered and added to the peer discovery table, they will persist (so long as no restarts happen). Synchronisation is then done by all nodes in the network, not only bootnodes.

faraggi (Thu, 26 Dec 2019 08:42:56 GMT):
If one bootnode is faulty, you will still have the fallback for _peer discovery_. However, AFAIK, the web3js provider will depend on it being accesible.

Yazanator (Thu, 26 Dec 2019 20:04:55 GMT):
Has joined the channel.

StefanPingel (Fri, 27 Dec 2019 02:40:45 GMT):
Has joined the channel.

lucassaldanha (Sat, 28 Dec 2019 20:26:21 GMT):
@mikiasda I have tried the tutorial with the latest version of Besu (1.3.8) and the snapshot version of Orion (1.5.0-SNAPSHOT) and everything seems to be working fine. Maybe you missed something when following the tutorial? I have uploaded my setup here so you can take a look! I hope it helps! https://www.dropbox.com/s/eun6o895pccgaou/IBFT-Network.zip

mikiasda (Sun, 29 Dec 2019 17:10:56 GMT):
Thanks a lot @lucassaldanha ! I wil take a look. I also tried the docker setup included in web3 eea code repository and works fine... I would like to know why I get that error if my setup looks ok... any hint from your side?

madelinemurray (Sun, 29 Dec 2019 21:40:20 GMT):
@adityasingh177 - sorry about the delay in reply. Did you see the additional comments from Tim on https://jira.hyperledger.org/browse/BESU-52? Basically the API method does the same thing as the `--target-gas-limit` option but you can change the target gas limit while Besu is running using the API method. The CLI option doc is here: https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#target-gas-limit This is similar to the relationship between the `--logging`CLI option and `admin_changeLogLevel` API method. https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#logging https://besu.hyperledger.org/en/stable/Reference/API-Methods/#admin_changeloglevel Does that give you enough information or do you have something more specific you wanted to know?

madelinemurray (Sun, 29 Dec 2019 21:42:11 GMT):
@adityasingh177 - this doc describes how privacy works in Besu: https://besu.hyperledger.org/en/stable/Concepts/Privacy/Privacy-Overview/ https://besu.hyperledger.org/en/stable/Concepts/Privacy/Private-Transaction-Processing/

ShaileshGhanekar (Tue, 31 Dec 2019 10:27:06 GMT):
Has joined the channel.

ShaileshGhanekar (Tue, 31 Dec 2019 10:27:09 GMT):
``` ```

ShaileshGhanekar (Tue, 31 Dec 2019 10:27:29 GMT):
``` ```

ShaileshGhanekar (Tue, 31 Dec 2019 10:28:05 GMT):
``` 2019-12-31 04:07:42.492+00:00 | vert.x-worker-thread-11 | DEBUG | PrivateTransactionHandler | Getting privacy group for A1aVtMxLCUHmBVHXoZzzBgPbW/wj5axDpW9X8l91SGo= ```

ShaileshGhanekar (Tue, 31 Dec 2019 10:28:24 GMT):
2019-12-31 04:07:42.492+00:00 | vert.x-worker-thread-11 | DEBUG | PrivateTransactionHandler | Getting privacy group for A1aVtMxLCUHmBVHXoZzzBgPbW/wj5axDpW9X8l91SGo=

MysticRyuujin (Wed, 01 Jan 2020 00:39:37 GMT):
Has joined the channel.

MysticRyuujin (Wed, 01 Jan 2020 00:39:37 GMT):
Hello. Does besu have a config option to contribute to EthStats.net directly or do I need to also figure out the Alethio app? I can't tell from the documentation if that's required just to contribute to the main site.

shemnon (Wed, 01 Jan 2020 02:53:39 GMT):
For ethstats net we use the standard script form https://github.com/cubedro/eth-net-intelligence-api. For ethstats.io we use the ethestats cli (https://github.com/Alethio/ethstats-cli) and it looks to be a fairly simple setup just get this running via your favorite method - ``` node \ ethstats-cli/bin/ethstats-cli.js \ --net "mainnet" \ --register \ --node-name "" \ --account-email "" ```

shemnon (Wed, 01 Jan 2020 02:53:39 GMT):
For ethstats.net we use the standard script form https://github.com/cubedro/eth-net-intelligence-api. For ethstats.io we use the ethestats cli (https://github.com/Alethio/ethstats-cli) and it looks to be a fairly simple setup just get this running via your favorite method - ```bash node \ ethstats-cli/bin/ethstats-cli.js \ --net "mainnet" \ --register \ --node-name "" \ --account-email "" ```

MysticRyuujin (Wed, 01 Jan 2020 04:55:45 GMT):
Alright, thanks for the info. It would be cool if you had native support like Geth and Nethermind. Setting that up is annoying. Do you guys track feature requests? I see there's no "Issues" on the GitHub.

shemnon (Wed, 01 Jan 2020 15:56:21 GMT):
Our issues are JIRA based - https://jira.hyperledger.org/projects/BESU/summary

b1001 (Thu, 02 Jan 2020 03:17:20 GMT):
Thanks for the explanation

bobsummerwill (Thu, 02 Jan 2020 07:07:08 GMT):
Greetings! Building on macOS. Is this EXPECTED? "Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0"

faraggi (Thu, 02 Jan 2020 11:01:19 GMT):
All issues and contributions are welcome. Feel free to add any feature request you'd like to see in Besu.

shemnon (Thu, 02 Jan 2020 18:56:32 GMT):
Standard gradle noise. Ignorable.

ShaileshGhanekar (Fri, 03 Jan 2020 08:49:13 GMT):
Hi, I'm using docker-compose created by @marlow to run privacy PoA network (using IBFT 2.0). I was able to deploy private contract and make private transactions - https://github.com/PegaSysEng/web3js-eea/tree/master/example But, I am getting an error while deploying normal SimpleStorage contract using truffle - https://github.com/katopz/truffle-simple-storage-example What am I missing?

atoulme (Fri, 03 Jan 2020 22:12:49 GMT):
gradle complains a lot

atoulme (Fri, 03 Jan 2020 22:13:06 GMT):
Feel free to open an issue Bob. Sounds like something that can be fixed by a contributor.

coenie (Mon, 06 Jan 2020 11:18:13 GMT):
Hi! I'm looking for any documentation (or perhaps someone here can answer my questions) regarding timestamps in Besu + IBFT2. As far as I can tell, IBFT2 doesn't make any modifications to how timestamps are checked compared to the mainnet consensus algo, is this true? If that is the case, then do the usual "pool.ntp.org +/- 10s" rule get checked? In the case of a IBFT2 network, what do validators reject a block proposed block that doesn't adhere to this rule? Thanks!

coenie (Mon, 06 Jan 2020 11:18:13 GMT):
Hi! I'm looking for any documentation (or perhaps someone here can answer my questions) regarding timestamps in Besu + IBFT2. As far as I can tell, IBFT2 doesn't make any modifications to how timestamps are checked compared to the mainnet consensus algo, is this true? If that is the case, then does the usual "pool.ntp.org +/- 10s" rule get checked? In the case of a IBFT2 network, what do validators reject a block proposed block that doesn't adhere to this rule? Thanks!

coenie (Mon, 06 Jan 2020 11:18:13 GMT):
Hi! I'm looking for any documentation (or perhaps someone here can answer my questions) regarding timestamps in Besu + IBFT2. As far as I can tell, IBFT2 doesn't make any modifications to how timestamps are checked compared to the mainnet consensus algo, is this true? If that is the case, then does the usual "pool.ntp.org +/- 10s" rule get checked? In the case of an IBFT2 network, what do validators reject a block proposed block that doesn't adhere to this rule? Thanks!

coenie (Mon, 06 Jan 2020 11:18:13 GMT):
Hi! I'm looking for any documentation (or perhaps someone here can answer my questions) regarding timestamps in Besu + IBFT2. As far as I can tell, IBFT2 doesn't make any modifications to how timestamps are checked compared to the mainnet consensus algo, is this true? If that is the case, then does the usual "pool.ntp.org +/- 10s" rule get checked? In the case of an IBFT2 network, do validators reject a block proposed block that doesn't adhere to this rule? Thanks!

coenie (Mon, 06 Jan 2020 11:18:13 GMT):
Hi! I'm looking for any documentation (or perhaps someone here can answer my questions) regarding timestamps in Besu + IBFT2. As far as I can tell, IBFT2 doesn't make any modifications to how timestamps are checked compared to the mainnet consensus algo, is this true? If that is the case, then does the usual "pool.ntp.org +/- 10s" rule get checked? In the case of an IBFT2 network, do validators reject a proposed block that doesn't adhere to this rule? Thanks!

faraggi (Mon, 06 Jan 2020 14:52:49 GMT):
*PSA: Reminder that tomorrow is the EMEA/AMER Contributor call* https://wiki.hyperledger.org/display/BESU/2020-01-07+Besu+Contributor+Call @channel

faraggi (Mon, 06 Jan 2020 14:52:49 GMT):
*PSA: Reminder that tomorrow is the EMEA/AMER Contributor call* https://wiki.hyperledger.org/display/BESU/2020-01-07+Besu+Contributor+Call

faraggi (Mon, 06 Jan 2020 14:52:49 GMT):
*PSA: Reminder that tomorrow is the EMEA/AMER Contributor call* https://wiki.hyperledger.org/display/BESU/2020-01-07+Besu+Contributor+Call :mega:

coenie (Tue, 07 Jan 2020 06:37:50 GMT):
Hi, just following up on my above question :)

faraggi (Tue, 07 Jan 2020 10:40:37 GMT):
I'm not sure of the answer but I forwarded it to the team. still waiting for an answer, will update with more info once I get that.

ShaileshGhanekar (Tue, 07 Jan 2020 12:50:24 GMT):
Hi, I'm using docker-compose created by @marlow (https://chat.hyperledger.org/channel/besu?msg=xmA422kWtCGwXMdop) to run privacy PoA network (using IBFT 2.0). I was able to deploy private contract and make private transactions - https://github.com/PegaSysEng/web3js-eea/tree/master/example But, I am getting an error while deploying normal SimpleStorage contract using truffle - https://github.com/katopz/truffle-simple-storage-example What am I missing?

marlow (Tue, 07 Jan 2020 13:36:32 GMT):
@ShaileshGhanekar Hi! To which node are you trying to deploy the contract? Does this also happen when you run the PoW privacy chain?

marlow (Tue, 07 Jan 2020 13:36:32 GMT):
@ShaileshGhanekar this the error `Returned error: The method eth_sendTransaction is not supported. Use eth_sendRawTransaction to send a signed transaction to Besu..` ?

marlow (Tue, 07 Jan 2020 13:36:32 GMT):
@ShaileshGhanekar Hi! is this the error `Returned error: The method eth_sendTransaction is not supported. Use eth_sendRawTransaction to send a signed transaction to Besu..` ?

coenie (Tue, 07 Jan 2020 14:01:22 GMT):
awesome, thanks!

faraggi (Tue, 07 Jan 2020 15:00:40 GMT):
Contributor call starting now. Agenda: https://wiki.hyperledger.org/display/BESU/2020-01-07+Besu+Contributor+Call Zoom: https://consensys.zoom.us/j/725448960

eum602 (Tue, 07 Jan 2020 15:08:59 GMT):
Hello everyone, from time to time I experience messages like this in my nodes:

eum602 (Tue, 07 Jan 2020 15:09:06 GMT):

Clipboard - January 7, 2020 10:08 AM

eum602 (Tue, 07 Jan 2020 15:11:56 GMT):
When it happens the node is not allowed to sync. The network is under IBFT2.0, please can you Pegasys guys help me with this?. Thanks a lot.

faraggi (Tue, 07 Jan 2020 16:29:42 GMT):
If the error you are getting is the one cited by @marlow, then you have to first sign the transaction with Ethsigner or another signing software.

faraggi (Tue, 07 Jan 2020 16:31:13 GMT):
Hi @eum602 First thing I would recommend is upgrade from 1.2.5 to 1.3.8 :)

mattatkiva (Tue, 07 Jan 2020 16:40:22 GMT):
Has left the channel.

aldoborrero (Tue, 07 Jan 2020 19:25:24 GMT):
Has joined the channel.

aldoborrero (Tue, 07 Jan 2020 19:25:25 GMT):
Hi guys! I've noticed that on https://dl.bintray.com/hyperledger-org/besu-repo/org/hyperledger/besu/internal/rocksdb/ there's no published jars for rocksdb module since version 1.3.1-SNAPSHOT while for the rest of other modules is not the case. Should be updated?

aldoborrero (Tue, 07 Jan 2020 19:26:05 GMT):
I discovered today while I was updating my plugin from version 1.2.4 to 1.3.8

aldoborrero (Tue, 07 Jan 2020 19:26:05 GMT):
I discovered it today while I was updating my plugin from version 1.2.4 to 1.3.8

aldoborrero (Tue, 07 Jan 2020 21:06:29 GMT):
Glups, my bad, the artifact was renamed to plugins-rocksdb!

shemnon (Wed, 08 Jan 2020 02:15:41 GMT):
Yea, there are actually two jars with rocksdb in the name, we had to rename them because of maven collisions so instead of picking one to just be rocksdb we did it to both. There are a couple of others that this happend to as well irrc.

ShaileshGhanekar (Wed, 08 Jan 2020 06:41:38 GMT):
Thanks for your quick reply @marlow. To answer your question, no that's not the error I'm getting. Here's truffle log: ``` Compiling your contracts... =========================== > Everything is up to date, there is nothing to compile. Starting migrations... ====================== > Network name: 'development' > Network id: 2018 > Block gas limit: 0x47b760 1_initial_migration.js ====================== Replacing 'Migrations' ---------------------- Error: *** Deployment Failed *** "Migrations" -- Internal error. at /usr/lib/node_modules/truffle/build/webpack:/packages/deployer/src/deployment.js:364:1 at processTicksAndRejections (internal/process/task_queues.js:93:5) at Migration._deploy (/usr/lib/node_modules/truffle/build/webpack:/packages/migrate/migration.js:70:1) at Migration._load (/usr/lib/node_modules/truffle/build/webpack:/packages/migrate/migration.js:57:1) at Migration.run (/usr/lib/node_modules/truffle/build/webpack:/packages/migrate/migration.js:167:1) at Object.runMigrations (/usr/lib/node_modules/truffle/build/webpack:/packages/migrate/index.js:148:1) at Object.runFrom (/usr/lib/node_modules/truffle/build/webpack:/packages/migrate/index.js:110:1) at Object.run (/usr/lib/node_modules/truffle/build/webpack:/packages/migrate/index.js:87:1) at runMigrations (/usr/lib/node_modules/truffle/build/webpack:/packages/core/lib/commands/migrate.js:253:1) at /usr/lib/node_modules/truffle/build/webpack:/packages/core/lib/commands/migrate.js:218:1 Truffle v5.1.6 (core: 5.1.6) Node v12.13.1 ``` and this is the log from rpcnode docker container: ``` 2020-01-08 05:54:34.282+00:00 | vert.x-worker-thread-19 | DEBUG | JsonRpcHttpService | JSON-RPC request -> eth_blockNumber 2020-01-08 05:54:34.283+00:00 | vert.x-worker-thread-19 | DEBUG | JsonRpcHttpService | JSON-RPC request -> eth_getBlockByNumber 2020-01-08 05:54:34.293+00:00 | vert.x-worker-thread-14 | DEBUG | JsonRpcHttpService | JSON-RPC request -> eth_getTransactionCount 2020-01-08 05:54:34.301+00:00 | vert.x-worker-thread-17 | DEBUG | JsonRpcHttpService | JSON-RPC request -> eth_sendRawTransaction 2020-01-08 05:54:34.310+00:00 | vert.x-worker-thread-6 | DEBUG | JsonRpcHttpService | JSON-RPC request -> eth_call 2020-01-08 05:54:34.310+00:00 | vert.x-worker-thread-6 | DEBUG | JsonRpcHttpService | Invalid Params org.hyperledger.besu.ethereum.api.jsonrpc.internal.exception.InvalidJsonRpcParameters: Missing "to" field in call arguments at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthCall.validateAndGetCallParams(EthCall.java:84) ~[besu-api-1.3.8.jar:1.3.8] at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthCall.resultByBlockNumber(EthCall.java:53) ~[besu-api-1.3.8.jar:1.3.8] at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.AbstractBlockParameterMethod.latestResult(AbstractBlockParameterMethod.java:55) ~[besu-api-1.3.8.jar:1.3.8] at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.AbstractBlockParameterMethod.findResultByParamType(AbstractBlockParameterMethod.java:66) ~[besu-api-1.3.8.jar:1.3.8] at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthCall.response(EthCall.java:78) ~[besu-api-1.3.8.jar:1.3.8] at org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService.process(JsonRpcHttpService.java:497) ~[besu-api-1.3.8.jar:1.3.8] at org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService.lambda$handleJsonSingleRequest$6(JsonRpcHttpService.java:375) ~[besu-api-1.3.8.jar:1.3.8] at io.vertx.core.impl.ContextImpl.lambda$executeBlocking$2(ContextImpl.java:316) ~[vertx-core-3.8.0.jar:3.8.0] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?] at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) [netty-common-4.1.34.Final.jar:4.1.34.Final] at java.lang.Thread.run(Thread.java:834) [?:?] ```

marlow (Wed, 08 Jan 2020 09:44:36 GMT):
@ShaileshGhanekar Hmm, haven't seen that one before. I can point you to the `eth_call` docs https://besu.hyperledger.org/en/stable/Reference/API-Methods/#eth_call where the `Missing "to" field in call arguments` is probably coming from. Don't know if it is of use for you, otherwise someone else from the Besu team can help you better than I can!

ShaileshGhanekar (Wed, 08 Jan 2020 09:47:11 GMT):
@marlow thanks I'll take a look!

juancc (Wed, 08 Jan 2020 11:46:29 GMT):
Hi all! Do you know if it's possible to use a Token supply as gas instead of native blockchain coin? I am using Besu on a private POA network. Thank you! :pray:

juancc (Wed, 08 Jan 2020 11:46:29 GMT):
Hi all! Do you know if it's possible to use a Token supply as gas instead of native blockchain coin? I am using Besu on a private POA network. Thank you! 🙏

juancc (Wed, 08 Jan 2020 11:46:29 GMT):
Hi all! Do you know if it's possible to use a Token supply as gas instead of native blockchain coin? I am using Besu on a private POA network. I know it's a weird scenario but any hint, link, doc you could share would be highly appreciated. Thank you! 🙏

niliakis (Wed, 08 Jan 2020 11:54:42 GMT):
Has joined the channel.

faraggi (Wed, 08 Jan 2020 12:00:03 GMT):
Hi @coenie . I got the following answer from the team: > IBFT2 has an allowable clock drift of 1 second, so if a block is proposed 1+ seconds ahead than your node system clock, it will reject it.

faraggi (Wed, 08 Jan 2020 13:19:02 GMT):
> To my knowledge it's not possible, however using the usual Ether/gas mechanism and having a contract that can mint tokens if you send it some Ether and send you Ether if you send it tokens might do the trick depending on the need.

Cody_Accenture (Wed, 08 Jan 2020 13:49:50 GMT):
Has joined the channel.

Cody_Accenture (Wed, 08 Jan 2020 13:59:45 GMT):
Hi team! We are working on a project on eth mainnet and our dev team has some questions with standing up our besu node. Who is the best person that we can sync with?

hmijail (Wed, 08 Jan 2020 13:59:58 GMT):
There is an EIP about doing just that, so no, I don't think you can do it just yet... https://github.com/ethereum/EIPs/issues/865

juancc (Wed, 08 Jan 2020 14:40:02 GMT):
Thank you both guys! :thumbsup:

coenie (Wed, 08 Jan 2020 16:24:31 GMT):
Thanks for that! Do you know if this this documented anywhere? Some more questions about this, what happens if the validator nodes' system clocks are more than 1s apart? What happens if a validator node sets their system clock to 1h in the future and then submit a block with a timestamp 1h in the future? Do the other validators reject that block?

E.alcazar (Wed, 08 Jan 2020 16:24:50 GMT):
Has joined the channel.

E.alcazar (Wed, 08 Jan 2020 16:24:52 GMT):
You can do this right now on any evm based blockchain including mainnnet ethereum. The gist of it is segregating the transactions from the broadcast and having some tokens paid for the gas they consume in tokens. The standard is not approved just yet but openzeppeling has a popular implementation for the solidity side: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/741/commits/67ca9e7a4249184e642ac097b41be08a958fd302 And

E.alcazar (Wed, 08 Jan 2020 16:27:45 GMT):
Here you have another example implementation which works in the same way but doesn´t require your users to use gas at all https://gsn.openzeppelin.com/ Also, if you still want to keep track of a token for your users, if you are running a private POA network the easiest solution would be to rename ether to whatever name you want and force a control of the emission and fees

eum602 (Wed, 08 Jan 2020 16:39:46 GMT):
Hello everyone, I have an IBFT2 network with onchain permissioning, the network works well if the bootnode is also a validator. BUT if I restart the network and all validator points to a boonode that is not a validator then the network never starts validating blocks. I wonder if it is the designed behaviour or there is something else I am missing? . Please help me clarify this. Thanks.

eum602 (Wed, 08 Jan 2020 16:39:46 GMT):
Hello everyone, I have an IBFT2 network with onchain permissioning, the network works well if the bootnode is also a validator. BUT if I restart the network and all validator points to a boonode that is not a validator then the network never starts validating blocks. I wonder if it is the designed behaviour when private network works with onchain permissioning or there is something else I am missing? . Please help me clarify this. Thanks.

juancc (Wed, 08 Jan 2020 17:12:30 GMT):
Hi @eum602 , how many nodes you have in your network? Keep in mind that if you use your bootnode as validator it's added in the consensus and if you don't reach majority then it'll stop creating blocks. For example: 2 validator + 1 bootnode/validator = 3 validators. If you remove the bootnode, then the other 2 don't reach majority and it gets stuck. I hope that helps! :thumbsup:

eum602 (Wed, 08 Jan 2020 17:14:27 GMT):
Thanks Juan, I have 4 validators and one bootnode.

eum602 (Wed, 08 Jan 2020 17:17:52 GMT):
I think that the problem is not related with the number of validators in the network, because this behavior only appears when I have onchain on my nodes.

juancc (Wed, 08 Jan 2020 17:28:43 GMT):
Check this link: https://github.com/PegaSysEng/besu-kubernetes/tree/master/helmfile/private-network-ibft-automated "Minimum Number of Validators IBFT 2.0 requires 4 validators to be Byzantine fault tolerant."

juancc (Wed, 08 Jan 2020 17:30:57 GMT):
Is one of those 4 validators also bootnode?

juancc (Wed, 08 Jan 2020 17:31:14 GMT):
or you have 5 total

juancc (Wed, 08 Jan 2020 17:32:55 GMT):
_"Minimum Number of Validators IBFT 2.0 requires 4 validators to be Byzantine fault tolerant."_

eum602 (Wed, 08 Jan 2020 18:39:15 GMT):
5 in total

eum602 (Wed, 08 Jan 2020 18:41:14 GMT):
4 validators and one bootnode(not validator)

juancc (Wed, 08 Jan 2020 21:40:00 GMT):
Thanks a lot @E.alcazar !! I'll check this out and let you know if it works. Thank you :pray:

GregTheGreek (Wed, 08 Jan 2020 22:12:07 GMT):
hey guys i have a docker question

GregTheGreek (Wed, 08 Jan 2020 22:12:36 GMT):
in the `--mount` what exactly is the `source=/`

GregTheGreek (Wed, 08 Jan 2020 22:12:56 GMT):
Is that assuming I have a local datadir?

GregTheGreek (Wed, 08 Jan 2020 22:38:20 GMT):
nvm

eum602 (Wed, 08 Jan 2020 23:05:22 GMT):
So, finally, is it a normal behaviour that under onchain in ibft2 a bootnode must be a validator ?

eum602 (Wed, 08 Jan 2020 23:05:22 GMT):
So, finally, is it a normal behavior that under onchain in ibft2 a bootnode must be a validator ?

EdJoJob (Wed, 08 Jan 2020 23:19:52 GMT):
is the bootnode in the onchain whitelist?

eum602 (Wed, 08 Jan 2020 23:20:46 GMT):
I have tested both cases when the bootnode is and when not, in both cases it does not allow validators to connect

eum602 (Wed, 08 Jan 2020 23:22:29 GMT):
let me share you mi configuration: let me share you mi configuration: https://github.com/eum602/PANTHEON-CONFIG/tree/master/permissioned-network-onchain

eum602 (Wed, 08 Jan 2020 23:22:29 GMT):
let me share you mi configuration: https://github.com/eum602/PANTHEON-CONFIG/tree/master/permissioned-network-onchain

eum602 (Wed, 08 Jan 2020 23:23:45 GMT):
It only happens under onchain.

faraggi (Thu, 09 Jan 2020 10:10:55 GMT):
Hi @enu Let me try to reproduce this behavior and I'll get back to you

faraggi (Thu, 09 Jan 2020 10:10:55 GMT):
Hi @eum602 Let me try to reproduce this behavior and I'll get back to you

jorikito (Thu, 09 Jan 2020 10:47:50 GMT):
Has joined the channel.

jorikito (Thu, 09 Jan 2020 10:47:55 GMT):
Good morning/afternoon/evening all, my team and I are working on a proof of concept on besu, where we are doing transfering of assets between contracts in different privacy groups. Now we want to be able to search through the past events on a private contract, like you can in normal Web3. I know you can get the events from the private transaction receipt that originated the event. But is there a way of getting all the past events from a private contract and filter through them, like https://web3js.readthedocs.io/en/v1.2.0/web3-eth.html#getpastlogs ?

eum602 (Thu, 09 Jan 2020 14:19:36 GMT):
thanks @faraggi !

E.alcazar (Thu, 09 Jan 2020 14:32:07 GMT):
Hello everyone! I found a bug in the user nonce calculation, it can get transactions stuck in Besu and not in Geth or Parity. I have several tests, and a tool to reproduce the bug, how should I proceed?

E.alcazar (Thu, 09 Jan 2020 14:35:11 GMT):
Also, question about the sync process. 1. I´m trying to sync the mainnet, and I´m topping up 16gb of memory, is memory the bottleneck? it´s around 10 times slower than Geth´s full sync 2. About Besu´s fast sync mode, how does it work? is it like Geth´s fast sync, Parity´s wrap sync, a light node sync? or something else?

faraggi (Thu, 09 Jan 2020 14:43:47 GMT):
Please raise an issue on the Jira board: jira.hyperledger.org/projects/BESU/issues Although, FYI, nonce calculation on Besu is done differently than on Geth or Parity.

faraggi (Thu, 09 Jan 2020 14:47:39 GMT):
1 is definitely related to 2. Geth uses fast-sync by default whereas Besu doens't. So it shouldn't be 10 times slower with the same flags, I recommend using that flag. Besu's fast sync is similar to geth's where the chain state is downloaded and then process and verify it.

E.alcazar (Thu, 09 Jan 2020 14:52:03 GMT):
So the result of running Besu with fast flag is still a full node with all history info cool! I didn´t test fast sync Besu vs fast sync Geth. But in full sync Besu vs full sync Geth, Besu is around 10 times slower bottlenecked by memory (16gb) where as Geth is bottlenecked by CPU

E.alcazar (Thu, 09 Jan 2020 14:52:03 GMT):
So the result of running Besu with fast flag is still a full node with all history info cool! I didn´t test fast sync Besu vs fast sync Geth. But in full sync Besu vs full sync Geth, Besu is around 10 times slower bottlenecked by memory (16gb) where as Geth is bottlenecked by CPU

GregTheGreek (Thu, 09 Jan 2020 15:06:15 GMT):
Clique question: Do I need to pass any specific flag to validate or will it occur automatically?

GregTheGreek (Thu, 09 Jan 2020 15:06:59 GMT):
(assumign my pubkey is a valid validator)

GregTheGreek (Thu, 09 Jan 2020 15:06:59 GMT):
(assuming my pubkey is a valid validator)

shemnon (Thu, 09 Jan 2020 15:07:14 GMT):
If Besu notices it's enode is in the validator set it will produce blocks w/o any special CLI flags

shemnon (Thu, 09 Jan 2020 15:07:20 GMT):
My experiences profiling the sync is that

shemnon (Thu, 09 Jan 2020 15:08:58 GMT):
My experience in profiling the sync is that the native database is the bottleneck for Besu. The most CPU time is locked up in there, single threaded. Besu does grow to full memory size to accomidate the DB cached but even in higher memory systems the DB is the biggest limiter.

shemnon (Thu, 09 Jan 2020 15:08:58 GMT):
My experience in profiling the sync is that the native database is the bottleneck for Besu. The most CPU time is locked up in there, single threaded. Besu does grow to full memory size to accomidate the DB cache but even in higher memory systems the DB is the biggest limiter.

GregTheGreek (Thu, 09 Jan 2020 15:10:28 GMT):
wicked!

E.alcazar (Thu, 09 Jan 2020 15:59:21 GMT):
In full sync limit is the DB as well? I understand why this would be the case in fast sync due to the state discovery process. Disk usage is at around 20%, maybe I´m reading the disk usage wrong. Then adding more memory/swap shouldn´t increase sync speed too much right? Thanks!!

shemnon (Thu, 09 Jan 2020 16:02:24 GMT):
RocksDB has lower performance writing large data as opposed to the go based leveldb impl geth has. There was some specific tweaking in leveldb-go to address this in Geth's most recent update.

jorikito (Thu, 09 Jan 2020 16:23:58 GMT):
https://chat.hyperledger.org/channel/besu?msg=Xhvt5FWLn9bWHMMTQ

jorikito (Thu, 09 Jan 2020 16:24:11 GMT):
Am i correct in stating that this is not doable as of now?

ShaileshGhanekar (Thu, 09 Jan 2020 17:28:10 GMT):
Hi, I'm trying to setup file based permissioned network (both account and node permissioning) using docker. I'm modifying the docker-compose_poa.yml in besu-quickstart repo to spin the network containing 1 bootnode, 1 rpcnode, and 4 validators. Do I have to enable permissioning for all the nodes or doing it just for validators is enough?....please share your thoughts.

faraggi (Thu, 09 Jan 2020 17:43:34 GMT):
> At the moment there's no easy way to do this like. With the things that are in place at the moment it's a case of finding all privacy marker transactions then interrogating the privacy endpoints for those transactions.

FelixS4 (Thu, 09 Jan 2020 17:50:15 GMT):
Has joined the channel.

arash009 (Thu, 09 Jan 2020 22:35:47 GMT):
It depends on what behaviour you want to happen on the network. If you want to ensure all those nodes communicate only with each other and not anyone else, you will need to setup permissioning on each of them.

lucassaldanha (Thu, 09 Jan 2020 23:14:14 GMT):
If your nodes are gonna share the same set of permissions, I'd recommend using onchain permissioning. https://besu.hyperledger.org/en/latest/Concepts/Permissioning/Onchain-Permissioning/

lucassaldanha (Thu, 09 Jan 2020 23:15:42 GMT):
We have in our backlog a JI to implement priv_getLogs. This will make logs generated by private transactions available. It is planned for Q1/Q2 2020.

jorikito (Thu, 09 Jan 2020 23:36:59 GMT):
awesome, thank you for answering!

arash009 (Fri, 10 Jan 2020 00:23:38 GMT):
Hey @eum602 . To clarify, the validators are not peering with the bootnode? If you look up the peers of the bootnode, do you see any that are connected to it? Looking at your configuration, the add_nodes_to_whitelist.sh only adds 4 nodes, are these the 4 validators? How are you adding the bootnode to the whitelist? Also noticed in add_node_as_peer.sh that node3 is not peering with node4

GuillermoDLCO (Fri, 10 Jan 2020 00:38:12 GMT):
Has joined the channel.

GuillermoDLCO (Fri, 10 Jan 2020 00:42:35 GMT):

Clipboard - January 9, 2020 7:42 PM

GuillermoDLCO (Fri, 10 Jan 2020 00:42:39 GMT):
Hello, I have a doubt, according to the documentation when connecting to a public network such as the mainnet or rinkeby I should receive this message from sycing. However, I always get the answer false, so I don't know how I can synchronize my node to get the balance of my account in rinkeby. Could someone please help me, I'm starting with besu.

GuillermoDLCO (Fri, 10 Jan 2020 00:43:07 GMT):

Clipboard - January 9, 2020 7:43 PM

eum602 (Fri, 10 Jan 2020 01:53:24 GMT):
Hello @arash009. Let me answer your questions: 1. The validators peers with the bootnode, so at the end I can see that the bootnode has connection with the four validators (Node-1,Node-2,Node-3 and Node-4). Neverthless each validator only peers with the bootnode. 2. I am not using add_nodes_to_whitelist.sh script. I am only using permissioning through the smart contracts. 3. The bootnode is added to the permissioning through the Dapp (where I have the four validators and the bootnode). 4. add_node_as_peer.sh. I am not using this script. Finally, what I would like to know is if you have tested that communication in onchain permissioning is possible through a Bootnode that is not a validator. I have tested that when a bootnode is also a validator then all works well.

arash009 (Fri, 10 Jan 2020 02:00:32 GMT):
I see, so the validators are peered with the bootnode but not with each other, is that right? We have specific rules in the permissioning logic that allows nodes still to connect to the bootnode if they are not in sync to recieve the latest chain data, so there might be something in there... But we had definately previously tested onchain permissioning in an IBFT2.0 network without any issues

arash009 (Fri, 10 Jan 2020 02:01:25 GMT):
Let us try and replicate the issue

eum602 (Fri, 10 Jan 2020 02:37:24 GMT):
so the validators are peered with the bootnode but not with each other, is that right? ==> yes.

eum602 (Fri, 10 Jan 2020 02:38:15 GMT):
Thanks a lot @arash009

arash009 (Fri, 10 Jan 2020 03:21:40 GMT):
We think we have an idea of whats going on in the setup, let me try and explain: If you are starting your network fresh with the bootnode NOT being a validator, and only nodes 1-4 as validators, we have specific rules that allows nodes to talk to bootnodes as they are not aware of the permissioning rules. When you then try to add a node to the whitelist contracts, those blocks must be mined through the 2/3 of the validators accepting the blocks, because those validators arent on the whitelist, they cant talk to each other and therefore the whitelist never updated. So there are two ways around this that I can think of: 1. Start the network with permissioning disabled, but the contracts still deployed. Add the nodes 1-4 to the whitelist (with permissioning disabled they will peer and validate the blocks). Then bring down all the nodes, turn permissioning on, and bring them back on. 2. Start the network with permissioning on, with the Bootnode ALSO as a validator. Update the whitelist to include all the nodes, then use the IBFT remove validator APIs to remove the bootnode.

faraggi (Fri, 10 Jan 2020 08:07:05 GMT):
The Jira issue Lucas is referring to: https://jira.hyperledger.org/browse/BESU-79

coenie (Fri, 10 Jan 2020 08:37:21 GMT):
@faraggi any update?

faraggi (Fri, 10 Jan 2020 09:15:29 GMT):
Hi @GuillermoDLCO , I'm not able to reproduce the same error you are getting.

faraggi (Fri, 10 Jan 2020 09:15:49 GMT):
I've tried both on mainnet and rinkeby and I get the expected return message.

faraggi (Fri, 10 Jan 2020 09:16:22 GMT):
Can I see what cli arguments you are passing Besu to start?

E.alcazar (Fri, 10 Jan 2020 09:40:43 GMT):
That message is returned when you are not syncing which can mean that either you haven´t started, you have stopped or you are done. Try getBlock, if you see something else than 0x0 you are probably done syncing Try getPeers, if you don´t see any you probably have connectivity issues and haven´t started If you think the syncing has stopped half way through share the logs so we can take a look!

jorikito (Fri, 10 Jan 2020 09:49:14 GMT):
Thank you

eum602 (Fri, 10 Jan 2020 14:33:13 GMT):
@arash009 I made sure that all validators(Node-1,2,3,4) and bootnode are in the nodes-contract. Let me share you a screenshot:

eum602 (Fri, 10 Jan 2020 14:33:56 GMT):

Clipboard - January 10, 2020 9:33 AM

eum602 (Fri, 10 Jan 2020 14:35:55 GMT):
But even in that case I am not able to make connections between validators through that bootnode(regular node)

eum602 (Fri, 10 Jan 2020 14:36:57 GMT):

Clipboard - January 10, 2020 9:36 AM

GuillermoDLCO (Fri, 10 Jan 2020 14:44:44 GMT):
Thanks to replying, I use this command "besu --data-path=/home/dev/Documents/besu-rinkeby/data --rpc-http-enabled --rpc-http-api=ETH,NET,EEA,ADMIN". I want to get my balance when the sycing fisihed. I was deploy contract and send private transation with test account on chainId 2018, now i want to use my account in rinkeby. @E.alcazar I tried getBlock and i got 0x0. With getPeers i got 0x0. I just start 1 node but when i start my privacy network with other node connected with my bootnode i can see the number of nodes conected.

GuillermoDLCO (Fri, 10 Jan 2020 14:44:44 GMT):
Thanks for replying, I used this command "besu --data-path = / home / dev / Documents / besu-rinkeby / data --rpc-http-enabled --rpc-http-api = ETH, NET, EEA, ADMIN" . I want to recover my balance when the synchronization ends. I implemented a contract and sent a private transaction with a test account in chainId 2018, now I want to use my account in rinkeby. @ E.alcazar I tried getBlock and got 0x0. With getPeers I got 0x0. I just started 1 node, but when I start my privacy network with another node connected to my boot node, I can see the number of connected nodes.

GuillermoDLCO (Fri, 10 Jan 2020 14:45:11 GMT):
Here is my log: https://github.com/GuillermoDLCO/besu-test/blob/master/rinkeby/conection-log

shemnon (Fri, 10 Jan 2020 15:12:58 GMT):
You are not getting any peers. You are listening on 127.0.0.1. Are you in docker? If so set `--p2p-host` to the external IP address and `--p2p-interface=0.0.0.0`, if not in a container set `--p2p-host=0.0.0.0` or the actual IP of your machine.

shemnon (Fri, 10 Jan 2020 15:14:03 GMT):
also, add `--sync-mode=fast` unless you want an archival node.

shemnon (Fri, 10 Jan 2020 15:14:03 GMT):
Are you runningwith VirtualBox? can an external computer send a tcp and upd packet on 30303 to your virtualbox instance?

GuillermoDLCO (Fri, 10 Jan 2020 15:43:23 GMT):
I tried ' ✘ ⚙ dev@dev-VirtualBox  ~/Documents/besu-rinkeby/data  besu --network=rinkeby --data-path=/home/dev/Documents/besu-rinkeby/data --rpc-http-enabled --rpc-http-api=ETH,NET,ADMIN --p2p-host=0.0.0.0 --sync-mode=fast' https://github.com/GuillermoDLCO/besu-test/blob/master/rinkeby/conection-log2.

GuillermoDLCO (Fri, 10 Jan 2020 15:43:23 GMT):
I tried ' besu --network=rinkeby --data-path=/home/dev/Documents/besu-rinkeby/data --rpc-http-enabled --rpc-http-api=ETH,NET,ADMIN --p2p-host=0.0.0.0 --sync-mode=fast' https://github.com/GuillermoDLCO/besu-test/blob/master/rinkeby/conection-log2. Following documentation just

GuillermoDLCO (Fri, 10 Jan 2020 15:45:05 GMT):
Following the documentation I should only be able to connect to a basic configuration

GuillermoDLCO (Fri, 10 Jan 2020 15:48:52 GMT):
I still can't sync it, I'm still getting the same rpc responses

shemnon (Fri, 10 Jan 2020 15:50:12 GMT):
Based on your hostname I gather you are running inside of VirtualBox. Running in VirtualBox is not something we typically expect. Networking appears to be the issue and there are many ways to do it in VirtualBox that I am not conversant in. `--p2p-host` should be the IP address that external clients can send inbound messages to your VirtualBox instance. in this case set `--p2p-interface=0.0.0.0` as well.

shemnon (Fri, 10 Jan 2020 15:50:40 GMT):
Are you runningwith VirtualBox? can an external computer send a tcp and upd packet on 30303 to your virtualbox instance?

GuillermoDLCO (Fri, 10 Jan 2020 15:52:58 GMT):
Yes, I am in virtual box, I will verify what you tell me. Thank you very much for answering :D

GuillermoDLCO (Fri, 10 Jan 2020 17:34:26 GMT):
thanks now I can synchronize with my virtualized node. I had to add this change --rpc-http-host = 0.0.0.0 --host-whitelist = "*" and open the specific ports

lucassaldanha (Sun, 12 Jan 2020 20:17:52 GMT):
A good way to debug permissioning is enabling TRACE log level for `org.hyperledger.besu.ethereum.permissioning`. If the nodes aren't connecting due to permissioning, you should see some messages about it in the logs.

lucassaldanha (Sun, 12 Jan 2020 20:19:32 GMT):
Also, it might be worth double checking that the enode URL of each node matches the permissioning rules stored in the contracts (nodeID, IP, port).

eum602 (Sun, 12 Jan 2020 23:33:48 GMT):
Hello Lucas, I have checked that the bootnode works without permissioning(allowing communication between validators) ==> the configuration is ok. Also checked that the bootnode is in the smart contract.

eum602 (Sun, 12 Jan 2020 23:35:15 GMT):
I think you can simply reproduce this by using the example in the besu docs but adding a new node (not validator) as a bootnode.

lucassaldanha (Sun, 12 Jan 2020 23:38:22 GMT):
Have you tried the trace logs to check the permissioning rule that is blocking the node connection?

eum602 (Sun, 12 Jan 2020 23:40:50 GMT):
yes, bootnode shares other validators enode to some validator but for some reason those are rejected.

eum602 (Sun, 12 Jan 2020 23:41:06 GMT):
yes, bootnode shares other validators enode to some validator but for some reason those are rejected.

lucassaldanha (Sun, 12 Jan 2020 23:42:48 GMT):
I'm asking about the log trace messages. It would be helpful if you could share the logs showing the permissioning rules rejecting the connection. You can enable TRACE log level for org.hyperledger.besu.ethereum.permissioning (https://besu.hyperledger.org/en/latest/HowTo/Monitor/Logging/#advanced-custom-logging)

eum602 (Sun, 12 Jan 2020 23:44:45 GMT):
I simply used this, when starting the node: --logging=ALL

lucassaldanha (Sun, 12 Jan 2020 23:45:11 GMT):
That works. But it will generate too much logging that is not related to the problem.

lucassaldanha (Sun, 12 Jan 2020 23:45:20 GMT):
Anyway, can you share the log?

eum602 (Sun, 12 Jan 2020 23:45:37 GMT):
ok, I will

lucassaldanha (Sun, 12 Jan 2020 23:45:40 GMT):
Thanks!

eum602 (Sun, 12 Jan 2020 23:46:00 GMT):
--logging=TRACE will be enough

Jemal (Mon, 13 Jan 2020 05:34:33 GMT):
Has joined the channel.

Jemal (Mon, 13 Jan 2020 05:35:41 GMT):
``` How to Monitor Performance for Multiple Nodes? ```

Jemal (Mon, 13 Jan 2020 05:35:41 GMT):
``` \textcolor{blue}{How to Monitor Performance for Multiple Nodes? } ```

Jemal (Mon, 13 Jan 2020 05:35:41 GMT):
How to Monitor Performance for Multiple Nodes? ```

Jemal (Mon, 13 Jan 2020 05:35:41 GMT):
How to Monitor Performance for Multiple Nodes?

Jemal (Mon, 13 Jan 2020 05:35:41 GMT):
\color{blue} How to Monitor Performance for Multiple Nodes?

Jemal (Mon, 13 Jan 2020 05:35:41 GMT):
*How to Monitor Performance for Multiple Nodes?*

Jemal (Mon, 13 Jan 2020 05:35:46 GMT):
I am using Hyperledger Besu for my research. I was able to start a network of around 10 nodes on a single computer. I am running some application on the network. I was interested to measure the performance of the network using different metrics such as: Transaction latency Transaction Throughtput Disk, memory and CPU usage What is the best way to do that? Is there a tool to do that? If not, is it possible to insert my own code inside Besu project to monitor these metrics? If yes, where exactly?

bobsummerwill (Mon, 13 Jan 2020 06:54:42 GMT):
@atoulme I had a quick look at where the warnings were coming from and they seemed to be related to packages which Besu was dependent on, so this is probably something I would have to chase all the way up the chain. It reminds me of warnings-as-errors discipline which I was trying to get going on the FIFA team at EA. That was not helped at all by the fact that the system headers which Microsoft were shipping themselves did not compile with -W4 or -Wall. Might be the case here, eh? That the "broken windows" of ignoring Gradle warnings (because there are always noisy gradle warnings) means everybody always ignores gradle warnings.

faraggi (Mon, 13 Jan 2020 10:32:23 GMT):
This hyperledger project might interest you: https://www.hyperledger.org/projects/caliper *docs*: https://hyperledger.github.io/caliper/vLatest/installing-caliper/ *chat*: https://chat.hyperledger.org/channel/caliper However, it isn't fully besu-ready yet so you might have to tweak it or contribute to the project :) in order for it to do exactly what you listed.

faraggi (Mon, 13 Jan 2020 10:37:44 GMT):
Yes, @eum602 I believe that'd be enough.

richzhao (Mon, 13 Jan 2020 10:57:41 GMT):
Has joined the channel.

marlow (Mon, 13 Jan 2020 15:19:08 GMT):
Hi, Is there a recommended way to deploy a privacy enabled private network with 5 nodes? I'm currently running into stability issues with the orion nodes. Currently I try to host the besu-quickstart in a Digital Ocean droplet. It is running fine for like 6-7 hours. After that time i'm getting back errors from the orion nodes: `{“jsonrpc”:“2.0",“id”:1,“error”:{“code”:-50100,“message”:“Error communicating with enclave”}}` and `NODE_PUSHING_TO_PEER`

marlow (Mon, 13 Jan 2020 15:19:08 GMT):
Hi, Is there a recommended way to deploy a privacy enabled private network with 5 nodes? I'm currently running into stability issues with the orion nodes. Running `./run_privacy.sh -c ibft2` Currently I try to host the besu-quickstart in a Digital Ocean droplet. It is running fine for like 6-7 hours. After that time i'm getting back errors from the orion nodes: `{“jsonrpc”:“2.0",“id”:1,“error”:{“code”:-50100,“message”:“Error communicating with enclave”}}` and `NODE_PUSHING_TO_PEER`

marlow (Mon, 13 Jan 2020 15:19:08 GMT):
Hi, Is there a recommended way to deploy a privacy enabled private network with 5 nodes? I'm currently running into stability issues with the orion nodes. Currently I try to host the besu-quickstart in a Digital Ocean droplet. It is running fine for like 6-7 hours. Running `./run_privacy.sh -c ibft2` After that time i'm getting back errors from the orion nodes: `{“jsonrpc”:“2.0",“id”:1,“error”:{“code”:-50100,“message”:“Error communicating with enclave”}}` and `NODE_PUSHING_TO_PEER`

lucassaldanha (Mon, 13 Jan 2020 19:49:30 GMT):
The recommended deployment for production is running each service in its own instance. Here you can find the system requirements for Besu: https://besu.hyperledger.org/en/stable/HowTo/Get-Started/System-Requirements/

lucassaldanha (Mon, 13 Jan 2020 19:50:24 GMT):
I'm not familiar with Digital Ocean offer, what droplet configuration are you using?

atoulme (Mon, 13 Jan 2020 19:58:21 GMT):
test

atoulme (Mon, 13 Jan 2020 19:59:39 GMT):
@bobsummerwill the chat won't let me answer in thread, it's painful. I believe Danno just fixed the gradle warnings in a PR. I haven't had a chance to try.

marlow (Mon, 13 Jan 2020 20:14:21 GMT):
@lucassaldanha Using a Ubuntu 18.04, 6vCPU, 16 GB RAM, 320GB Disk dropplet on Digital Ocean. Saw that it was recommended to deploy each service seperate. My current setup isn't as it is running all nodes (besu-quickstart with 5 nodes) on the same dropplet(instance). Which probably can be the reason for the stability issues I guess.

marlow (Mon, 13 Jan 2020 20:15:06 GMT):
Guess a switch to kubernetes will be a better option, as it will deploy seperate services. I could try to use something like Kompose to generate k8s files from the `./docker-compose_privacy` and try to make a privacy enabled config for kubernetes?

lucassaldanha (Mon, 13 Jan 2020 20:41:12 GMT):
We have a reference implementation that you could use as a starting point: https://github.com/PegaSysEng/besu-kubernetes If you get into trouble give us a shout and hopefully somene that knows kubernetes better than I do will be able to help! :)

eum602 (Mon, 13 Jan 2020 21:38:37 GMT):

bootnode-logs.zip

eum602 (Mon, 13 Jan 2020 21:39:31 GMT):

valiator3-logs.zip

eum602 (Mon, 13 Jan 2020 21:40:04 GMT):
Ok @lucassaldanha I hope these logs help to find the issue.

Jemal (Tue, 14 Jan 2020 00:46:27 GMT):
@faraggi thank you. I knew caliper. I have gone through the documentation. It looks promising for the future. But it is not yet ready for now as you said.

Jemal (Tue, 14 Jan 2020 00:58:36 GMT):
@faraggi Also i found caliper a bit inflexible. It doesn't even allow you to run different transactions depending on your application. I was wondering if i can add some code inside Besu project itself. I believe that is more flexible than using caliper. I am already running Besu source code on Intellij. But i couldn't easily figure out where i should insert my code. Can you help on that? Just a hint

arash009 (Tue, 14 Jan 2020 01:22:12 GMT):
Awesome, thanks @eum602 We'll take a look and see what we can find out

marlow (Tue, 14 Jan 2020 06:19:47 GMT):
Will use that as a starting point indeed. If I can't figure it out, I'll send another message. But I'll try first!

marlow (Tue, 14 Jan 2020 06:19:47 GMT):
Will use that as a starting point indeed. If I can't figure it out, I'll send another message. But I'll try first, any other tips on how to do this are always welcome!

marlow (Tue, 14 Jan 2020 06:56:20 GMT):
Will use that as a starting point indeed. If I can't figure it out, I'll send another message. But I'll try first, any other tips on how to do this are always welcome!

marlow (Tue, 14 Jan 2020 09:55:00 GMT):
I'm trying to deploy a orion node in kubernetes with this yaml file: ` apiVersion: extensions/v1beta1 kind: Deployment metadata: name: orion1 spec: replicas: 1 strategy: type: Recreate template: metadata: labels: io.kompose.service: orion1 spec: containers: - args: - /config/orion/orion.conf env: - name: LOG4J_CONFIGURATION_FILE value: /config/log-config.xml image: pegasyseng/orion:develop name: orion1 resources: {} volumeMounts: - mountPath: /config/ name: log-config - mountPath: /config/orion/ name: orion-config - mountPath: /var/log/ name: log restartPolicy: Always volumes: - name: orion-config configMap: name: besu-configmap items: - key: orion.conf path: orion.conf - name: log-config configMap: name: besu-configmap items: - key: log-config.xml path: log-config.xml - name: log status: {} ` I get this far, and then I don't know where the following error comes from: ` {"timestamp":"2020-01-14T09:48:57,132","level":"INFO","thread":"main","class":"Orion","message":"starting orion","short_message":""} {"timestamp":"2020-01-14T09:48:57,228","level":"INFO","thread":"main","class":"Orion","message":"using /config/orion/orion.conf provided config file","short_message":""} {"timestamp":"2020-01-14T09:48:57,352","level":"ERROR","thread":"main","class":"Orion","message":"Unexpected 'd', expected ], a comma, or a newline (line 8, column 19)","short_message":""} Unexpected 'd', expected ], a comma, or a newline (line 8, column 19)

marlow (Tue, 14 Jan 2020 09:55:00 GMT):
I'm trying to deploy a orion node in kubernetes with this yaml file: ` apiVersion: extensions/v1beta1 kind: Deployment metadata: name: orion1 spec: replicas: 1 strategy: type: Recreate template: metadata: labels: io.kompose.service: orion1 spec: containers: - args: - /config/orion/orion.conf env: - name: LOG4J_CONFIGURATION_FILE value: /config/log-config.xml image: pegasyseng/orion:develop name: orion1 resources: {} volumeMounts: - mountPath: /config/ name: log-config - mountPath: /config/orion/ name: orion-config - mountPath: /var/log/ name: log restartPolicy: Always volumes: - name: orion-config configMap: name: besu-configmap items: - key: orion.conf path: orion.conf - name: log-config configMap: name: besu-configmap items: - key: log-config.xml path: log-config.xml - name: log status: {} ` I get this far, and then I don't know where the following error comes from: `{"timestamp":"2020-01-14T09:48:57,132","level":"INFO","thread":"main","class":"Orion","message":"starting orion","short_message":""} {"timestamp":"2020-01-14T09:48:57,228","level":"INFO","thread":"main","class":"Orion","message":"using /config/orion/orion.conf provided config file","short_message":""} {"timestamp":"2020-01-14T09:48:57,352","level":"ERROR","thread":"main","class":"Orion","message":"Unexpected 'd', expected ], a comma, or a newline (line 8, column 19)","short_message":""} Unexpected 'd', expected ], a comma, or a newline (line 8, column 19)`

marlow (Tue, 14 Jan 2020 09:55:00 GMT):
I'm trying to deploy a orion node in kubernetes with this yaml file: `apiVersion: extensions/v1beta1 kind: Deployment metadata: name: orion1 spec: replicas: 1 strategy: type: Recreate template: metadata: labels: io.kompose.service: orion1 spec: containers: - args: - /config/orion/orion.conf env: - name: LOG4J_CONFIGURATION_FILE value: /config/log-config.xml image: pegasyseng/orion:develop name: orion1 resources: {} volumeMounts: - mountPath: /config/ name: log-config - mountPath: /config/orion/ name: orion-config - mountPath: /var/log/ name: log restartPolicy: Always volumes: - name: orion-config configMap: name: besu-configmap items: - key: orion.conf path: orion.conf - name: log-config configMap: name: besu-configmap items: - key: log-config.xml path: log-config.xml - name: log status: {} ` I get this far, and then I don't know where the following error comes from: `{"timestamp":"2020-01-14T09:48:57,132","level":"INFO","thread":"main","class":"Orion","message":"starting orion","short_message":""} {"timestamp":"2020-01-14T09:48:57,228","level":"INFO","thread":"main","class":"Orion","message":"using /config/orion/orion.conf provided config file","short_message":""} {"timestamp":"2020-01-14T09:48:57,352","level":"ERROR","thread":"main","class":"Orion","message":"Unexpected 'd', expected ], a comma, or a newline (line 8, column 19)","short_message":""} Unexpected 'd', expected ], a comma, or a newline (line 8, column 19)`

marlow (Tue, 14 Jan 2020 09:55:00 GMT):
I'm trying to deploy a orion node in kubernetes with this yaml file: I get this far, and then I don't know where the following error comes from: `{"timestamp":"2020-01-14T09:48:57,132","level":"INFO","thread":"main","class":"Orion","message":"starting orion","short_message":""} {"timestamp":"2020-01-14T09:48:57,228","level":"INFO","thread":"main","class":"Orion","message":"using /config/orion/orion.conf provided config file","short_message":""} {"timestamp":"2020-01-14T09:48:57,352","level":"ERROR","thread":"main","class":"Orion","message":"Unexpected 'd', expected ], a comma, or a newline (line 8, column 19)","short_message":""} Unexpected 'd', expected ], a comma, or a newline (line 8, column 19)`

marlow (Tue, 14 Jan 2020 09:55:00 GMT):
I'm trying to deploy a orion node in kubernetes with this yaml file: https://www.codepile.net/pile/Bx1bgLn5 I get this far, and then I don't know where the following error comes from: `{"timestamp":"2020-01-14T09:48:57,132","level":"INFO","thread":"main","class":"Orion","message":"starting orion","short_message":""} {"timestamp":"2020-01-14T09:48:57,228","level":"INFO","thread":"main","class":"Orion","message":"using /config/orion/orion.conf provided config file","short_message":""} {"timestamp":"2020-01-14T09:48:57,352","level":"ERROR","thread":"main","class":"Orion","message":"Unexpected 'd', expected ], a comma, or a newline (line 8, column 19)","short_message":""} Unexpected 'd', expected ], a comma, or a newline (line 8, column 19)`

marlow (Tue, 14 Jan 2020 09:55:00 GMT):
I'm trying to deploy a orion node in kubernetes with this yaml file: https://www.codepile.net/pile/Bx1bgLn5 I get this far, and then I don't know where the following error comes from: `{"timestamp":"2020-01-14T09:48:57,352","level":"ERROR","thread":"main","class":"Orion","message":"Unexpected 'd', expected ], a comma, or a newline (line 8, column 19)","short_message":""}`

marlow (Tue, 14 Jan 2020 16:07:44 GMT):
@lucassaldanha Managed to get it almost working I think! This is the fork i'm working on: https://github.com/marlowl/besu-kubernetes Still getting the following error from the orion pod `Orion failed to start: Cannot assign requested address`

marlow (Tue, 14 Jan 2020 16:07:44 GMT):
@lucassaldanha Managed to get it almost working I think! This is the fork i'm working on: https://github.com/marlowl/besu-kubernetes Still getting the following error from the orion pod `Orion failed to start: Cannot assign requested address` . It is coming from the `orion.conf`, when I use `http://127.0.0.1:8080/` the orion node starts. When I use `http://orion1:8080/` then the error appears

Silona (Tue, 14 Jan 2020 16:49:06 GMT):
Help Us Help you! Attend the Developer Relationship Meeting with Myself and our Marketing Dept. tomorrow at 9:00am Pacific Time. For the agenda and Dial in info https://wiki.hyperledger.org/display/Marketing/2020-01-15+Meeting+notes

Silona (Tue, 14 Jan 2020 17:01:01 GMT):
Calling all Projects! We will have a special Kiosk setup at Hyperledger Global Forum for Projects. We are asking that all projects sign up to do 10 minute presentations. https://wiki.hyperledger.org/display/HGF/Projects+Kiosk We will close this page on Feb 28 for printing reasons.

Silona (Tue, 14 Jan 2020 17:02:29 GMT):
Calling all Projects, SIG, and WG!!! We will have a Video recording Studio setup at HGF (Hyperledger Global Forum). We are asking that all projects and groups help us create a 5 minute video about your group so that we can promote it afterward. Sign up Here!

Silona (Tue, 14 Jan 2020 17:03:43 GMT):
https://wiki.hyperledger.org/display/HGF/Video+Recording+Schedule

fermabd (Tue, 14 Jan 2020 17:16:00 GMT):
Has joined the channel.

fermabd (Tue, 14 Jan 2020 17:16:02 GMT):
hi guys! We try to deploy a private network with IBFT2, using different VMs, located in different data centers, but we encounter a problem with bootnodes. If we try to add peers manually it works, but if we try to connect via bootnodes doesn't work. Does anybody encounter the same issue?

fermabd (Tue, 14 Jan 2020 17:16:40 GMT):
we use docker

VipinB (Tue, 14 Jan 2020 17:49:20 GMT):
I am proposing to the Capital Markets SIG (CMSIG) to workshop a simple Token using TTF (Token Taxonomy Framework) towards implementation in Besu. The CMSIG is the ideal venue for this, since we have a mix of participants, both business and technical (including attorneys, traders, developers.)-we may be able to attract more since we are completely open. The actual effort can be housed in Hyperledger labs. Would be good to know whether there are any comparable initiatives out there. We can rapidly bootstrap a basic token definition and make plans for a BESU implementation. Our meeting is tomorrow (Jan 15) at 10 am EST (15 UTC) join us at https://zoom.us/my/hyperledger.community.backup https://wiki.hyperledger.org/display/CMSIG/2020-01-15

VipinB (Tue, 14 Jan 2020 17:49:20 GMT):
I am proposing to the Capital Markets SIG (CMSIG) to workshop a simple Token using TTF (Token Taxonomy Framework) towards implementation in Besu. This is at the suggestion of Mani Pillai CEO of swapshub. It would be great to have some participation from the Besu community. The TTF has active membership from Accenture, IBM and others who are prominent in Hyperledger. The CMSIG is the ideal venue for this, since we have a mix of members, both business and technical -we may be able to attract more since we are completely open. The actual effort can be housed in Hyperledger labs. Would be good to know whether there are any comparable initiatives out there. We can rapidly bootstrap a basic token definition and make plans for a BESU implementation. Our meeting is tomorrow (Jan 15) at 10 am EST (15 UTC) join us at https://zoom.us/my/hyperledger.community.backup https://wiki.hyperledger.org/display/CMSIG/2020-01-15

VipinB (Tue, 14 Jan 2020 17:49:20 GMT):
We are creating a proposal in the Capital Markets SIG (CMSIG) to workshop a simple Token using TTF (Token Taxonomy Framework) towards implementation in Besu. This is at the suggestion of Mani Pillai CEO of swapshub. It would be great to have some participation from the Besu community. The TTF has active membership from Accenture, IBM and others who are prominent in Hyperledger. The CMSIG is the ideal venue for this, since we have a mix of members, both business and technical -we may be able to attract more since we are completely open. The actual effort can be housed in Hyperledger labs. Would be good to know whether there are any comparable initiatives out there. We can rapidly bootstrap a basic token definition and make plans for a BESU implementation. Our meeting is tomorrow (Jan 15) at 10 am EST (15 UTC) join us at https://zoom.us/my/hyperledger.community.backup https://wiki.hyperledger.org/display/CMSIG/2020-01-15

VipinB (Tue, 14 Jan 2020 17:49:20 GMT):
We are creating a proposal in the Capital Markets SIG (CMSIG) to workshop a simple Token using TTF (Token Taxonomy Framework) towards implementation in Besu. This is at the suggestion of Mani Pillai CEO of swapshub. It would be great to have some participation from the Besu community. The TTF has active membership from Accenture, IBM and others who are prominent in Hyperledger. The CMSIG is the ideal venue for this, since we have a mix of members, both business and technical -we may be able to attract more since we are completely open. The actual effort can be housed in Hyperledger labs. Would be good to know whether there are any comparable initiatives out there. We can rapidly bootstrap a basic token definition and make plans for a BESU implementation. Our meeting is tomorrow (Jan 15) at 10 am EST (15 UTC) join us at https://zoom.us/my/hyperledger.community.backup The agenda is here https://wiki.hyperledger.org/display/CMSIG/2020-01-15

lucassaldanha (Tue, 14 Jan 2020 22:37:42 GMT):
Double check your network config to ensure peer discovery protocol can run successfully. This link should give you a clear list of the ports required. https://besu.hyperledger.org/en/latest/HowTo/Find-and-Connect/Configuring-Ports/

lucassaldanha (Tue, 14 Jan 2020 22:37:58 GMT):
Let us know if it helps!

reddy (Tue, 14 Jan 2020 23:32:42 GMT):
Has joined the channel.

hmijail (Tue, 14 Jan 2020 23:40:58 GMT):
@Jemal , if you say what kind of code you want to add or are looking for we can try guiding you. Unfortunately there is no real documentation about the architecture of Besu, but there are a few talks recorded about it which might be a good starting point: https://www.youtube.com/channel/UC2iGGbbKzS2hYwcZ9xBS-6A/videos

hmijail (Tue, 14 Jan 2020 23:48:45 GMT):
Also, regarding running 10 nodes on a single computer: there is a facility to run Besu as a thread, which should help you with the overhead of the JVMs. The acceptance tests use this by setting the system property acctests.runBesuAsProcess

hmijail (Tue, 14 Jan 2020 23:50:01 GMT):
though I hope you are careful about any measurements taken in such environment, threaded or not :)

Jemal (Wed, 15 Jan 2020 00:06:15 GMT):
Hi hmijal. Thank you very much. That was an important info. Can you explain more about "acctests.runBesuAsProcess"? The code i wanted to add is: 1. *For transaction latency*: I want to track the total time it takes for a transaction from the time it is submitted to the network by a client until it is commited to the Blockchain. I want to calculate the average latency for the network at different load. 2. *For throughtput:* i want to monitor the number of transactions commited to the network per second 3. Third, i want to measure the average resource consumption (Memory, Cpu, or Disk) by nodes

hmijail (Wed, 15 Jan 2020 00:22:01 GMT):
Are you sure you could trust latency or throughput measurements taken for 10 nodes in a single computer?

Jemal (Wed, 15 Jan 2020 00:24:35 GMT):
Why did you ask that? Are you afraid that the latency will be low compared to the real network latency?

Jemal (Wed, 15 Jan 2020 00:26:10 GMT):
because of low propagation time

Jemal (Wed, 15 Jan 2020 00:26:10 GMT):
i mean because of fast propagation time

hmijail (Wed, 15 Jan 2020 00:26:42 GMT):
I would guess that your measurements will be skewed/dominated by the multitasking capabilities of your OS...

Jemal (Wed, 15 Jan 2020 00:27:26 GMT):
I see

Jemal (Wed, 15 Jan 2020 00:30:46 GMT):
I got it. Thanks. Currently, I this is the only resource i have. So what do you suggest me? If not to avoid at least to reduce the effect?

hmijail (Wed, 15 Jan 2020 00:33:06 GMT):
use as few nodes as possible. Ensure that there are more CPUs than nodes, and that virtual memory is not used. If you wanted to be as realistic as possible, inject some delay in the network connections with some network capability in your OS.

hmijail (Wed, 15 Jan 2020 00:33:06 GMT):
use as few nodes as possible. Ensure that the number of nodes is not greater than the number of CPUs, and that virtual memory is not used. If you wanted to be as realistic as possible, inject some delay in the network connections with some network capability in your OS.

Jemal (Wed, 15 Jan 2020 00:42:04 GMT):
That was very nice info thanks.

Jemal (Wed, 15 Jan 2020 00:43:58 GMT):
One last question: How can i inject some delay in the network connections ? Do you mean adding some delay in Besu nodes communication?

Jemal (Wed, 15 Jan 2020 00:43:58 GMT):
@hmijail Thank you very much. I will check it. I am glad that there are people like you out there who are dedicated to help other people

hmijail (Wed, 15 Jan 2020 00:57:17 GMT):
I would do it at the OS level, so it depends on your OS... https://stackoverflow.com/questions/130354/how-do-i-simulate-a-low-bandwidth-high-latency-environment

hmijail (Wed, 15 Jan 2020 01:03:08 GMT):
(and while we're talking about this: when checking the CPU vs node numbers, ensure that the nodes run on full cores, not "hardware thread" ones (HyperThreading, etc))

Jemal (Wed, 15 Jan 2020 01:03:54 GMT):
Okay Thanks

jinnyeon (Wed, 15 Jan 2020 02:17:29 GMT):
Has joined the channel.

jinnyeon (Wed, 15 Jan 2020 02:17:29 GMT):
keymanagement

jinnyeon (Wed, 15 Jan 2020 02:34:15 GMT):
Hi guys. It's a question about the Besu 1.4 version. Do you know anything about Advanced key managemet? I want to know what features they provide and how they differ from EthSigner.

arash009 (Wed, 15 Jan 2020 02:59:46 GMT):
Hi @jinnyeon This around additional capabilities that we are building into Ethsigner. Ethsigner now supports the ability to have multiple keys used both locally as well as with external vaults and signers. We are also building in TLS capabilities for more security which will be included with the 1.4 release.

arash009 (Wed, 15 Jan 2020 03:22:27 GMT):
You may also want to use some of our metrics APIs to plug into Prometheus and Graphana for visuals. https://besu.hyperledger.org/en/stable/HowTo/Monitor/Metrics/

Jemal (Wed, 15 Jan 2020 03:26:48 GMT):
@arash009 Thanks. Does Prometheus support monitoring things like transaction accepted time or commited time?

arash009 (Wed, 15 Jan 2020 03:33:16 GMT):
No, unfortunately not. Its more around the hardware performance (CPU, Disk usage), but also chain syncronization and block production, but not tx throughput

Jemal (Wed, 15 Jan 2020 03:36:18 GMT):
I see. So I am running 10 nodes on one PC. If i use Prometheus to monitor CPU, Disk usage).., does it give me the result for each node separately or just the average for all nodes?

jinnyeon (Wed, 15 Jan 2020 04:32:54 GMT):
Thanks for the reply. In addition to the question, EthSigner seems to have an advantage in keeping keys secure. However, when recovering after losing a key, Ripple uses a regular key pair and Bitcoin's Hierarchical Deterministic Key. Is there a similar function in Besu?

faraggi (Wed, 15 Jan 2020 08:34:16 GMT):
Hello @VipinB . I'll forward this to the team. Its a bit short notice, but I hope someone from Besu can make it.

faraggi (Wed, 15 Jan 2020 08:35:14 GMT):
@shemnon had this same problem recently. I believe he solved it by hard refreshing the tab.

niliakis (Wed, 15 Jan 2020 09:06:02 GMT):
Hi guys! I'm trying to setup a private network using ansible. I set up the first node ok, but in the second, when I pass the enode of the first one in the main.yml and run "ansible-playbook requiremets.yml" I get this error "Invalid TOML configuration: Unexpected 'u', expected ], ', ", ''', """, a number, a boolean, a date/time, an array, a table, or a newline (line 40, column 12)%nUnexpected ']', ex pected ], a comma, or a newline (line 40, column 173)%nUnexpected end of input, expected ] or a newline (line 41, column 1)". Any ideas?

tvila (Wed, 15 Jan 2020 09:47:22 GMT):
Has joined the channel.

E.alcazar (Wed, 15 Jan 2020 11:41:30 GMT):
Are there any plans to add AWS´s KMS/HSM support for EthSigner? I may start working on it soonish. Should I make a PR if I make it myself?

faraggi (Wed, 15 Jan 2020 14:47:06 GMT):
ATM, the solutions it supports are Hashicorp and Azure KM, but depending on user demand, AWS support can be added. https://docs.ethsigner.pegasys.tech/en/stable/HowTo/Store-Keys/Use-Hashicorp/ https://docs.ethsigner.pegasys.tech/en/stable/HowTo/Store-Keys/Use-Azure/

faraggi (Wed, 15 Jan 2020 14:47:31 GMT):
Looks to me like a un-escaped char problem.

faraggi (Wed, 15 Jan 2020 14:47:58 GMT):
Can you send me the toml here or in PMs to take a look?

faraggi (Wed, 15 Jan 2020 14:58:11 GMT):
*PSA*: For those who haven't, please remember to answer our Community survey to better understand how to improve Besu: https://forms.gle/GnLQDndJVJWPRMib9

faraggi (Wed, 15 Jan 2020 14:58:16 GMT):
:mega:

shemnon (Wed, 15 Jan 2020 15:56:23 GMT):
I never solved it, it was a problem with that thread only.

VipinB (Wed, 15 Jan 2020 17:31:14 GMT):
@shemnon showed up. The call was ending, but we did update him on the plans.

shemnon (Wed, 15 Jan 2020 17:32:00 GMT):
I had been up late the night before for a business call and mis-read the invitation as 10am PST and thought it was after the develoepr/marketing call.

lucassaldanha (Wed, 15 Jan 2020 19:15:24 GMT):
Let us know if you'll give it a shot @E.alcazar ! For any EthSigner specific questions please use EthSigner Gitter (https://gitter.im/PegaSysEng/EthSigner)

arash009 (Wed, 15 Jan 2020 23:09:15 GMT):
You should get the results of each individual node as each node will produce its own metrics. If you want it averaged you have to collate all of that data and average them seperately.

Jemal (Wed, 15 Jan 2020 23:20:02 GMT):
@arash009 thanks bro

ajsutton (Wed, 15 Jan 2020 23:23:29 GMT):
If you have one Prometheus instance pulling in the metrics from all the different besu instances, the query language it provides makes it incredibly easy to aggregate and analyse the data in many ways. Grafana will make it even easier to create dashboards to visualise the metrics across all the instances. We provide a Grafana dashboard as a starting point at https://grafana.com/grafana/dashboards/10273

Jemal (Wed, 15 Jan 2020 23:24:52 GMT):
@ajsutton Thanks i will check that

timbeiko (Thu, 16 Jan 2020 01:49:05 GMT):
Besu’s 1.4 Beta is out 🥳 It includes support for EIP-2124, some permissioned network privacy improvements and support the Tuweni bytes handling library! Get it here: https://github.com/hyperledger/besu/releases/tag/1.4.0-beta1

faraggi (Thu, 16 Jan 2020 10:28:16 GMT):
> Do you know if this this documented anywhere? No, this specific behavior isn't documented. > what happens if the validator nodes' system clocks are more than 1s apart? There will be sync problems between the validator nodes. Whichever node is ahead will always have his blocks rejected. > What happens if a validator node sets their system clock to 1h in the future and then submit a block with a timestamp 1h in the future? Do the other validators reject that block? if a validator is 1h in the future, the other validators will reject any blocks it proposes - however IT will think that all blocks from the other validators are fine. Thus, we will hit a round-change every 4th block (when the future-validator is proposing)

coenie (Thu, 16 Jan 2020 11:22:17 GMT):
okay thanks for the details!

adityasingh177 (Thu, 16 Jan 2020 17:57:54 GMT):
Hello Everyone @faraggi Any docs available regarding Mui Glacier Hard Fork implementation for besu?

adityasingh177 (Thu, 16 Jan 2020 18:22:03 GMT):
is besu available on EEA testnet ? https://entethalliance.org/enterprise-ethereum-alliance-testnet-offers-global-businesses-a-way-to-collaborate-to-advance-real-world-blockchain-platforms/

adityasingh177 (Thu, 16 Jan 2020 18:24:32 GMT):
Also Looking out for some process flow diagrams for json rpc methods , thanks everyone !!

JoshFodale (Thu, 16 Jan 2020 20:03:06 GMT):
Has joined the channel.

atoulme (Thu, 16 Jan 2020 21:23:43 GMT):
hello Aditya, we're working on making besu available on the EEA testnet. Thank you for your interest - you can contact us over at whiteblock.io/eea for any further inquiry. Please note the EEA testnet is reserved to EEA members.

Jemal (Thu, 16 Jan 2020 23:45:45 GMT):
Does Besu/Ethereum work with Caliper? I tried to connect both Besu and Ethereum to Caliper. I am gettting "not supported error" in both cases:

Jemal (Thu, 16 Jan 2020 23:46:09 GMT):

Clipboard - January 17, 2020 10:46 AM

shemnon (Fri, 17 Jan 2020 00:25:00 GMT):
Caliper 0.2.0 is the needed version.

Jemal (Fri, 17 Jan 2020 00:45:42 GMT):
@shemnon yea i the version i installed is also caliper version 0.2.0 but didn't work

Jemal (Fri, 17 Jan 2020 00:47:34 GMT):
Did i make miss something ?

Jemal (Fri, 17 Jan 2020 00:47:34 GMT):
Did i miss something ?

shemnon (Fri, 17 Jan 2020 01:11:39 GMT):
The config.yaml that is part of 0.2.0 lists them here - https://github.com/hyperledger/caliper/blob/b236ce37959c84a8f5ffd7fe9e85e6941cab2169/packages/caliper-cli/lib/bind/config.yaml - either it's not shipping that with 0.2.0 or something is misconfigured.

Jemal (Fri, 17 Jan 2020 01:41:57 GMT):
@shemnon thanks. I moved one step now. But facing another error .

Jemal (Fri, 17 Jan 2020 01:42:01 GMT):

Clipboard - January 17, 2020 12:41 PM

shemnon (Fri, 17 Jan 2020 03:00:00 GMT):
That looks like some node.js issues, #caliper is more familir with those issues than I am.

adityasingh177 (Fri, 17 Jan 2020 06:45:58 GMT):
Thanks @atoulme

adityasingh177 (Fri, 17 Jan 2020 06:45:58 GMT):
Thas @atoulme

faraggi (Fri, 17 Jan 2020 08:58:21 GMT):
> The main implementation is here: https://github.com/hyperledger/besu/commit/fc7338fba75619f7033655d4f06126a53b0ee070#diff-120dc8e311d0c767f94b11a2b9e3c39f - most of the other stuff in the PR is plumbing to map the numbers to the difficulty calculation.

faraggi (Fri, 17 Jan 2020 09:11:56 GMT):
Hi All, quick reminder next week is the Contributor Call. If you have any topics for discussion please update the agenda: https://wiki.hyperledger.org/display/BESU/2020-01-21+Contributor+Call

faraggi (Fri, 17 Jan 2020 09:11:59 GMT):
:mega:

niliakis (Fri, 17 Jan 2020 12:55:39 GMT):

Καταγραφή.PNG

niliakis (Fri, 17 Jan 2020 12:56:22 GMT):
it adds an exta u in the array

adityasingh177 (Fri, 17 Jan 2020 14:10:34 GMT):
Thanks

adityasingh177 (Fri, 17 Jan 2020 14:12:30 GMT):
Thanks @faraggi

faraggi (Fri, 17 Jan 2020 14:39:12 GMT):
Yes, I got that much from the error message. This is typical from unicode/utf-8 encoding errors.

Amanullah68 (Sat, 18 Jan 2020 08:02:55 GMT):
Has joined the channel.

Amanullah68 (Sat, 18 Jan 2020 08:17:13 GMT):
Hello, please mentioned the steps to follow

Amanullah68 (Sat, 18 Jan 2020 08:33:11 GMT):
java.lang.IllegalArgumentException: Output directory must be empty.

Amanullah68 (Sat, 18 Jan 2020 08:47:24 GMT):
I run the nodes succesfully but nothing can see on 127.0.0.1:8546

Amanullah68 (Sat, 18 Jan 2020 15:58:47 GMT):
Hey, anyone here to help me?

Amanullah68 (Sat, 18 Jan 2020 15:58:55 GMT):
contract is not deploying

Amanullah68 (Sat, 18 Jan 2020 15:59:01 GMT):
Error: Invalid JSON RPC response: "

Resource not found

"

DougKing (Sun, 19 Jan 2020 02:34:10 GMT):
Has joined the channel.

shemnon (Sun, 19 Jan 2020 06:17:44 GMT):
What were you trying to do before each of the two steps? What tools? What commands? We need to know what you did to cause the error not just the error.

shemnon (Sun, 19 Jan 2020 06:18:40 GMT):
Is websockets enabled? (CLI flag `--rpc-ws-enabled`)

shemnon (Sun, 19 Jan 2020 06:20:46 GMT):
Were you using the CLI command `besu operator generate-blockchain-config` and was the `--to` directory empty? The 'to' directory must be empty.

Amanullah68 (Sun, 19 Jan 2020 13:10:36 GMT):
I'm following a document of Besu, where I'm creating a private network using IBFT 2.0 (POA) but here nodes are running perfectly. I'm following documentation through out and following the commands given in the document. I didn't enabled websockets as it is not in the command. I didn't check --to directory. When I'm trying to deploying my contract on my IBFT-Network , I get this error.

Amanullah68 (Sun, 19 Jan 2020 14:46:00 GMT):
Now I got this error when deploying contract on private network

Amanullah68 (Sun, 19 Jan 2020 14:46:05 GMT):
Compiling your contracts... =========================== > Everything is up to date, there is nothing to compile. /home/aman/.nvm/versions/node/v12.13.0/lib/node_modules/truffle/build/webpack:/packages/provider/index.js:56 throw new Error(errorMessage); ^ Error: There was a timeout while attempting to connect to the network. Check to see that your provider is valid. If you have a slow internet connection, try configuring a longer timeout in your Truffle config. Use the networks[networkName].networkCheckTimeout property to do this. at Timeout._onTimeout (/home/aman/.nvm/versions/node/v12.13.0/lib/node_modules/truffle/build/webpack:/packages/provider/index.js:56:1) at listOnTimeout (internal/timers.js:531:17) at processTimers (internal/timers.js:475:7)

lucassaldanha (Sun, 19 Jan 2020 20:49:22 GMT):
Hi, could you share your truffle config file so we can take a look?

Amanullah68 (Mon, 20 Jan 2020 10:12:33 GMT):
Hello everyone, I have a Question, kindly clear me

Amanullah68 (Mon, 20 Jan 2020 10:15:39 GMT):
How Besu works with ethereum public network?? Is it still achieve privacy like a tx between two nodes can't be seen by others??

Amanullah68 (Mon, 20 Jan 2020 10:24:21 GMT):
const HDWalletProvider = require("@truffle/hdwallet-provider"); const privateKey = "8f2a55949038a9610f50fb23b5883af3b4ecb3c3bb792cbcefbd1542c692be63"; module.exports = { // See // for more about customizing your Truffle configuration! networks: { development: { host: "127.0.0.1", port: 7545, network_id: "*" // Match any network id }, quickstartWallet: { provider: () => new HDWalletProvider(privateKey, "http://localhost:8545/jsonrpc"), network_id: "*" }, } };

faraggi (Mon, 20 Jan 2020 11:13:49 GMT):
Hello, Besu is fully compatible with public mainnet. That doesn't mean all of Besu's additional features (and other projects like Orion) work on mainnet. The private transactions you are referring to above are not supported by public mainnet. However, research has been done on public private transactions using ZK proofs, and others. These are currently available but do not rely on Orion. You can find lots of info on this on google.

jorikito (Mon, 20 Jan 2020 12:39:33 GMT):
Hey guys, hope you're doing well. I had a quick question; am I correct in saying that signing private transactions to the orion nodes using Metamask is not yet implemented? And how would you say is the best way to make users sign their private transactions from, say, a mobile app? Thanks in advance

Amanullah68 (Mon, 20 Jan 2020 12:52:57 GMT):
Can we use public accounts(like main net nodes) in our private network??

faraggi (Mon, 20 Jan 2020 12:59:54 GMT):
Can you expand on the question. I'm pretty sure you might be mixing up some terminology...

jorikito (Mon, 20 Jan 2020 13:05:39 GMT):
With public accounts don't you mean addresses?

faraggi (Mon, 20 Jan 2020 13:15:01 GMT):
Hi @jorikito , in order to send a transaction on to the orion network, you have to publish it with payload and other data in the data field. Metmask's current version doens't allow that. So no. Also, orion has its own gitter channel, which you're welcome to use: https://gitter.im/PegaSysEng/orion

jorikito (Mon, 20 Jan 2020 13:17:42 GMT):
I see, thanks for your quick response. Thanks for the link, I didn't realize there were seperate channels!

faraggi (Mon, 20 Jan 2020 13:18:08 GMT):
edit: wait a second. I might have been wrong

jorikito (Mon, 20 Jan 2020 13:18:34 GMT):
I was currently trying this but with custom data fields: https://metamask.github.io/metamask-docs/Main_Concepts/Sending_Transactions#sending-transactions

jorikito (Mon, 20 Jan 2020 13:25:26 GMT):
I havent made it work yet though

faraggi (Mon, 20 Jan 2020 13:38:50 GMT):
Thank you to our lastest open contributors! @SteveMieskoski @matkt And of course, thanks to those that contribute daily to the codebase and to this Rocket chat!

faraggi (Mon, 20 Jan 2020 13:38:50 GMT):
Thank you to our lastest open contributors! @SteveMieskoski @matkt @marlow And of course, thanks to those that contribute daily to the codebase and to this Rocket chat!

faraggi (Mon, 20 Jan 2020 13:38:56 GMT):
:thanks:

faraggi (Mon, 20 Jan 2020 13:48:54 GMT):
:mega:

faraggi (Mon, 20 Jan 2020 13:49:07 GMT):
Want some Besu Stickers?! featuring Peggy, our pegasus mascot, answer our community survey and we'll send them over to you. Just make sure to add your full postal address in the survey. (Also, anyone who has already answered, let me know can I send them too.)

faraggi (Mon, 20 Jan 2020 13:49:07 GMT):
*Want some Besu Stickers?!* featuring Peggy, our pegasus mascot, answer our community survey and we'll send them over to you. Just make sure to add your full postal address in the survey. (Also, anyone who has already answered, let me know can I send them too.)

jorikito (Mon, 20 Jan 2020 13:51:34 GMT):
Heck yeah, where can I find this survey

faraggi (Mon, 20 Jan 2020 14:08:14 GMT):
https://forms.gle/QLL6ANoGrQAhvLTw9 ^^ Survey Link ^^

faraggi (Mon, 20 Jan 2020 14:08:36 GMT):
Posted now. :)

jorikito (Mon, 20 Jan 2020 14:14:53 GMT):
Cool, filled it in

faraggi (Mon, 20 Jan 2020 15:06:13 GMT):
You could sign a transaction in MM. But you would need to send the private data (in)directly to orion first (through besu). Hi jorikito , in order to send a transaction on to the orion network, you have to publish it with payload and other data in the data field. Metmask's current *UI* version doens't allow that. However, you could use metamask to sign the TX, and then use the signed TX and call `eea_sendRawTransaction` to send to Orion and Besu. I haven't done this and don't know of anyone who has, but if you succeed, please let me know! Also, orion has its own gitter channel, which you're welcome to use: https://gitter.im/PegaSysEng/orion

jorikito (Mon, 20 Jan 2020 15:10:38 GMT):
Thanks, we'll try this soon!

jorikito (Mon, 20 Jan 2020 15:10:50 GMT):
If I can make it work I'll make sure to share it here

adityasingh177 (Mon, 20 Jan 2020 16:11:50 GMT):
yes

arash009 (Tue, 21 Jan 2020 02:02:30 GMT):
Hyperledger Besu v1.4.0-beta2 has been released! This is a follow up of our beta1 release last week where we discovered a bug once we were up on mainnet. If you have a copy of v1.4.0-beta1, please make sure to upgrade. If you havent, please grab the latest release and let us know if you hit any issues. Get it at: https://github.com/hyperledger/besu/releases or https://bintray.com/hyperledger-org/besu-repo/besu/1.4.0-beta2

Amanullah68 (Tue, 21 Jan 2020 04:09:34 GMT):
yeah, I mean addresses

Amanullah68 (Tue, 21 Jan 2020 04:20:24 GMT):
Okay, I'm trying to deploying a smart contract on my private network like I shared a code with you but it's I'm facing a timeout error

Amanullah68 (Tue, 21 Jan 2020 04:21:11 GMT):
I'm using besu-1.3.8 for creating private network

Amanullah68 (Tue, 21 Jan 2020 04:22:38 GMT):
If we can't maintain privacy over mainnet then why we use Besu??

lucassaldanha (Tue, 21 Jan 2020 08:00:58 GMT):
There are plenty of use cases to use privacy on consortium or private networks. This is available to be used in our current stable release. The support for private transactions on Mainnet is under development. If you want to understand a bit more about private transactions, I suggest that you read our docs (https://besu.hyperledger.org/en/latest/Concepts/Privacy/Private-Transaction-Processing/). About the timeout error, could you please post the error so we can take a look and try to help you?

Amanullah68 (Tue, 21 Jan 2020 08:21:49 GMT):
const HDWalletProvider = require("@truffle/hdwallet-provider"); const privateKey = "8f2a55949038a9610f50fb23b5883af3b4ecb3c3bb792cbcefbd1542c692be63"; module.exports = { // See // for more about customizing your Truffle configuration! networks: { development: { host: "127.0.0.1", port: 7545, network_id: "*" // Match any network id }, quickstartWallet: { provider: () => new HDWalletProvider(privateKey, "http://localhost:8545/jsonrpc"), network_id: "*" }, } };

Amanullah68 (Tue, 21 Jan 2020 08:23:01 GMT):
one more issue I'm facing when I'm creating a privacy

Amanullah68 (Tue, 21 Jan 2020 08:23:09 GMT):
in the network

Amanullah68 (Tue, 21 Jan 2020 08:25:04 GMT):
I've created a directory of data and Orion within Nodes

Amanullah68 (Tue, 21 Jan 2020 08:25:35 GMT):
In step 2: Create a Password Files

Amanullah68 (Tue, 21 Jan 2020 08:25:54 GMT):
I created a file with no extension like passwordFile

Amanullah68 (Tue, 21 Jan 2020 08:26:43 GMT):
In step 3: In orion directory I'm using this command orion -g nodeKey

Amanullah68 (Tue, 21 Jan 2020 08:27:02 GMT):
In passwordFile I'm entering 12 as password

Amanullah68 (Tue, 21 Jan 2020 08:28:13 GMT):
In the terminal I enter 12

Amanullah68 (Tue, 21 Jan 2020 08:29:01 GMT):
But no public/private keypair generated

lucassaldanha (Tue, 21 Jan 2020 09:43:33 GMT):
So you are saying that you can't generate the Orion keypair usinng the -g command? Could you please let me knonw the version of Orion that you are using?

Amanullah68 (Tue, 21 Jan 2020 09:44:50 GMT):
version: 1.5.0-SNAPSHOT

Amanullah68 (Tue, 21 Jan 2020 10:43:21 GMT):
thanks, I solve it

Amanullah68 (Tue, 21 Jan 2020 10:43:37 GMT):
Now just help me in deploying smart contract

Amanullah68 (Tue, 21 Jan 2020 10:43:45 GMT):
I shared the code above

faraggi (Tue, 21 Jan 2020 12:50:31 GMT):
Hello again @Amanullah68 , In order to help you, you'll have to try and be more descriptive and verbose when describing your errors and what you've done up till that point. We detail this in here: https://github.com/hyperledger/besu/blob/master/CONTRIBUTING.md#reporting-bugs

faraggi (Tue, 21 Jan 2020 12:51:13 GMT):
Also, I'd like to know how you solved the previous problem so that others having the same problem can be directed to the solution. Do you mind sharing it?

raedbensaid (Tue, 21 Jan 2020 13:12:45 GMT):
Has joined the channel.

bmg (Wed, 22 Jan 2020 14:54:53 GMT):
Has joined the channel.

jframe (Thu, 23 Jan 2020 01:17:48 GMT):
Have had a look at your logs and unfortunately it seems you have found a bug with how on-chain permissioning interacts with bootnodes and IBFT/POA networks. I've raised a bug https://jira.hyperledger.org/browse/BESU-181 for this issue. The workaround is what you have already done which is to make sure your bootnode is also a validator.

jframe (Thu, 23 Jan 2020 01:17:48 GMT):
Have had a look at your logs @eum602 and unfortunately it seems you have found a bug with how on-chain permissioning interacts with bootnodes and IBFT/POA networks. I've raised a bug https://jira.hyperledger.org/browse/BESU-181 for this issue. The workaround is what you have already done which is to make sure your bootnode is also a validator.

rajashekarkodi (Thu, 23 Jan 2020 10:36:51 GMT):
Has joined the channel.

lionelronaldo (Fri, 24 Jan 2020 11:18:07 GMT):
Has joined the channel.

faraggi (Fri, 24 Jan 2020 14:12:28 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=grHH2aepi8REM7qmJ) @eum602 goes without saying that we REALLY appreciate the work done on your end and help raising this bug. I'll be sending you some Besu sticker for helping build Besu.

GabrieleOcyan (Fri, 24 Jan 2020 16:33:30 GMT):
Has joined the channel.

GabrieleOcyan (Fri, 24 Jan 2020 19:49:15 GMT):
Hi everyone, I am Gabriele from Ocyan. Following our recent partnership (https://twitter.com/ocyan_cloud/status/1219971897447895042) I am working towards integrating our platforms and I started from https://github.com/PegaSysEng/besu-kubernetes I noticed that the appVersion is 1.2.4 while the latest stable is 1.3.8 (1.4.0 is in beta). Is there any major change we should be aware of if we want to upgrade?

ldoyle (Fri, 24 Jan 2020 22:04:46 GMT):
Has joined the channel.

ldoyle (Fri, 24 Jan 2020 23:58:08 GMT):
hey all! I'm trying to build some components on Besu 1.3.8, which I downloaded as a .zip from github, but IntelliJ is telling me that I'm missing the .git folder. I looked for it in the extracted files and could not find it. Is this an error with the .zip package?

shemnon (Sat, 25 Jan 2020 02:49:58 GMT):
It's a build problem. There is code for development verisoning that depends on the .git folder. If you check it out from Github it will work.

ppoliani (Sat, 25 Jan 2020 09:36:46 GMT):
Hi everyone, quick question; I'm running Besu on a Kubernetes cluster and I would like to know if there is a way to read the JSON-RPC Api logs

ppoliani (Sat, 25 Jan 2020 09:37:58 GMT):
The thing is that I'm using web3 to connect to a websocket endpoint and I pass the bearer token correctly, however I still get an unauthorized response. I tested the same bearer token using the http endpoint and everything works smoothly

ppoliani (Sat, 25 Jan 2020 10:08:49 GMT):
digging into the logs I can see the following ``` 2020-01-25 10:05:46.560+00:00 | vert.x-eventloop-thread-1 | TRACE | WebSocketService | Websocket authentication token eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJwZXJtaXNzaW9ucyI6WyJldGg6KiIsIm5ldDoqIl0sInVzZXJuYW1lIjoib1M4NEUzeXpVRG9uZyIsImlhdCI6MTU3OTk0NjcwMywiZXhwIjoxNTc5OTQ3MDAzfQ.MLqIzi5Si_NoqGXfFUugkBAt-Cx5ragbxB147RR-mc59WsuE-4oxo5Mr8cwBTxqEW5-ElHxDJLQFMSJpXxW1O-pgZReHYGY7nX0wXmGkzkS6jhI2o01CRmJLFISSKfeQARSHzOjm1Fh3ce_vk-XtJH3YmV6qgS17XPbr472iOA4kBfR3hHXMJ0hE6v1ilk3UWmz9Fxb1E8nTcQ2Yop5ULnetfVSe4JAvTklDgeIcNmltwHFi9xDTNU6P-Xcpv_thXT2jzhzbvhxLNC5tdqfZO9VXXRFiFsjc-0f-KazlGy918j3YfIyJC_ttLW-5lLUsYQZ3kn9TuvOnkS3jUa7UHA 2020-01-25 10:05:46.560+00:00 | vert.x-eventloop-thread-1 | DEBUG | WebSocketService | Websocket Connected (host=167.71.75.88, port=33894) 2020-01-25 10:05:46.560+00:00 | vert.x-eventloop-thread-1 | DEBUG | WebSocketServerHandshaker | [id: 0x8e42ea34, L:/10.42.0.135:8546 - R:/167.71.75.88:33894] WebSocket version V13 server handshake 2020-01-25 10:05:46.563+00:00 | vert.x-eventloop-thread-1 | DEBUG | WebSocketServerHandshaker | WebSocket version 13 server handshake key: FzYOBNpnSufWEA/2BDHhUg==, response: Fy0t+d65Fl6JKa3vqO3YMhPxfRY= 2020-01-25 10:05:46.649+00:00 | vert.x-eventloop-thread-1 | DEBUG | WebSocket08FrameDecoder | Decoding WebSocket Frame opCode=1 2020-01-25 10:05:46.650+00:00 | vert.x-eventloop-thread-1 | DEBUG | WebSocket08FrameDecoder | Decoding WebSocket Frame length=82 2020-01-25 10:05:46.659+00:00 | vert.x-eventloop-thread-1 | DEBUG | WebSocketService | Received Websocket request {"jsonrpc":"2.0","id":0,"method":"eth_getBlockByNumber","params":["latest",false]} (host=167.71.75.88, port=33894) 2020-01-25 10:05:46.661+00:00 | vert.x-eventloop-thread-1 | DEBUG | AuthenticationUtils | Invalid JWT token ```

ppoliani (Sat, 25 Jan 2020 10:09:14 GMT):
I used the same token with the http endpoint for the same rpc method and it worked fine

ppoliani (Sat, 25 Jan 2020 10:43:11 GMT):
Sotty guys, my bad. It's clearly written in the docs > To obtain an authentication token, make a request to the /login endpoint with your username and password. Specify the HTTP port or the WS port to obtain a token to authenticate over HTTP or WS respectively. A different token is required for HTTP and WS.

ppoliani (Sat, 25 Jan 2020 10:43:37 GMT):
I was using the http token for ws

shemnon (Sat, 25 Jan 2020 20:56:10 GMT):
This PR should fix it. It won't show up until beta 3.

shemnon (Sat, 25 Jan 2020 20:56:13 GMT):
https://github.com/hyperledger/besu/pull/327

shemnon (Sat, 25 Jan 2020 21:01:02 GMT):
The changelog has all the details - https://github.com/hyperledger/besu/blob/master/CHANGELOG.md - but the only breaking change would be if you had comments in your genesis.json file. Any IDE would complain about it so the odds it hits users is low. The fix is to remove the comments.

shemnon (Sat, 25 Jan 2020 21:01:41 GMT):
Mostly it's new feature adds, such as Istanbul fork support, ETC support, and some plugin APIs opened up. All are opt in.

GabrieleOcyan (Sun, 26 Jan 2020 11:50:24 GMT):
@shemm

GabrieleOcyan (Sun, 26 Jan 2020 11:50:24 GMT):
@shemnon thanks for the answer. I am mostly talking about the helm charts, do you think it's gonna be difficult to upgrade? Do you have any updated chart/documentation for it?

leo5th (Sun, 26 Jan 2020 13:57:40 GMT):
Has joined the channel.

shemnon (Sun, 26 Jan 2020 19:42:13 GMT):
K8s is outside of my expertese. But CLI wise the only changes have been additions, so I would expect current helm charts to just work.

Silona (Mon, 27 Jan 2020 22:25:39 GMT):
The Linux Foundation’s CommunityBridge engineers are working on a tool to measure the health of critical open source projects and one of the key areas identified is QA Testing. They request that our communities provide honest and detailed information on testing tools and methodologies you use in your projects for us to come up with a detailed analysis, which they will share with all respondents and projects. https://www.surveymonkey.com/r/9H5G2GV. It’s only 5 questions long.

ldoyle (Mon, 27 Jan 2020 22:37:08 GMT):
I pulled from GitHub and it does work. Thanks for the info!

joshuafernandes (Tue, 28 Jan 2020 01:09:22 GMT):
@GabrieleOcyan the code in the besu-kubernetes repo are reference implementations. We are working on creating an official helm chart and will keep you posted when we release that.

joshuafernandes (Tue, 28 Jan 2020 01:12:21 GMT):
I will update the appVersion in the chart.yaml. We currently set the values, overrides in the values.yml or as overrides in the cli based on frequency of updates eg: keys are static but versions of Besu or the like change

joshuafernandes (Tue, 28 Jan 2020 01:12:21 GMT):
I will update the appVersion & version in the chart.yaml. We currently set the values, overrides etc either in the values.yml or as overrides in the cli based on frequency of updates eg: keys are static but versions of Besu or the like change

joshuafernandes (Tue, 28 Jan 2020 01:24:55 GMT):
In the examples in the repo we use tag `develop`so that people get the newest available to test things out, I'd suggest locking that to a fixed version such as `1.3.8` and upwards if you would like to use the `1.4.0 betas`

Amanullah68 (Tue, 28 Jan 2020 12:31:48 GMT):
I had created Private, Permissioned and Privacy enabled networks

Amanullah68 (Tue, 28 Jan 2020 12:32:20 GMT):
Now I want to use it in production like I wanted to use it in my project

Amanullah68 (Tue, 28 Jan 2020 12:32:47 GMT):
What I can do?? Create my own network or use Besu-QuickStart??

Amanullah68 (Tue, 28 Jan 2020 12:33:11 GMT):
Which network is used in Besu-QuickStart ??

Amanullah68 (Tue, 28 Jan 2020 12:33:23 GMT):
I need quick help, thanks in advance

Amanullah68 (Tue, 28 Jan 2020 12:37:17 GMT):
I'm not adding bin/ in orion

Amanullah68 (Tue, 28 Jan 2020 12:37:47 GMT):
more simply we have to move into bin directory to use orion commands

Amanullah68 (Tue, 28 Jan 2020 12:54:04 GMT):
In Permissioned network , I'm not able to send ethers from Node-1 to Node-2 and same Node-2 to Node-1. Transaction goes into pending. Node-3 transaction is failed immediately as it is not in white list.

grace.hartley (Tue, 28 Jan 2020 20:22:20 GMT):
@cjhare can you reply on behalf of besu?

DFeichtinger (Tue, 28 Jan 2020 22:20:47 GMT):
Has joined the channel.

cjhare (Tue, 28 Jan 2020 23:20:26 GMT):
@Silona @grace.hartley will do :thumbsup:

Silona (Tue, 28 Jan 2020 23:23:06 GMT):
THX!

arash009 (Tue, 28 Jan 2020 23:28:50 GMT):
It depends on your needs and deployment model. The quickstart uses a development network, you can either change the configuration provided to connect to an appropriate network or start from scratch.

arash009 (Tue, 28 Jan 2020 23:31:25 GMT):
Can you provide more details please? With On-chain account permissioning, you can create rules for what accounts are allowed to transact on the network. Have all the accounts been added to the whitelist? Are the nodes peered with one another?

Amanullah68 (Wed, 29 Jan 2020 04:28:19 GMT):
Yes, all the accounts are on white list and peered with one another.

Amanullah68 (Wed, 29 Jan 2020 04:29:25 GMT):
Transaction remains in pending

arash009 (Wed, 29 Jan 2020 04:46:54 GMT):
How are you submitting the transaction?

Amanullah68 (Wed, 29 Jan 2020 05:02:42 GMT):
I have created my own CUSTOM RPC in metamask and import accounts provided in the documentation

Amanullah68 (Wed, 29 Jan 2020 05:05:15 GMT):
I successfully started nodes but in mining it shows no peer sync.

Amanullah68 (Wed, 29 Jan 2020 05:07:44 GMT):
@arash009 I'm online now, please give me sometime as I've to create a private network for my project.

adityasingh177 (Wed, 29 Jan 2020 05:19:32 GMT):
Hello , Does Besu support for Ethereum Plasma ?

Piyush.Sharma (Wed, 29 Jan 2020 05:45:14 GMT):
Has joined the channel.

Piyush.Sharma (Wed, 29 Jan 2020 05:45:15 GMT):
Hello everyone, I am Piyush Sharma , 2nd yr ECE student, would like to be a part of Hyperledger internship program 2020. I have a sound knowledge of Solidity, Java, C , C++ and blockchain as well. I am new to this eco-system , so any helping hand to get me this internship will be very beneficial .

podgostar (Wed, 29 Jan 2020 06:53:39 GMT):
Has left the channel.

faraggi (Wed, 29 Jan 2020 08:16:06 GMT):
You can also request that info quite simply through the API: https://besu.hyperledger.org/en/stable/Reference/API-Methods/#net-methods

Amanullah68 (Wed, 29 Jan 2020 08:18:38 GMT):
I have created a permissioned network.

faraggi (Wed, 29 Jan 2020 08:19:30 GMT):
Hi Piyush. I don't know the answers to your internship questions. In general though, I would recommend making some contributions in order to get more experience and get noticed by organisms looking for interns: https://wiki.hyperledger.org/display/BESU/How+to+Contribute

Amanullah68 (Wed, 29 Jan 2020 08:20:30 GMT):
I started my nodes successfully and put first 2 nodes in whiteList a wel

Amanullah68 (Wed, 29 Jan 2020 08:22:10 GMT):
I created a Custom RPC in metamask over my JSON RPC port 8545

Amanullah68 (Wed, 29 Jan 2020 08:22:32 GMT):
I also import accounts

Amanullah68 (Wed, 29 Jan 2020 08:23:27 GMT):
Node 3 in not in whiltelist so tranasaction failed as I'm trying to send it, I understand it

Amanullah68 (Wed, 29 Jan 2020 08:24:11 GMT):
but for other nodes when I'm trying to send transaction it goes into pending

Amanullah68 (Wed, 29 Jan 2020 08:24:42 GMT):
Neither failed nor success

Amanullah68 (Wed, 29 Jan 2020 08:25:25 GMT):
That's a result I get when I start my nodes

Amanullah68 (Wed, 29 Jan 2020 08:25:28 GMT):
2020-01-29 13:24:53.393+05:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, wait for peers.

Amanullah68 (Wed, 29 Jan 2020 08:26:13 GMT):
What I do now??

Amanullah68 (Wed, 29 Jan 2020 08:27:59 GMT):
@faraggi you got my point?

faraggi (Wed, 29 Jan 2020 08:31:51 GMT):
Can you point to the specific tutorial you are following? and the step at which it isn't working?

Amanullah68 (Wed, 29 Jan 2020 08:32:15 GMT):
https://besu.hyperledger.org/en/stable/Tutorials/Permissioning/Create-Permissioned-Network/

Amanullah68 (Wed, 29 Jan 2020 08:32:29 GMT):
I follwed this completely

Amanullah68 (Wed, 29 Jan 2020 08:33:08 GMT):
followed*

Amanullah68 (Wed, 29 Jan 2020 08:33:49 GMT):
I use CLIQUE genesis file as given in this doc

faraggi (Wed, 29 Jan 2020 08:36:15 GMT):
what's the result of step 10?

Amanullah68 (Wed, 29 Jan 2020 08:36:35 GMT):

Screenshot from 2020-01-29 13-35-58.png

Amanullah68 (Wed, 29 Jan 2020 08:37:47 GMT):

Screenshot from 2020-01-29 13-37-20.png

Amanullah68 (Wed, 29 Jan 2020 08:38:06 GMT):
same as in doc

Amanullah68 (Wed, 29 Jan 2020 08:41:17 GMT):

Screenshot from 2020-01-29 13-40-29.png

Amanullah68 (Wed, 29 Jan 2020 08:47:02 GMT):
@faraggi you got my point??

Radhi (Wed, 29 Jan 2020 09:33:21 GMT):
Hello everyone, I want to understand when using the Privacy network (with Orion) how to execute a private transaction between end users (account, address), ie create a private group between end users (address, account) not between the nodes

Amanullah68 (Wed, 29 Jan 2020 09:44:59 GMT):
how to validate tranasaction from nodes??

Amanullah68 (Wed, 29 Jan 2020 11:53:47 GMT):
I'm sending a tranasaction from Node-1 to Node-2, both are in white list. I'm using clique . How to vote or sign for the validation of tranasaction??

jorikito (Wed, 29 Jan 2020 13:50:55 GMT):
If I understand correctly, one user needs to have a besu/web3 node and an Orion node. Private transactions are sent and stored between orion nodes, targeting orion public addresses, or a privacy group generated with those addresses. You can still make a transaction between normal web3 addresses, you just have to send the transaction with the EEAClient targeting orion public keys

Dan (Wed, 29 Jan 2020 14:34:37 GMT):
Has joined the channel.

Dan (Wed, 29 Jan 2020 14:34:38 GMT):
Hi Everyone, We are hoping to hear from everyone as we assess the health of our open source community. Please take 2 minutes to respond here: https://www.surveymonkey.com/r/DCIWGsurvey

adityasingh177 (Wed, 29 Jan 2020 17:34:05 GMT):
any desktop/mobile app coming sooner or later for hyperledger @Dan ?

adityasingh177 (Wed, 29 Jan 2020 17:34:05 GMT):
any desktop/mobile app coming sooner or later @Dan ?

arash009 (Wed, 29 Jan 2020 20:54:16 GMT):
Can you show a screenshot of the accounts on the whitelist please.

Amanullah68 (Thu, 30 Jan 2020 08:02:40 GMT):
There are some major issues in stable version. I put my nodes and accounts in whitelist but still transactions are not performed. Nodes can't sync. I've test it few times but still my problem isn't solved. headache

Amanullah68 (Thu, 30 Jan 2020 10:52:17 GMT):
kindly help me on ONCHAIN permissioning.

Amanullah68 (Thu, 30 Jan 2020 10:52:32 GMT):
I can't understand it well

Amanullah68 (Thu, 30 Jan 2020 10:56:05 GMT):
I have to continue my permissioned network and then made changes in it while following onchain permissioning.

ShaileshGhanekar (Thu, 30 Jan 2020 12:42:26 GMT):
Hi, I need some help. I'm trying to set up privacy enabled network along with account permissioning. According to the documentation, in this case I have to specify privacy marker transactions signing key and also add it in accounts whitelist. But, if I understand it correctly, accounts whitelist is just the list of account addresses so how can I add signing key (private key) in there? Or am I missing something? Thanks in advance.

akuanti (Thu, 30 Jan 2020 14:39:28 GMT):
Has joined the channel.

ppoliani (Thu, 30 Jan 2020 14:51:50 GMT):
Hi guys, I have been digging into the logs and I came across something interesting. I gave created a Clique network and I added "gasLimit": "0x1fffffffffffff" to the genesis file. Now looking into the logs I founds the following lines: ``` 2020-01-30 14:42:43.339+00:00 | vert.x-worker-thread-11 | TRACE | AuthenticationUtils | user io.vertx.ext.auth.jwt.impl.JWTUser@20ed0ebb authorized : eth_estimateGas via permission eth:* 2020-01-30 14:42:43.344+00:00 | vert.x-worker-thread-11 | TRACE | MainnetTransactionProcessor | Starting execution of ContractCreation{nonce=23, gasPrice=0, gasLimit=9007199254740991, value=0, sig=SECP256K1.Signature{r=57896044618658097711785492504343953926418782139537452191302581570759080747168, s=57896044618658097711785492504343953926418782139537452191302581570759080747168, recId=0}, payload=0x608060405234801561001057600080fd5b506103ca806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c8063759f785d146100515780637641e6f3146100895780638129fc1c14610138578063f586403114610140575b600080fd5b6100776004803603602081101561006757600080fd5b50356001600160a01b0316610148565b60408051918252519081900360200190f35b6101366004803603604081101561009f57600080fd5b813591908101906040810160208201356401000000008111156100c157600080fd5b8201836020820111156100d357600080fd5b803590602001918460018302840111640100000000831117156100f557600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061015a945050505050565b005b610136610253565b6100776102fa565b60346020526000908152604090205481565b60335461016d908363ffffffff61030016565b60335533600090815260346020526040902054610190908363ffffffff61030016565b336000818152603460209081526040808320949094558351838152808201879052606094810185815286519582019590955285517f47e772fda56eb54ab211642ce5421882c49fc2b7033455982af14588ae4207ff9588948894919260808501928601918190849084905b838110156102135781810151838201526020016101fb565b50505050905090810190601f1680156102405780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a15050565b600054610100900460ff168061026c575061026c610361565b8061027a575060005460ff16155b6102b55760405162461bcd60e51b815260040180806020018281038252602e815260200180610368602e913960400191505060405180910390fd5b600054610100900460ff161580156102e0576000805460ff1961ff0019909116610100171660011790555b600060335580156102f7576000805461ff00191690555b50565b60335481565b6000828201838110 1561035a576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b303b159056fe436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a265627a7a723158200089711e3c5a92830bfee483ca8ee8f8f9d2c860e0774e9e3692c7e64c69e75364736f6c634300050d0032} 2020-01-30 14:42:43.344+00:00 | vert.x-worker-thread-11 | TRACE | MainnetTransactionProcessor | Incremented sender 0xf7b547f3e46effb3480eee2c486ae760734b135c nonce (23 -> 24) 2020-01-30 14:42:43.344+00:00 | vert.x-worker-thread-11 | TRACE | MainnetTransactionProcessor | Deducted sender 0xf7b547f3e46effb3480eee2c486ae760734b135c upfront gas cost 0 (200000000000000000000 -> 200000000000000000000) 2020-01-30 14:42:43.344+00:00 | vert.x-worker-thread-11 | TRACE | MainnetTransactionProcessor | Gas available for execution 9007199254623695 = 9007199254740991 - 117296 (limit - intrinsic) ``` I'm trying to get my head around the 117296 figure, which is the intrinsic gas. Can someone explain what that is? In this document https://pegasys.tech/ethereum-explained-gas-payment-and-mining It says > When validating a transaction, the node multiplies the gasPrice by the gasLimit to calculate the intrinsic cost of the transaction That is a bit strange because the gas price is configured to be 0 (min-gas-price=0)

ppoliani (Thu, 30 Jan 2020 14:51:50 GMT):
Hi guys, I have been digging into the logs and I came across something interesting. I gave created a Clique network and I added "gasLimit": "0x1fffffffffffff" to the genesis file. Now looking into the logs I founds the following lines: ``` 2020-01-30 14:42:43.339+00:00 | vert.x-worker-thread-11 | TRACE | AuthenticationUtils | user io.vertx.ext.auth.jwt.impl.JWTUser@20ed0ebb authorized : eth_estimateGas via permission eth:* 2020-01-30 14:42:43.344+00:00 | vert.x-worker-thread-11 | TRACE | MainnetTransactionProcessor | Starting execution of ContractCreation{nonce=23, gasPrice=0, gasLimit=9007199254740991, value=0, sig=SECP256K1.Signature{r=57896044618658097711785492504343953926418782139537452191302581570759080747168, s=57896044618658097711785492504343953926418782139537452191302581570759080747168, recId=0}, payload=0x608060405234801561001057600080fd5b506103ca806100206000396000f3fe608...} 2020-01-30 14:42:43.344+00:00 | vert.x-worker-thread-11 | TRACE | MainnetTransactionProcessor | Incremented sender 0xf7b547f3e46effb3480eee2c486ae760734b135c nonce (23 -> 24) 2020-01-30 14:42:43.344+00:00 | vert.x-worker-thread-11 | TRACE | MainnetTransactionProcessor | Deducted sender 0xf7b547f3e46effb3480eee2c486ae760734b135c upfront gas cost 0 (200000000000000000000 -> 200000000000000000000) 2020-01-30 14:42:43.344+00:00 | vert.x-worker-thread-11 | TRACE | MainnetTransactionProcessor | Gas available for execution 9007199254623695 = 9007199254740991 - 117296 (limit - intrinsic) ``` I'm trying to get my head around the 117296 figure, which is the intrinsic gas. Can someone explain what that is? In this document https://pegasys.tech/ethereum-explained-gas-payment-and-mining It says > When validating a transaction, the node multiplies the gasPrice by the gasLimit to calculate the intrinsic cost of the transaction That is a bit strange because the gas price is configured to be 0 (min-gas-price=0)

shemnon (Thu, 30 Jan 2020 15:27:43 GMT):
Intrinsic Gas Cost comes from the size of the transaction. 21,000 just for being a transaction, and 16 gas per non-zero byte in the TX (and 4 per zero byte) This TX looks to be on the order of 16kb.

eum602 (Thu, 30 Jan 2020 15:33:39 GMT):
Hello everyone, I have a node that is behind a NAT, is it possible to make it work in a p2p besu network?.

ppoliani (Thu, 30 Jan 2020 15:51:03 GMT):
shouldn't that be calculated by the `eth_estimateGas`. The problem I has with some transaction is that I would add gas limit based on the result of the eth_estimateGas, but the tx would fail because of insufficient gas

shemnon (Thu, 30 Jan 2020 15:53:15 GMT):
That can be added to the calculation for sure, post a jira at https://jira.hyperledger.org/projects/BESU so we don't forget.

shemnon (Thu, 30 Jan 2020 15:54:24 GMT):
The other issue is the 63/64the rule is not factored intot he gas limit. Any transaction that does a CALL or DELEGATECALL generally needs a higher gas limit than is actaully consumed. It's a network-wide DOS policy.

shemnon (Thu, 30 Jan 2020 15:54:55 GMT):
One common approach I've seen in most DAPPs is to take the estimate and add 10%

ppoliani (Thu, 30 Jan 2020 15:55:41 GMT):
thanks for the explanation.

ppoliani (Thu, 30 Jan 2020 15:56:25 GMT):
with regards to the calculation; how should I to perform it? Do I need to serialize the signed transaction and then check it's size?

ppoliani (Thu, 30 Jan 2020 15:56:41 GMT):
is there a suggested way I could do that in my application?

shemnon (Thu, 30 Jan 2020 15:57:16 GMT):
Yep. then multiply it by 16 and add 21K. The real intrinsic TX will be lower because of zero bytes, but it likely isn't worth walking the array searching.

ppoliani (Thu, 30 Jan 2020 15:57:32 GMT):
good point

ppoliani (Thu, 30 Jan 2020 15:57:41 GMT):
cheers mate; I''' give it a go

eum602 (Thu, 30 Jan 2020 15:59:37 GMT):
I have tried the UPNP method that is in the documentation but the node is not working, when the node only imports all the data but after that the node keeps waiting for peers.

ppoliani (Thu, 30 Jan 2020 16:00:31 GMT):
sorry actually what said earlier won't work; I can't serialize the tx because the gas limit is part of the tx params. I guess I need to calculate it earlier

shemnon (Thu, 30 Jan 2020 16:01:03 GMT):
Try the 10% fudge, I think the all but 1/64th rule is what's getting you.

ppoliani (Thu, 30 Jan 2020 16:01:54 GMT):
thanks @shemnon I will try that out

mackcom (Thu, 30 Jan 2020 19:28:28 GMT):
Hi all, I'm trying to deploy a contract using besu and I'm getting `Transaction has been reverted by the EVM` errors. I'm following example create_contract_raw_transaction.js from https://besu.hyperledger.org/en/stable/HowTo/Develop-Dapps/Use-web3js/. It works when I use the bytecode in the example script, however when I use other bytecode I get the error. It seems any contract that has the calldatacopy op code is causing deployment to fail. I've been trying with the remix ballot.sol example. Here is the output when trying to deploy into goerli testnet: ``` emack@ed-Oryx-Pro:~/projects/chainsafe/aztlan-test/scripts$ node create_contract_raw_kotti.js ****************************************** Using provider : http://localhost:8545 ****************************************** txCount 3 ****************************************** Do you want to send the signed contract creation transaction now ? (Y/N):y ****************************************** Contract transaction sent, waiting for receipt. ****************************************** Error: Transaction has been reverted by the EVM: { "blockHash": "0xcad0c063c7286774b45cb55ff9b054eb9cf984f84cae7575ff0e5c765c60ad36", "blockNumber": 2090940, "contractAddress": "0xF9eBbFF4ABD48f05FeEB20BF367Bc31E3B47Afef", "cumulativeGasUsed": 8000000, "from": "0xb737d61e742f6c31a1d84e80cf7d8c98813322fe", "gasUsed": 8000000, "logs": [], "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "status": false, "to": null, "transactionHash": "0x3867d3744ed098a874bed3e17b3b2734eefd5e0f600e4236d771a2481fea0d46", "transactionIndex": 0 } emack@ed-Oryx-Pro:~/projects/chainsafe/aztlan-test/scripts$ ``` I don't know why this won't deploy, any ideas?

GregTheGreek (Thu, 30 Jan 2020 19:40:13 GMT):
It looks like callDataCopy isn't working as expected

ShaileshGhanekar (Fri, 31 Jan 2020 00:09:59 GMT):
Any updates?

faraggi (Fri, 31 Jan 2020 08:48:07 GMT):
Hey @ShaileshGhanekar , can you give me more background on this question. Point me to the docs page and section you are referring to

ShaileshGhanekar (Fri, 31 Jan 2020 08:57:00 GMT):
I'm using file based local permissions and here's the section where I found the note: https://besu.hyperledger.org/en/stable/HowTo/Limit-Access/Local-Permissioning/#account-whitelisting

ShaileshGhanekar (Fri, 31 Jan 2020 08:57:00 GMT):
Hi @faraggi I'm using file based local permissions and here's the section where I found the note: https://besu.hyperledger.org/en/stable/HowTo/Limit-Access/Local-Permissioning/#account-whitelisting

faraggi (Fri, 31 Jan 2020 10:19:34 GMT):
Oh, I see what you mean/

faraggi (Fri, 31 Jan 2020 10:19:34 GMT):
Oh, I see what you mean

faraggi (Fri, 31 Jan 2020 10:20:05 GMT):
In this case, you must specify the signing key using the `--privacy-marker-transaction-signing-key-file` command line option

faraggi (Fri, 31 Jan 2020 10:20:15 GMT):
https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#privacy-marker-transaction-signing-key-file

faraggi (Fri, 31 Jan 2020 10:21:07 GMT):
And include the public key in the whitelist

faraggi (Fri, 31 Jan 2020 10:21:33 GMT):
TBH, That part of the doc should be improved.

Amanullah68 (Fri, 31 Jan 2020 10:27:53 GMT):
can someone help in onchain permissioning network?? I can't understand what actually we have to do.

Amanullah68 (Fri, 31 Jan 2020 10:28:34 GMT):
I solved my permissioned network error, now transactions are performing successfully....

faraggi (Fri, 31 Jan 2020 10:33:34 GMT):
I'm not sure I understand what the problem is. You following message says you solved the problem. BTW, what was the problem and how did you solve it?

abdelhamidbakhta (Fri, 31 Jan 2020 10:36:04 GMT):
Has joined the channel.

abdelhamidbakhta (Fri, 31 Jan 2020 10:36:05 GMT):
What command did you use exactly please ?

Amanullah68 (Fri, 31 Jan 2020 10:39:59 GMT):
I solved permissioned network where my transaction not performing like I'm sending ether from account 1 to account 2, it goes into pending. All nodes are in whitelist and account 1& account 2 as well.

Amanullah68 (Fri, 31 Jan 2020 10:41:05 GMT):
Now I'm facing issue in onchain, how I start it the document isn't that clear. It's confusing

faraggi (Fri, 31 Jan 2020 10:42:08 GMT):
What is confusing about it? which part exactly?

Amanullah68 (Fri, 31 Jan 2020 10:42:13 GMT):
What's the first step in onchain permissioning after pre-req's.

faraggi (Fri, 31 Jan 2020 10:42:44 GMT):
> 2. Add the ingress contracts to the genesis file

faraggi (Fri, 31 Jan 2020 10:43:02 GMT):
that means, going here:

faraggi (Fri, 31 Jan 2020 10:43:03 GMT):
https://github.com/PegaSysEng/permissioning-smart-contracts/blob/master/genesis.json

faraggi (Fri, 31 Jan 2020 10:43:36 GMT):
and adding the `0x0000000000000000000000000000000000009999` and `0x0000000000000000000000000000000000008888`

faraggi (Fri, 31 Jan 2020 10:43:41 GMT):
parts to your genesis file

Amanullah68 (Fri, 31 Jan 2020 10:43:47 GMT):
Can I replace this whole with my genesis file??

faraggi (Fri, 31 Jan 2020 10:45:40 GMT):
Have you tried doing that? How about you try it and let us know how it goes? ;)

Amanullah68 (Fri, 31 Jan 2020 10:45:56 GMT):
Replace my whole genesis file with this contract??

Amanullah68 (Fri, 31 Jan 2020 10:47:14 GMT):
we have to set ENVIRONMENT Variables in toml file??

Amanullah68 (Fri, 31 Jan 2020 10:47:42 GMT):
BESU_NODE_PERM_ACCOUNT = public key??

faraggi (Fri, 31 Jan 2020 10:47:54 GMT):
Are you on linux/windows/mac?

Amanullah68 (Fri, 31 Jan 2020 10:48:00 GMT):
linux

faraggi (Fri, 31 Jan 2020 10:48:22 GMT):
https://linuxize.com/post/how-to-set-and-list-environment-variables-in-linux/

Amanullah68 (Fri, 31 Jan 2020 10:51:03 GMT):
https://besu.hyperledger.org/en/stable/HowTo/Configure/Using-Configuration-File/

Amanullah68 (Fri, 31 Jan 2020 10:51:12 GMT):
what about that??

Amanullah68 (Fri, 31 Jan 2020 10:52:55 GMT):
this part of doc badly need improvements, it's really a confusing for new ones.

faraggi (Fri, 31 Jan 2020 10:56:21 GMT):
That's the beauty of open source, you can suggest all the improvements you'd like! :) https://wiki.hyperledger.org/display/BESU/How+to+Contribute

matkt (Fri, 31 Jan 2020 10:58:41 GMT):
do you have a firewall that could prevent the node from working?

Amanullah68 (Fri, 31 Jan 2020 11:00:22 GMT):
yeah

Amanullah68 (Fri, 31 Jan 2020 11:04:52 GMT):
what's the real life use cases of blockchain??

faraggi (Fri, 31 Jan 2020 11:12:24 GMT):
Many potential usecase. MANY more are being invented everyday.

faraggi (Fri, 31 Jan 2020 11:12:24 GMT):
Many potential usecases. MANY more are being invented everyday.

Amanullah68 (Fri, 31 Jan 2020 11:16:44 GMT):
please share few ones, so that I get better idea

faraggi (Fri, 31 Jan 2020 11:19:57 GMT):
This isn't the best forum to ask that question. You can surely find better information on https://ethereum.org/ or other websites. This chat if for Besu- your previous questions were perfectly in line with what we are capable of answering here.

Amanullah68 (Fri, 31 Jan 2020 11:21:30 GMT):
okay sure, thanks

faraggi (Fri, 31 Jan 2020 16:44:44 GMT):
We did some tests internally, and it works so this might be coming from your end. @matkt 's question is obvs very pertinent

eum602 (Fri, 31 Jan 2020 18:40:38 GMT):
@faraggi I don know why I cannot comment on the original thread, but related to the NAT question, let me explain the following : Basically, I have a node "n" whose outgoing traffic is through a NAT (lets say public IP "A"), on the other hand incoming traffic is been received on another IP (lets say public IP "B" where it is listening on port 30303(tcp/udp)). I have noticed that the node "n" connects to other public nodes in the network in order pull blocks. Once the node has syncronized with the network the node loose ESTABLISHED connections with other nodes. What I think is that other nodes tries to connect to node "n" by using the IP "B" in the 30303 port (since it is the IP where the node "n" established request to other nodes). But because this IP "B" is not listening on port 30303 then other nodes cannot make request to node "n". I tried to configure p2p-host="ip A" , with that the node "n" is still able to synchronize but after that connections to other nodes are broken. So, based on that, I would like to know if it is mandatory that IP "A" = IP "B" in order to establish p2p connections?. And also will it work if I make the port forwarding from the external IP to the internal where the node resides?

eum602 (Fri, 31 Jan 2020 18:40:38 GMT):
@faraggi I don know why I cannot comment on the original thread, but related to the NAT question, let me explain the following : Basically, I have a node "n" whose outgoing traffic is through a NAT (lets say public IP "A"), on the other hand incoming traffic is been received on another IP (lets say public IP "B" where it is listening on port 30303(tcp/udp)). I have noticed that the node "n" connects to other public nodes in the network in order pull blocks. Once the node has syncronized with the network the node loose ESTABLISHED connections with other nodes. What I think is that other nodes tries to connect to node "n" by using the IP "B" in the 30303 port (since it is the IP where the node "n" established request to other nodes). But because this IP "B" is not listening on port 30303 then other nodes cannot make request to node "n". I tried to configure p2p-host="ip A" , with that the node "n" is still able to synchronize but after that connections to other nodes are broken. So, based on that, I would like to know if it is mandatory that IP "A" = IP "B" in order to establish p2p connections?. And also will it work if I make the port forwarding from the external IP to the internal where the node resides?

faraggi (Fri, 31 Jan 2020 19:15:15 GMT):
Thanks for all that background info @eum602 ! This is how you ask a question! :) I'll update as soon as I can.

atoulme (Fri, 31 Jan 2020 20:02:28 GMT):
hey folks, just checking - is this the proper way to run ethstats with besu? https://besu.hyperledger.org/en/stable/HowTo/Deploy/Lite-Network-Monitor/ is there a lighter way without running a sidecar alongside besu?

shemnon (Sat, 01 Feb 2020 01:45:47 GMT):
not right now. There was a reuest earlier for integrated estatas reporting but whoever requested it never opened up a jira bug.

atoulme (Sat, 01 Feb 2020 02:00:45 GMT):
got it

atoulme (Sat, 01 Feb 2020 02:08:05 GMT):
that's not a bad filter :D

atoulme (Sat, 01 Feb 2020 02:32:56 GMT):
well I took the time to file it here: https://jira.hyperledger.org/browse/BESU-191 please review at leisure

mano10 (Sun, 02 Feb 2020 09:12:51 GMT):
Has joined the channel.

mano10 (Sun, 02 Feb 2020 09:12:53 GMT):
Hi Everyone, I am trying to get the Besu client to connect to the Ethereum mainnet but its stuck at bock no. 9387845 and I see the following error msg repeated many times: 2020-02-02 09:10:26.799+00:00 | vert.x-eventloop-thread-2 | WARN | PeerDiscoveryAgent | Sending to peer DiscoveryPeer{status=bonded, enode=enode://c51e464381e3fae74d07eaeb56501384d5e7905987195f8e50cbabd731c84ddff4a09c3cbf66b0e615b8b5be9ddb6840b2574eed228f81955a042024c699f1f0@10.255.0.2:31063, firstDiscovered=1580634585407, lastContacted=1580634585418, lastSeen=1580634585407} failed, packet: 0x3576f60d0d7fe69ccc1a7b37015fb0eae9d42b49e83751e445f86c26a05d19359abf90c0d8fd87fb77a8ae6b5c45b138d89f19fccf5c365cb421407a89db81e97ae0246682037ff30779d720908e826b5f41838f27e9aeab08d1d710c8afd5930003f849b84060c4b3bafc5dbc32afba333a1830cfee2beb31c6fa6f626287815bb07ce9244b6b7613272263fef10e1276d58c9f8076402ac8c8b48cb02ab50b1b827072f91b860170052b454b besu_mainnet_node.1.qwxy24gavk7y@imbox | java.net.SocketException: Operation not permitted besu_mainnet_node.1.qwxy24gavk7y@imbox | at sun.nio.ch.DatagramChannelImpl.send0(Native Method) ~[?:?] besu_mainnet_node.1.qwxy24gavk7y@imbox | at sun.nio.ch.DatagramChannelImpl.sendFromNativeBuffer(DatagramCh

mano10 (Sun, 02 Feb 2020 09:12:53 GMT):
Hi Everyone, I am trying to get the Besu client to connect to the Ethereum mainnet but its stuck at bock no. 9387845 and I see the following error msg repeated many times: 2020-02-02 09:10:26.799+00:00 | vert.x-eventloop-thread-2 | WARN | PeerDiscoveryAgent | Sending to peer DiscoveryPeer{status=bonded, enode=enode://c51e464381e3fae74d07eaeb56501384d5e7905987195f8e50cbabd731c84ddff4a09c3cbf66b0e615b8b5be9ddb6840b2574eed228f81955a042024c699f1f0@10.255.0.2:31063, firstDiscovered=1580634585407, lastContacted=1580634585418, lastSeen=1580634585407} failed, packet: 0x3576f60d0d7fe69ccc1a7b37015fb0eae9d42b49e83751e445f86c26a05d19359abf90c0d8fd87fb77a8ae6b5c45b138d89f19fccf5c365cb421407a89db81e97ae0246682037ff30779d720908e826b5f41838f27e9aeab08d1d710c8afd5930003f849b84060c4b3bafc5dbc32afba333a1830cfee2beb31c6fa6f626287815bb07ce9244b6b7613272263fef10e1276d58c9f8076402ac8c8b48cb02ab50b1b827072f91b860170052b454b besu_mainnet_node.1.qwxy24gavk7y@imbox | java.net.SocketException: Operation not permitted besu_mainnet_node.1.qwxy24gavk7y@imbox | at sun.nio.ch.DatagramChannelImpl.send0(Native Method) ~[?:?] besu_mainnet_node.1.qwxy24gavk7y@imbox | at sun.nio.ch.DatagramChannelImpl.sendFromNativeBuffer(DatagramCh

mano10 (Sun, 02 Feb 2020 09:13:39 GMT):
any ideas what I am doing wrong?

faraggi (Sun, 02 Feb 2020 10:54:27 GMT):
possibly a version issue? what besu version are you running?

faraggi (Sun, 02 Feb 2020 10:54:27 GMT):
possibly a version/fork issue? what Besu version are you running?

faraggi (Sun, 02 Feb 2020 12:31:58 GMT):
:mega: *Want some Besu Stickers?!* Answer our community survey and we'll send them over to you. Just make sure to add your full postal address in the survey. https://forms.gle/QLL6ANoGrQAhvLTw9 :mega:

adityasingh177 (Sun, 02 Feb 2020 12:42:56 GMT):
@faraggi

faraggi (Sun, 02 Feb 2020 12:46:33 GMT):
Thanks for following up @adityasingh177 Let me get back to you.

adityasingh177 (Sun, 02 Feb 2020 12:55:14 GMT):
Hello Everyone , How can i deploy besu using kubernetes ?

mano10 (Sun, 02 Feb 2020 13:03:15 GMT):
i tried 1.3 and 1.4beta with the same results.

shemnon (Mon, 03 Feb 2020 05:56:44 GMT):
The stuck node and datagram error may be unrelated. Initially it smells like a peer starvation issue, and the datagram send issue feels like something the netwking stack is rejecting, maybe because of firewall?

shemnon (Mon, 03 Feb 2020 05:59:03 GMT):
Can you turn on the ADMIN endpoints (`--rpc-http-api=ADMIN`) and see if you ahve peers by sending a admin_peers call? (https://besu.hyperledger.org/en/stable/Reference/API-Methods/#admin_peers)

shemnon (Mon, 03 Feb 2020 06:00:11 GMT):
you can manually add peers - here's a good list that gets updated regularly - https://gist.github.com/rfikki/a2ccdc1a31ff24884106da7b9e6a7453

faraggi (Mon, 03 Feb 2020 08:42:20 GMT):
Not sure you saw this: https://besu.hyperledger.org/en/stable/HowTo/Deploy/Kubernetes/ Does that help?

adityasingh177 (Mon, 03 Feb 2020 12:07:32 GMT):
Hi all , i had questions regarding fast sync benchmarking , and then how security could be a concern in fast sync mode and how to overcome that

ppoliani (Mon, 03 Feb 2020 13:02:06 GMT):
@adityasingh177 you can have a look into this repo as well for quick examples. https://github.com/PegaSysEng/besu-kubernetes

faraggi (Mon, 03 Feb 2020 13:45:41 GMT):
Plasma should be supported, o long as its a compatible with standard protocol level ethereum, Besu should support it.

lucianosilva44 (Mon, 03 Feb 2020 14:01:01 GMT):
Has joined the channel.

faraggi (Mon, 03 Feb 2020 14:53:10 GMT):
@adityasingh177 https://ethereum.stackexchange.com/a/79560/12153 regarding plasma

faraggi (Mon, 03 Feb 2020 14:53:10 GMT):
@adityasingh177 https://ethereum.stackexchange.com/a/79560/12153 regarding plasma. looks like a nice answer to your question

adityasingh177 (Mon, 03 Feb 2020 14:53:46 GMT):
Thanks @faraggi

adityasingh177 (Mon, 03 Feb 2020 14:58:28 GMT):
ok , will try with that @faraggi @ppoliani

ppoliani (Mon, 03 Feb 2020 19:52:58 GMT):
I'm facing a weird issue with authentication; I can successfully login and get the access token but I can't use for an json-rpc call. It simply says `Signature verification failed`. In the past I had a similar issue but that was due to getting an access token from the http server and trying to use it in the ws server. However this time I'm using the http server in both cases. ``` 2020-02-03 19:47:53.152+00:00 | vert.x-eventloop-thread-1 | DEBUG | AuthenticationUtils | Invalid JWT token java.lang.RuntimeException: Signature verification failed at io.vertx.ext.jwt.JWT.decode(JWT.java:299) ~[vertx-jwt-3.8.0.jar:3.8.0] at io.vertx.ext.auth.jwt.impl.JWTAuthProviderImpl.authenticate(JWTAuthProviderImpl.java:122) ~[vertx-auth-jwt-3.8.0.jar:3.8.0] at org.hyperledger.besu.ethereum.api.jsonrpc.authentication.AuthenticationUtils.getUser(AuthenticationUtils.java:80) ~[besu-api-1.3.8.jar:1.3.8] at org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService.handleJsonRPCRequest(JsonRpcHttpService.java:340) ~[besu-api-1.3.8.jar:1.3.8] ```

ppoliani (Mon, 03 Feb 2020 19:54:04 GMT):
to give you a bit more info; I have a k8s deployment with two replicas

ppoliani (Mon, 03 Feb 2020 19:56:15 GMT):
I have checked the logs and I can verify that the `/login` endpoint is invoked ``` 2020-02-03 19:54:20.528+00:00 | vert.x-eventloop-thread-1 | TRACE | RouterImpl | Router: 1865300901 accepting request POST /login 2020-02-03 19:54:20.531+00:00 | vert.x-eventloop-thread-1 | TRACE | RoutingContextImplBase | Route matches: Route[ path:null pattern:null handlers:[org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService$$Lambda$800/0x0000000840568440@563b5c62] failureHandlers:[] order:0 methods:[]]@981695220 2020-02-03 19:54:20.531+00:00 | vert.x-eventloop-thread-1 | TRACE | RoutingContextImplBase | Calling the handler 2020-02-03 19:54:20.531+00:00 | vert.x-eventloop-thread-1 | TRACE | RoutingContextImplBase | Route matches: Route[ path:null pattern:null handlers:[io.vertx.ext.web.handler.impl.CorsHandlerImpl@7b48617b] failureHandlers:[] order:1 methods:[]]@1705352868 2020-02-03 19:54:20.532+00:00 | vert.x-eventloop-thread-1 | TRACE | RoutingContextImplBase | Calling the handler 2020-02-03 19:54:20.532+00:00 | vert.x-eventloop-thread-1 | TRACE | RoutingContextImplBase | Route matches: Route[ path:null pattern:null handlers:[io.vertx.ext.web.handler.impl.BodyHandlerImpl@6971163e] failureHandlers:[] order:2 methods:[]]@1208255806 2020-02-03 19:54:20.532+00:00 | vert.x-eventloop-thread-1 | TRACE | RoutingContextImplBase | Calling the handler 2020-02-03 19:54:20.551+00:00 | vert.x-eventloop-thread-1 | TRACE | RoutingContextImplBase | Route matches: Route[ path:/login pattern:null handlers:[org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService$$Lambda$812/0x0000000840570c40@74d35dd6] failureHandlers:[] order:7 methods:[POST]]@300993466 2020-02-03 19:54:20.551+00:00 | vert.x-eventloop-thread-1 | TRACE | RoutingContextImplBase | Calling the handler ```

ppoliani (Mon, 03 Feb 2020 19:57:28 GMT):
``` 2020-02-03 19:54:20.528+00:00 | vert.x-eventloop-thread-1 | TRACE | RouterImpl | Router: 1865300901 accepting request POST /login 2020-02-03 19:54:20.531+00:00 | vert.x-eventloop-thread-1 | TRACE | RoutingContextImplBase | Route matches: Route[ path:null pattern:null handlers:[org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService$$Lambda$800/0x0000000840568440@563b5c62] failureHandlers:[] order:0 methods:[]]@981695220 2020-02-03 19:54:20.531+00:00 | vert.x-eventloop-thread-1 | TRACE | RoutingContextImplBase | Calling the handler 2020-02-03 19:54:20.531+00:00 | vert.x-eventloop-thread-1 | TRACE | RoutingContextImplBase | Route matches: Route[ path:null pattern:null handlers:[io.vertx.ext.web.handler.impl.CorsHandlerImpl@7b48617b] failureHandlers:[] order:1 methods:[]]@1705352868 2020-02-03 19:54:20.532+00:00 | vert.x-eventloop-thread-1 | TRACE | RoutingContextImplBase | Calling the handler 2020-02-03 19:54:20.532+00:00 | vert.x-eventloop-thread-1 | TRACE | RoutingContextImplBase | Route matches: Route[ path:null pattern:null handlers:[io.vertx.ext.web.handler.impl.BodyHandlerImpl@6971163e] failureHandlers:[] order:2 methods:[]]@1208255806 2020-02-03 19:54:20.532+00:00 | vert.x-eventloop-thread-1 | TRACE | RoutingContextImplBase | Calling the handler 2020-02-03 19:54:20.551+00:00 | vert.x-eventloop-thread-1 | TRACE | RoutingContextImplBase | Route matches: Route[ path:/login pattern:null handlers:[org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService$$Lambda$812/0x0000000840570c40@74d35dd6] failureHandlers:[] order:7 methods:[POST]]@300993466 2020-02-03 19:54:20.551+00:00 | vert.x-eventloop-thread-1 | TRACE | RoutingContextImplBase | Calling the handler ```

ppoliani (Mon, 03 Feb 2020 19:57:58 GMT):
this is the logs when I login and get an access token

ppoliani (Mon, 03 Feb 2020 19:58:29 GMT):
also I used the creds.toml file in a previous deployment and it worked fine

ppoliani (Mon, 03 Feb 2020 20:08:08 GMT):
I think the issue is with the fact that I had two pods (on different machines) that were load balanced under the same url.

ppoliani (Mon, 03 Feb 2020 20:08:45 GMT):
how would we support authentication in such an HA scenario? Shall I go with the second auth method JWT Public Key Authentication>

shemnon (Mon, 03 Feb 2020 22:09:33 GMT):
Besu contributor call tomorrow/today at 1500 UTC - https://consensys.zoom.us/j/199741148 Add your agenda items here - https://wiki.hyperledger.org/display/BESU/2020-02-04+Besu+Contributor+Call

mateo_ventures (Tue, 04 Feb 2020 01:05:02 GMT):
Has joined the channel.

faraggi (Tue, 04 Feb 2020 09:09:02 GMT):
:mega:

faraggi (Tue, 04 Feb 2020 09:09:03 GMT):
^ Reminder that our bi-weekly contributor call is today ^ Agenda and its comments are open for updates, and propositions at the above link.

faraggi (Tue, 04 Feb 2020 10:52:14 GMT):
We have a couple of new GOOD FIRST ISSUES for grabs: https://jira.hyperledger.org/browse/BESU-193 https://jira.hyperledger.org/browse/BESU-194 :100:

Amanullah68 (Tue, 04 Feb 2020 11:02:47 GMT):
node example/eventEmitter.js { Error: connect ECONNREFUSED 127.0.0.1:20000 at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1107:14) errno: 'ECONNREFUSED', code: 'ECONNREFUSED', syscall: 'connect', address: '127.0.0.1', port: 20000, config: { adapter: [Function: httpAdapter], transformRequest: { '0': [Function: transformRequest] }, transformResponse: { '0': [Function: transformResponse] }, timeout: 0, xsrfCookieName: 'XSRF-TOKEN', xsrfHeaderName: 'X-XSRF-TOKEN', maxContentLength: -1, validateStatus: [Function: validateStatus], headers: { Accept: 'application/json, text/plain, */*', 'Content-Type': 'application/json;charset=utf-8', 'User-Agent': 'axios/0.18.1', 'Content-Length': 163 }, method: 'post', url: 'http://localhost:20000', data: '{"jsonrpc":"2.0","method":"priv_getTransactionCount","params":["0xfe3b557e8fb62b89f4916b721be55ceb828dbd73","DyAOiF/ynpc+JXa2YAGB0bCitSlOMNm+ShmB/7M6C4w="],"id":1}' }, request: Writable { _writableState: WritableState { objectMode: false, highWaterMark: 16384, finalCalled: false, needDrain: false, ending: false, ended: false, finished: false, destroyed: false, decodeStrings: true, defaultEncoding: 'utf8', length: 0, writing: false, corked: 0, sync: true, bufferProcessing: false, onwrite: [Function: bound onwrite], writecb: null, writelen: 0, bufferedRequest: null, lastBufferedRequest: null, pendingcb: 0, prefinished: false, errorEmitted: false, emitClose: true, autoDestroy: false, bufferedRequestCount: 0, corkedRequestsFree: [Object] }, writable: true, _events: [Object: null prototype] { response: [Function: handleResponse], error: [Function: handleRequestError] }, _eventsCount: 2, _maxListeners: undefined, _options: { protocol: 'http:', maxRedirects: 21, maxBodyLength: 10485760, path: '/', method: 'post', headers: [Object], agent: undefined, auth: undefined, hostname: 'localhost', port: '20000', nativeProtocols: [Object], pathname: '/' }, _redirectCount: 0, _redirects: [], _requestBodyLength: 163, _requestBodyBuffers: [ [Object] ], _onNativeResponse: [Function], _currentRequest: ClientRequest { _events: [Object], _eventsCount: 6, _maxListeners: undefined, output: [], outputEncodings: [], outputCallbacks: [], outputSize: 0, writable: true, _last: true, chunkedEncoding: false, shouldKeepAlive: false, useChunkedEncodingByDefault: true, sendDate: false, _removedConnection: false, _removedContLen: false, _removedTE: false, _contentLength: null, _hasBody: true, _trailer: '', finished: false, _headerSent: true, socket: [Socket], connection: [Socket], _header: 'POST / HTTP/1.1\r\nAccept: application/json, text/plain, */*\r\nContent-Type: application/json;charset=utf-8\r\nUser-Agent: axios/0.18.1\r\nContent-Length: 163\r\nHost: localhost:20000\r\nConnection: close\r\n\r\n', _onPendingData: [Function: noopPendingOutput], agent: [Agent], socketPath: undefined, timeout: undefined, method: 'POST', path: '/', _ended: false, res: null, aborted: undefined, timeoutCb: null, upgradeOrConnect: false, parser: null, maxHeadersCount: null, _redirectable: [Circular], [Symbol(isCorked)]: false, [Symbol(outHeadersKey)]: [Object] }, _currentUrl: 'http://localhost:20000/' }, response: undefined }

Amanullah68 (Tue, 04 Feb 2020 11:03:11 GMT):
go this error when running this command

Amanullah68 (Tue, 04 Feb 2020 11:03:27 GMT):
node example/eventEmitter.js

Amanullah68 (Tue, 04 Feb 2020 11:03:49 GMT):
In the besu-quicknetwork

Amanullah68 (Tue, 04 Feb 2020 11:04:31 GMT):
I enabled privacy using ./run-privacy.sh

Amanullah68 (Tue, 04 Feb 2020 11:07:01 GMT):

Screenshot from 2020-02-04 16-06-02.png

Amanullah68 (Tue, 04 Feb 2020 12:26:49 GMT):
I solve this issue. Just a little mistake from my side

Amanullah68 (Tue, 04 Feb 2020 12:27:09 GMT):
How I create privacy groups??

faraggi (Tue, 04 Feb 2020 12:45:24 GMT):
https://docs.orion.pegasys.tech/en/stable/Getting-Started/Quickstart/ https://docs.orion.pegasys.tech/en/stable/Reference/API-Methods/#createprivacygroup

Amanullah68 (Tue, 04 Feb 2020 12:46:10 GMT):
thanks :-)

faraggi (Tue, 04 Feb 2020 12:46:17 GMT):
Keep in mind that Orion has a separate repo, docs and is a different project from Besu. Although, also made by some of the same people.

faraggi (Tue, 04 Feb 2020 12:47:03 GMT):
And this HL rocket chat is for discussing Besu :)

Amanullah68 (Tue, 04 Feb 2020 12:48:05 GMT):
oh I think it was developed by same

Amanullah68 (Tue, 04 Feb 2020 12:48:51 GMT):
what to use for private transactions in main net??

faraggi (Tue, 04 Feb 2020 12:49:12 GMT):
Pegasys develops Orion commercially, and many pegasys developers maintain and develop Besu. But Besu is an open source project under Hyperlegder.

faraggi (Tue, 04 Feb 2020 12:49:12 GMT):
Pegasys develops Orion, and manyPegasys developers maintain and develop Besu. But Besu is an open source project under Hyperlegder.

Amanullah68 (Tue, 04 Feb 2020 12:50:58 GMT):
good to know, thanks again

Amanullah68 (Tue, 04 Feb 2020 12:51:22 GMT):
Is there any other way for enabling privacy??

faraggi (Tue, 04 Feb 2020 12:54:11 GMT):
> Is there any other way for enabling privacy?? What do you mean with that question?

Amanullah68 (Tue, 04 Feb 2020 12:54:35 GMT):
other then Orion

faraggi (Tue, 04 Feb 2020 12:57:11 GMT):
Thats a long answer, privacy is not binary I/O. Its a spectrum that goes from fully public to completely private. So yes, there are other ways to do Privacy on Etherum.

Amanullah68 (Tue, 04 Feb 2020 12:58:08 GMT):
thanks :-)

Radhi (Tue, 04 Feb 2020 13:02:36 GMT):
Hello, you can suggest some one please @faraggi ?

faraggi (Tue, 04 Feb 2020 13:03:04 GMT):
@Radhi you mean, suggest a privacy solution?

Radhi (Tue, 04 Feb 2020 13:03:15 GMT):
Yes

faraggi (Tue, 04 Feb 2020 13:04:00 GMT):
Aztec for example: https://docs.aztecprotocol.com/#/SDK/Getting%20started But keep in mind, this isn't at all the same thing Orion does. It really depends on what you are building.

faraggi (Tue, 04 Feb 2020 13:04:00 GMT):
Aztec for example: https://docs.aztecprotocol.com/#/SDK/Getting%20started But keep in mind, this isn't at all the same thing Orion does. Choosing the right tool really depends on what you are building.

Radhi (Tue, 04 Feb 2020 13:06:13 GMT):
can this help me to make private transactions between end users (accounts, address)?

faraggi (Tue, 04 Feb 2020 13:08:42 GMT):
I believe, so, but I'm not an expert on Aztec and this isn't a forum for those kind of questions, really.

Radhi (Tue, 04 Feb 2020 13:11:16 GMT):
Ok, Thanks :slight_smile:

ppoliani (Tue, 04 Feb 2020 13:16:53 GMT):
If anyone comes across this issue, I fixed it by using sticky session at the load balancer level.

shemnon (Tue, 04 Feb 2020 14:57:52 GMT):
Please use this link for today's contributor call - https://consensys.zoom.us/j/199741148?status=success

adityasingh177 (Tue, 04 Feb 2020 15:22:10 GMT):
Thanks @ppoliani

adityasingh177 (Tue, 04 Feb 2020 15:25:18 GMT):
How did you maintained Sticky session at LB level , where are you using besu , on the cloud ?

rjones (Tue, 04 Feb 2020 17:39:37 GMT):
faraggi

rjones (Tue, 04 Feb 2020 17:39:42 GMT):
shemnon

niliakis (Wed, 05 Feb 2020 08:23:42 GMT):
If i set up a private blockchain, with zero gas fee, do I have to make the users of my app to use a wallet? How can I convert my dapp into app?

rajashekarkodi (Wed, 05 Feb 2020 12:14:14 GMT):
Has left the channel.

timbeiko (Wed, 05 Feb 2020 14:06:41 GMT):
As mentioned on yesterday's contributor call, I've added a template to the Besu Wiki for feature proposals. Feel free to discuss any ideas for Besu here informally, but if you want to submit a more fleshed out proposal, you can use this template to add it to the Wiki: https://wiki.hyperledger.org/display/BESU/Feature+Proposal+Template

adityasingh177 (Wed, 05 Feb 2020 14:58:47 GMT):
Thanks @timbeiko

faraggi (Wed, 05 Feb 2020 16:13:53 GMT):
two questions in there. >with zero gas fee, do I have to make the users of my app to use a wallet? 'wallets' might still be used to handle transaction handling, depending on how your dapp is setup. >How can I convert my dapp into app? Not sure what you mean by this. The difference between a dapp and an app is the decentralization part. Lets loosely say that if it uses web3 tech, its a dapp.

adityasingh177 (Wed, 05 Feb 2020 16:41:22 GMT):
Hi everyone , i am looking for some scaling solutions using hyperledger besu

adityasingh177 (Wed, 05 Feb 2020 16:41:49 GMT):
Which can be applied using besu

faraggi (Wed, 05 Feb 2020 16:58:24 GMT):
Really depends on what you're looking for. For example, if what you want is to get better TPS, you should know that private networks can go higher than what's available in mainnet. If you want scalability in terms of deployment solutions and infrastructure on top of Besu, Orchestrate and tools like it do a great job. If you want protocol level scaling using Besu, any of the solutions out there will work with Besu because, if its supported by the protocol, Besu can handle it.

adityasingh177 (Wed, 05 Feb 2020 16:59:18 GMT):
In the same context , what is the block time achieved in besu ?

faraggi (Wed, 05 Feb 2020 17:28:43 GMT):
Similarly, blocktimes in mainnet are defined by the eth network (~15 seconds per block). However, in permissioned networks, this can be tweaked in the genesis file https://besu.hyperledger.org/en/stable/HowTo/Configure/Consensus-Protocols/IBFT/#block-time with the `blockperiodseconds` variable. Some live, production networks that are using Besu have chosen 2 second block times. Note though that having such a small block time isn't necessary for many projects.

adityasingh177 (Wed, 05 Feb 2020 17:35:11 GMT):
https://wiki.hyperledger.org/display/BESU/2020-02-18+Besu+Contributor+Call

adityasingh177 (Wed, 05 Feb 2020 17:35:35 GMT):
added topic for security in fast sync

jvrock (Thu, 06 Feb 2020 00:17:26 GMT):
Has joined the channel.

jvrock (Thu, 06 Feb 2020 00:17:28 GMT):
Hi All! I've been testing out Besu/Orion, specifically around the privacy features and I had a general question about a scenario I was playing with. I was envisaging a scenario of minting a token with a new private smart contract, to a defined privacy group - but then having private transactions with this token with a smaller subset of participants having visibility than the broader privacy group. I understand that Orion (by design) doesn't allow making private transactions to a subset of the original privacy group, so would the general advice be to use Besu + something like AZTEC due to its ZKP features for this kind of use case? Or would the Cross privacy group communication features that are in the roadmap provide a way to tackle this with Orion in the future?

niliakis (Thu, 06 Feb 2020 07:41:24 GMT):
By saying dapp into app, I meant tha for the users it would be like an app, without interacting with a wallet. Can I handle the transactions for them in the background, somehow?

faraggi (Thu, 06 Feb 2020 08:19:32 GMT):
Sure, thats doable. Appliciations can have server-running code that do the business logic and sign the TXs. The 'decentralized' aspect of it is arguable, but I personally think it still is valuable, depending on the implementation. In these cases, its important to note that the users won't be using their own private keys to sign transactions.

Amanullah68 (Thu, 06 Feb 2020 11:43:45 GMT):
How to enable privacy in besu private network??

Amanullah68 (Thu, 06 Feb 2020 11:43:55 GMT):
document isn't helpful

raedbensaid (Thu, 06 Feb 2020 13:45:16 GMT):
Hello guys, can you help me with the implementtion of besu + orion ? i'm following this ( https://github.com/PegaSysEng/besu-kubernetes/tree/master/kubectl/private-network-ibft-and-orion ) and step 5 is not clear! what updates should i do ? i which file ? because i found the orion1.conf to orion4.conf sections in the configmap/configmap.yaml and not in configmap/orion-configmap.yaml

raedbensaid (Thu, 06 Feb 2020 13:45:16 GMT):
Hello guys, can you help me with the implementation of besu + orion ? i'm following this ( https://github.com/PegaSysEng/besu-kubernetes/tree/master/kubectl/private-network-ibft-and-orion ) and step 5 is not clear! what updates should i do ? i which file ? because i found the orion1.conf to orion4.conf sections in the configmap/configmap.yaml and not in configmap/orion-configmap.yaml

raedbensaid (Thu, 06 Feb 2020 13:45:16 GMT):
Hello guys, can you help me with the implementation of besu + orion ? i'm following this ( https://github.com/PegaSysEng/besu-kubernetes/tree/master/kubectl/private-network-ibft-and-orion ) and step 5 is not clear! what updates should i do ? in which file ? because i found the orion1.conf to orion4.conf sections in the configmap/configmap.yaml and not in configmap/orion-configmap.yaml @faraggi

adityasingh177 (Thu, 06 Feb 2020 14:03:56 GMT):
Hi All , @faraggi ,Does besu has muti-tenancy features ?

ArvsIndrarys (Thu, 06 Feb 2020 14:05:10 GMT):
Has joined the channel.

faraggi (Thu, 06 Feb 2020 14:26:57 GMT):
Hi Amanullah68, Your question has to be more precise. Hard to help with so little information.

faraggi (Thu, 06 Feb 2020 14:31:20 GMT):
Multi Tenancy is being released in the next 1.4 aimed for RC on 13 Feb 2020, full release on 27 Feb 2020.

adityasingh177 (Thu, 06 Feb 2020 14:34:13 GMT):
Ok Thanks , how can it be implemented , is it same a multi-party ?

adityasingh177 (Thu, 06 Feb 2020 14:34:13 GMT):
Ok Thanks , how can it be implemented and is it same aa multi-party computations?

adityasingh177 (Thu, 06 Feb 2020 14:34:13 GMT):
Ok Thanks , how can it be implemented and is it same as multi-party computations?

adityasingh177 (Thu, 06 Feb 2020 14:34:13 GMT):
Ok Thanks , how can it be implemented and is it same as multi-party computation?

ppoliani (Thu, 06 Feb 2020 18:25:10 GMT):
Hello everyone :wave:

ppoliani (Thu, 06 Feb 2020 18:28:01 GMT):
I have deployed a CLIQUE network (5 node in total) on my kubernetes cluster and I've noticed an interesting thing; at some random times all five node restart. DIging into the logs of each node (before they restarted) and I can see the following lines ``` 2020-02-06 01:46:57.782+00:00 | nioEventLoopGroup-3-1 | INFO | BlockPropagationManager | Saving announced block 115492 (0x4c08c7f2305dab80ea9e0544321cbb4e62c8a243fa52efb9901d13e62a266a07) for future import 2020-02-06 01:46:58.634+00:00 | pool-9-thread-588 | INFO | BlockMiner | Produced and imported block #115,491 / 0 tx / 0 om / 0 (0.0%) gas / (0xb1b50da660fce3bb5ec6bcfd73109ed35759d1b06cee9a7019c5fc854e91fc6a) in 8.633s 2020-02-06 01:47:08.426+00:00 | nioEventLoopGroup-3-1 | INFO | BlockPropagationManager | Saving announced block 115493 (0x4a1b1404e5d54fc41f69aa6850d994ffe31b1b47734b6659044dd2295ad8a37a) for future import ```

ppoliani (Thu, 06 Feb 2020 19:04:13 GMT):
Ok, the reason it failed with `OOMKilled` which based on https://kubernetes.io/docs/tasks/administer-cluster/out-of-resource/#node-oom-behavior is due to memory limit contraint

ppoliani (Thu, 06 Feb 2020 19:07:30 GMT):
I used this deployment https://github.com/PegaSysEng/besu-kubernetes/tree/master/kubectl/private-network-clique/deployments and it sets the limit to ``` limits: cpu: 500m memory: 512Mi ``` I assume the issue is with my Digital Ocean node, but it would be nice to see if anyone else had that issue before

ppoliani (Thu, 06 Feb 2020 19:07:50 GMT):
I used this deployment https://github.com/PegaSysEng/besu-kubernetes/tree/master/kubectl/private-network-clique/deployments and it sets the limit to limits: cpu: 500m memory: 512Mi I assume the issue is with my Digital Ocean node, but it would be nice to see if anyone else had that issue before

shemnon (Thu, 06 Feb 2020 19:09:37 GMT):
How much memory does each node have?

ppoliani (Thu, 06 Feb 2020 19:11:25 GMT):

Screenshot 2020-02-06 at 19.10.29.png

ppoliani (Thu, 06 Feb 2020 19:11:38 GMT):
it looks fine to me; the validators consume reasonable amount of memory; so probably some other processes (irrelevant to besu) are draining the memory

shemnon (Thu, 06 Feb 2020 19:14:41 GMT):
We list 4G as the mimimum. This behavior isn't suprising when they are trying to work with 5% of that. I think for smaller chains that less memory is needed, but that number is based on enterprise stability needs.

shemnon (Thu, 06 Feb 2020 19:14:41 GMT):
We list 4GiB as the mimimum. This behavior isn't suprising when they are trying to work with 5% of that. I think for smaller chains that less memory is needed, but that number is based on enterprise stability needs.

shemnon (Thu, 06 Feb 2020 19:14:44 GMT):
https://besu.hyperledger.org/en/stable/HowTo/Get-Started/System-Requirements/

ppoliani (Thu, 06 Feb 2020 19:22:07 GMT):
I use a droplet of 4GiB that runs a couple of nodes + kubelet + etcd so I assume this is not enough

ppoliani (Thu, 06 Feb 2020 19:22:54 GMT):
but I assume the reason it fails is because the limits defined in k8s deployment file is low. Should I set those limits to the suggested one i.e. 4Gib?

shemnon (Thu, 06 Feb 2020 19:23:25 GMT):
each JVM may need up to 4GiB. You may be fine with 1GiB or less but stability and TPS will suffer.

ppoliani (Thu, 06 Feb 2020 19:24:47 GMT):
that makes sense; do you happen to have some stats from existing users that could suggest what limits would be good enough for a production deployment?

shemnon (Thu, 06 Feb 2020 19:25:22 GMT):
not off hand, I'm just a coder. @faraggi may know where to get that info

ppoliani (Thu, 06 Feb 2020 19:30:28 GMT):
@shemnon cheers mate. That was helpful

jframe (Thu, 06 Feb 2020 22:15:33 GMT):
The multi-tenancy feature being released in Besu 1.4 is specific to private transactions. It will allow a single Besu and Orion to be handle private transactions for many users in a secure way.

adityasingh177 (Fri, 07 Feb 2020 05:17:12 GMT):
What is meant by many users ? are they not part of the same private network ?

adityasingh177 (Fri, 07 Feb 2020 05:17:12 GMT):
Ok thanks but i am a little confused here by what is meant by many users ? are they not part of the same private network ?

adityasingh177 (Fri, 07 Feb 2020 05:17:12 GMT):
Ok thanks but i am a little confused here by what is meant by 'many users' ? are they not part of the same private network ?

raedbensaid (Fri, 07 Feb 2020 08:14:22 GMT):
Hey guys, i have a problem with besu + orion ? i'm following this https://github.com/PegaSysEng/besu-kubernetes/tree/master/kubectl/private-network-ibft-and-orion and step 5 is not clear! what updates should i do ? in which file ? ps : i found the orion1.conf to orion4.conf sections in the configmap/configmap.yaml and not in configmap/orion-configmap.yaml is that ok ? @shemnon @faraggi :)

faraggi (Fri, 07 Feb 2020 09:02:14 GMT):
Unfortunately, we don't have that data now, but there are several different groups working on getting more user data and we'll possibly update the docs with approximate data in the future. No specific dates or timelines, so I'd recommend increasing the MEM until the network seems stable. :/

UnboxedType (Fri, 07 Feb 2020 10:10:58 GMT):
Has joined the channel.

UnboxedType (Fri, 07 Feb 2020 10:10:59 GMT):
Hi! Does Besu allow me to change max.transaction size / gas limit per transaction? What are the default values?

shemnon (Fri, 07 Feb 2020 12:36:16 GMT):
`--target-gas-limit` CLI flag sets it. There is a issue to add it to RPC (https://jira.hyperledger.org/browse/BESU-52), but I'm not sure how much work has been done on it.

antoniosngular (Fri, 07 Feb 2020 15:06:50 GMT):
Hi, friends! We are experiencing some problems with the Orion installation. When using the pegasysEng/orion:1.5.0-SNAPSHOT container, with docker-compose, when orion can't connect to another node specified in the othernodes flag in the configuration file, the process increases memory consumption until it throws with a java.lang.OutOfMemoryError error, even with logging turned off. In the documentation we see you recommend we must place Orion and Besu in separate instances, but when the process throws there's plenty of memory left. We suspect there may be a memory leak somewhere. Nevertheless, we would like to know the recommended memory needed to run Orion. Thanks in advance!

marlow (Fri, 07 Feb 2020 15:40:57 GMT):
Hello @raedbensaid ! Your right, that's a small mistake in the readme, and I agree with you that step 5 is not very clear!

marlow (Fri, 07 Feb 2020 15:42:33 GMT):
In `configmap/configmap.yaml` are the configs of the orion nodes orion1.conf-orion4.conf. What I think `suit to your requirements` means in this context is that you can update the secret keys of the orion nodes located in secrets/orion-keys.secret.yaml. So you can have your own set of public-private keys instead of the keys in the given example

marlow (Fri, 07 Feb 2020 15:42:33 GMT):
In `configmap/configmap.yaml` are the configs of the orion nodes. What I think `suit to your requirements` means in this context is that you can update the secret keys of the orion nodes located in secrets/orion-keys.secret.yaml. So you can have your own set of public-private keys instead of the keys in the given example

marlow (Fri, 07 Feb 2020 15:44:46 GMT):
Hope that clears some things out for you!

faraggi (Fri, 07 Feb 2020 16:00:21 GMT):
Thanks Marlow, couldn't have said it better! I'll invite either of you (or anyone else) to clear that step up in the readme if you have some time. :) Contributions are welcome!

faraggi (Fri, 07 Feb 2020 16:02:30 GMT):
Hello friend! :) Let me get back to you on this.

raedbensaid (Fri, 07 Feb 2020 16:12:48 GMT):
@marlow thank you for the explanation. I moved the section of the orion nodes into configmap/orion-configmap.yaml and i modified their public / private keys and the validators keys as well. But still not working i only have 2 validators working ( pod created )! shoud i change anything in the configmap file ? maybe the path of the keys' files ?

adityasingh177 (Fri, 07 Feb 2020 16:16:23 GMT):
Thanks @jframe

marlow (Fri, 07 Feb 2020 16:21:08 GMT):
@raedbensaid If you are in the `private-network-ibft-and-orion` folder and just run `./deploy.sh`. That will automatically start a working example in kubernetes for you. You don't have to change anything

marlow (Fri, 07 Feb 2020 17:17:25 GMT):
@faraggi https://github.com/PegaSysEng/besu-kubernetes/pull/25

faraggi (Fri, 07 Feb 2020 17:29:17 GMT):
@marlow > Merged NicolasMassart merged 2 commits into PegaSysEng:master from marlowl:master 30 seconds ago

marlow (Fri, 07 Feb 2020 17:38:15 GMT):
@faraggi Quick response for friday afternoon haha!:grinning:

faraggi (Fri, 07 Feb 2020 17:54:53 GMT):
Right before signing off for the weekend. Have a nice one

adityasingh177 (Fri, 07 Feb 2020 18:33:32 GMT):
Hi Danno , This is my first issue , i have been spending time on understanding besu , will take on the issue in the near future if its not related to an upcoming release.

adityasingh177 (Fri, 07 Feb 2020 18:33:32 GMT):
Hi Danno , This is my first issue , i have been spending time on understanding besu , work is in progress

adityasingh177 (Fri, 07 Feb 2020 18:33:32 GMT):
Hi Danno , This is my first issue and i have been spending time on understanding besu , work is in progress

adityasingh177 (Fri, 07 Feb 2020 18:34:05 GMT):
Thanks

antoniosngular (Fri, 07 Feb 2020 20:53:40 GMT):
Grar

antoniosngular (Fri, 07 Feb 2020 20:54:08 GMT):
Great! Thanks, Felipe!

joshuafernandes (Fri, 07 Feb 2020 21:22:31 GMT):
Thanks @faraggi and @marlow :)

madelinemurray (Fri, 07 Feb 2020 22:36:30 GMT):
hi @antoniosngular -

madelinemurray (Fri, 07 Feb 2020 22:37:50 GMT):
I'm following up on this to get a specific number but Orion shouldn't require a huge amount of memory. To confirm, you are running Orion in a sperate instance?

antoniosngular (Fri, 07 Feb 2020 23:17:09 GMT):
No, in this moment we are running Besu + Orion in the same instance

Logi (Sat, 08 Feb 2020 13:51:57 GMT):
Has joined the channel.

Logi (Sat, 08 Feb 2020 13:51:58 GMT):
Hello All - I am new to Besu, but experienced in Hyperledger Fabric!.. wanted to start with Besu, and see it's potential for enterprise level blockchain. As a newbee to this, any suggestions/guidance to get start with?

adityasingh177 (Sat, 08 Feb 2020 14:35:47 GMT):
Hello @Logi , you can refer the docs here to get started with besu https://besu.hyperledger.org/en/stable/HowTo/Get-Started/

adityasingh177 (Sat, 08 Feb 2020 14:35:47 GMT):
Hello @Logi , Welcome , you can refer the docs here to get started with besu https://besu.hyperledger.org/en/stable/HowTo/Get-Started/

adityasingh177 (Sat, 08 Feb 2020 14:35:47 GMT):
Hello @Logi , Welcome , you can refer the docs here to get started with besu https://besu.hyperledger.org/en/stable/

Logi (Sat, 08 Feb 2020 14:36:18 GMT):
thank you!

adityasingh177 (Sat, 08 Feb 2020 14:41:26 GMT):
For starting a private network refer here https://besu.hyperledger.org/en/stable/Tutorials/Quickstarts/Private-Network-Quickstart/

adityasingh177 (Sat, 08 Feb 2020 14:41:26 GMT):
For starting a private network please refer here https://besu.hyperledger.org/en/stable/Tutorials/Quickstarts/Private-Network-Quickstart/

Logi (Sat, 08 Feb 2020 14:42:37 GMT):
this helps alot!.. thanks Aditya

adityasingh177 (Sat, 08 Feb 2020 14:42:59 GMT):
Here is the High level Architecture of Besu : - https://besu.hyperledger.org/en/stable/Concepts/ArchitectureOverview/

adityasingh177 (Sat, 08 Feb 2020 14:42:59 GMT):
Besu High level Architecture - https://besu.hyperledger.org/en/stable/Concepts/ArchitectureOverview/

madelinemurray (Sat, 08 Feb 2020 22:08:22 GMT):
OK. The reason we recommend separate instances for Besu and Orion is that if they're in the same instance, Besu and Orion fight for the same resources and Orion ends up missing out. To keep them in the same instance and avoid this, you'll need to configure the JVM to prevent this resouce conflict. We recommend running them in seperate instances to avoid this.

adityasingh177 (Sun, 09 Feb 2020 10:08:58 GMT):
Hi everyone , @antoniosngular i want to correct myself here , by instance means diff vm instances ?

adityasingh177 (Sun, 09 Feb 2020 10:08:58 GMT):
Hi everyone , @antoniosngular i may want to correct myself here , by instance means diff vm instances ?

adityasingh177 (Sun, 09 Feb 2020 10:08:58 GMT):
Hi everyone , @antoniosngular @madelinemurray i may want to correct myself here , by instance means diff vm instances ?

adityasingh177 (Sun, 09 Feb 2020 11:26:45 GMT):
Hello Everyone , after starting the private network and running node example/eventEmitter.js i am facing the below issues

adityasingh177 (Sun, 09 Feb 2020 11:26:45 GMT):
Hello Everyone , I am trying to start a simple private network , after starting the private network and running node example/eventEmitter.js i am facing the below issue :-

adityasingh177 (Sun, 09 Feb 2020 11:26:45 GMT):
Hello Everyone , I am trying to start a simple private network with all 3 nodes and Orion Docker Containers are up and running , after starting the private network and running node example/eventEmitter.js i am facing the below issue :-

adityasingh177 (Sun, 09 Feb 2020 11:27:22 GMT):
{"jsonrpc":"2.0","id":1,"error":{"code":-50100,"message":"Error communicating with enclave"}}

antoniosngular (Sun, 09 Feb 2020 18:17:47 GMT):
Hi, @adityasingh177 . Yes, by "instance" I mean that Besu & Orion are installed in the same AWS EC2 instance.

madelinemurray (Sun, 09 Feb 2020 21:57:58 GMT):
@antoniosngular - on our test networks we're using 2 core and 2GB RAM machines for Orion and haven't run into any issues.

Jemal (Sun, 09 Feb 2020 23:32:05 GMT):
Hi Guys. I am trying to run Besu using Ethash consensus protocol. I have question regarding difficulty setting in the genesis file, As you can see on the snapshot below, it mentions difficulty in two places. "Fixed Difficulty:1000" and "Difficulty: 0X10000". What I understand is that if i set fixed difficulty to 1000, then the difficulty will always be 1000. So why do i need to to set "0x10000" again?

Jemal (Sun, 09 Feb 2020 23:32:17 GMT):

Clipboard - February 10, 2020 10:32 AM

arash009 (Mon, 10 Feb 2020 02:08:50 GMT):
Hi all, we have been receiving some feedback over the past little while around ease of use of Jira vs Github for raising issues. The community response points to Github being a more familiar tool, as well as general access being already available, making it a lower barrier to entry to log issues, view progress of work, and engage with other contributors to the project. Based on this, we are considering switching the repository of Besu tickets from Jira to Github. Are there other considerations or other feedback that we should think about? This topic will also be tabled at the next few Besu contributor calls for discussion as well.

ajsutton (Mon, 10 Feb 2020 02:14:04 GMT):
The "difficulty" field specifies the difficulty of the genesis block. When using fixed difficulty I think it has to be the same, but if you were using "real" ethash the difficulty would gradually adjust with each block to keep block times roughly consistent as available hash power changes. In that case you'd want to ensure the initial difficulty is set to something reasonable for the amount of hash power you have - too high and you won't be able to mine new blocks, too low and it may take too long to adjust to a sensible value for that amount of hash power.

shemnon (Mon, 10 Feb 2020 02:22:44 GMT):
I would advise against fixed difficulty in anything other than a test environment. Simply remove that line and difficulty will float as a function of time between blocks. Constant hash will eventually find an equlibrium. But try and get that first difficulty correct, eventaully can be a long time if set too low or too high.

Jemal (Mon, 10 Feb 2020 02:25:09 GMT):
Thank you @shemnon and @ajsutton yes i am using it in test environment. So if i use both fields together, does it mean that the "Fixed difficulty" will overwrite the "difficulty" field.

ajsutton (Mon, 10 Feb 2020 02:26:11 GMT):
I suspect the genesis block will always get the "difficulty" value and all created blocks will get the "fixed difficulty" value. Since we never validate the genesis block that should work out fine even if the two values are different.

shemnon (Mon, 10 Feb 2020 02:26:13 GMT):
Fixed difficulty will trump.

Jemal (Mon, 10 Feb 2020 02:26:45 GMT):
Okay i got it thanks

shemnon (Mon, 10 Feb 2020 02:26:55 GMT):
https://github.com/hyperledger/besu/blob/master/ethereum/core/src/main/java/org/hyperledger/besu/ethereum/mainnet/MainnetProtocolSchedule.java#L49

Jemal (Mon, 10 Feb 2020 02:27:25 GMT):
It would be good to add some more explanation regarding this in the documentation.

madelinemurray (Mon, 10 Feb 2020 02:39:05 GMT):
Have raised https://github.com/hyperledger/besu-docs/issues/149 so we can update the doc to be clearer on this

Jemal (Mon, 10 Feb 2020 02:54:14 GMT):
@madelinemurray Thank you

Jemal (Mon, 10 Feb 2020 02:54:14 GMT):
Hi guys, i am trying to compare the performance of Blockchain consensus protocols for some kind of application. I was able to test PoW and PoW (Clique and IBFT). But I want to test my application on Proof of Stake also. Does besu support Proof of Stake? If not, is it possible to plug in Proof of Stake protocol into Besu?

Jemal (Mon, 10 Feb 2020 02:54:14 GMT):
Hi guys, i am trying to compare the performance of Blockchain consensus protocols for some kind of application. I was able to test PoW and PoA (Clique and IBFT). But I want to test my application on Proof of Stake also. Does besu support Proof of Stake? If not, is it possible to plug in Proof of Stake protocol into Besu?

antoniosngular (Mon, 10 Feb 2020 08:43:50 GMT):
Thanks, @madelinemurray . Are you using Docker as we are?

antoniosngular (Mon, 10 Feb 2020 08:49:53 GMT):
We are using pegasyseng/orion:1.5.0-SNAPSHOT

lucas.sanz (Mon, 10 Feb 2020 09:43:24 GMT):
Has joined the channel.

raedbensaid (Mon, 10 Feb 2020 09:51:28 GMT):
hello guys, i think i have the same problem ( orion nodes are down ) is there any tuto to implement orion nodes and besu nodes in separate instances ?

raedbensaid (Mon, 10 Feb 2020 09:52:01 GMT):
i'm following this https://github.com/PegaSysEng/besu-kubernetes/tree/master/kubectl/private-network-ibft-and-orion

Radhi (Mon, 10 Feb 2020 10:20:01 GMT):
:slight_smile:

raedbensaid (Mon, 10 Feb 2020 10:20:26 GMT):
gff

joshuafernandes (Mon, 10 Feb 2020 10:45:02 GMT):
Hello @raedbensaid what is your env like? cloud or on prem?

joshuafernandes (Mon, 10 Feb 2020 10:45:52 GMT):
Once you have your Besu nodes up you provision a second instance for Orion in the same way (jdk11)

joshuafernandes (Mon, 10 Feb 2020 10:47:49 GMT):
Steps to provision an orion node would then be:

joshuafernandes (Mon, 10 Feb 2020 10:54:04 GMT):
1. generate keys for the orion node https://docs.orion.pegasys.tech/en/stable/Getting-Started/Quickstart/ 2. save the keys to a fixed location say /etc/orion/ 3. create a config file for orion like so: https://github.com/PegaSysEng/besu-quickstart/blob/master/config/orion/networkFiles/orion1/orion.conf 4. start orion up 5. open up the ports you picked (default 8888 & 8080) in your security group / firewall 6. copy the public key to the besu node you're pairing it to and save it to the same location to make it consistent ie /etc/orion/ 7. Add these options to your besu node:

joshuafernandes (Mon, 10 Feb 2020 10:54:04 GMT):
1. generate keys for the orion node https://docs.orion.pegasys.tech/en/stable/Getting-Started/Quickstart/ 2. save the keys to a fixed location say /etc/orion/ 3. create a config file for orion like so: https://github.com/PegaSysEng/besu-quickstart/blob/master/config/orion/networkFiles/orion1/orion.conf 4. start orion up 5. open up the ports you picked (default 8888 & 8080) in your security group / firewall 6. copy the public key to the besu node you're pairing it to and save it to the same location to make it consistent ie /etc/orion/ 7. Add these options to your besu node: ``` "--privacy-enabled=true", "--privacy-url=http://:8888", "--privacy-public-key-file=/etc/orion/orion.pub" ```

joshuafernandes (Mon, 10 Feb 2020 10:54:04 GMT):
1. generate keys for the orion node https://docs.orion.pegasys.tech/en/stable/Getting-Started/Quickstart/ 2. save the keys to a fixed location say /etc/orion/ 3. create a config file for orion like so: https://github.com/PegaSysEng/besu-quickstart/blob/master/config/orion/networkFiles/orion1/orion.conf 4. start orion up 5. open up the ports you picked (default 8888 & 8080) in your security group / firewall 6. copy the public key to the besu node you're pairing it to and save it to the same location to make it consistent ie /etc/orion/ 7. Add these options to your besu node and restart it ``` "--privacy-enabled=true", "--privacy-url=http://:8888", "--privacy-public-key-file=/etc/orion/orion.pub" ```

joshuafernandes (Mon, 10 Feb 2020 10:54:04 GMT):
``` 1. generate keys for the orion node https://docs.orion.pegasys.tech/en/stable/Getting-Started/Quickstart/ 2. save the keys to a fixed location say /etc/orion/ 3. create a config file for orion like so: https://github.com/PegaSysEng/besu-quickstart/blob/master/config/orion/networkFiles/orion1/orion.conf 4. start orion up 5. open up the ports you picked (default 8888 & 8080) in your security group / firewall 6. copy the public key to the besu node you're pairing it to and save it to the same location to make it consistent ie /etc/orion/ 7. Add these options to your besu node: "--privacy-enabled=true", "--privacy-url=http://:8888", "--privacy-public-key-file=/etc/orion/orion.pub" ```

joshuafernandes (Mon, 10 Feb 2020 10:56:24 GMT):
I'd recommend following this setup https://github.com/PegaSysEng/besu-quickstart/blob/master/docker-compose_privacy_poa.yml

joshuafernandes (Mon, 10 Feb 2020 10:57:05 GMT):
It similar to the k8s variant but a little easier to follow given its all in one place, node1 -> orion1 , node2->orion2 and node3->orion3

joshuafernandes (Mon, 10 Feb 2020 10:57:10 GMT):
Let us know how you go

adityasingh177 (Mon, 10 Feb 2020 14:38:54 GMT):
Hello is the same process followed for docker containers as well ?

adityasingh177 (Mon, 10 Feb 2020 14:38:54 GMT):
Hello , @joshuafernandes is the same above process followed for docker containers as well ?

adityasingh177 (Mon, 10 Feb 2020 14:38:54 GMT):
Hello , @joshuafernandes is the same above process followed for docker containers as well for quickstart , as i tried to exec into orion container but could not find keys at /etc/orion?

adityasingh177 (Mon, 10 Feb 2020 14:38:54 GMT):
Hello , @joshuafernandes is the same above process followed for docker containers as well for quickstart , as i tried to exec into orion container but could not find keys at /etc/orion and facing issue with timout?

lucassaldanha (Mon, 10 Feb 2020 22:16:03 GMT):
Hi guys! The best way to get help with Orion is to use its Gitter channel (https://gitter.im/PegaSysEng/orion). All Orion specific questions should be asked over there! :)

seanyoung (Tue, 11 Feb 2020 22:34:33 GMT):
Has joined the channel.

seanyoung (Tue, 11 Feb 2020 22:38:04 GMT):
Hello, I'm working on the Solang Solidity compiler (see https://github.com/hyperledger-labs/solang ), and I'm trying to see if there are ways of Solang support Besu. Solang already has support for ewasm, but as far as I can tell Besu has no support for ewasm. Are there any plans for ewasm or any other form of webassembly?

seanyoung (Tue, 11 Feb 2020 22:38:04 GMT):
Hello, I'm working on the Solang Solidity compiler (see https://github.com/hyperledger-labs/solang ), and I'm trying to see if there are ways of making Solang support Besu. Solang already has support for ewasm, but as far as I can tell Besu has no support for ewasm. Are there any plans for ewasm or any other form of webassembly?

shemnon (Tue, 11 Feb 2020 22:58:00 GMT):
Besu doesn't support eWasm and eWasm is not in any roadmaps of any of the contributors that I am aware of (ConsenSys, Web3 Labs, and ETC Cooperative). Besu aligns tightly with mainnet ethereum and the EEA standards, neither of which have specified eWasm, so that may be motivating it.

shemnon (Tue, 11 Feb 2020 23:00:25 GMT):
Does solang output EVM? Or is the Burrow support coming from their experimental eWasm work?

seanyoung (Tue, 11 Feb 2020 23:09:20 GMT):
The burrow support is coming from their experimental ewasm support.

seanyoung (Tue, 11 Feb 2020 23:10:48 GMT):
There is an wip evm backend for llvm, so support for evm could be done through that.

seanyoung (Tue, 11 Feb 2020 23:12:22 GMT):
My worry with the llvm evm backend is that as soon as mainnet supports ewasm, evm support will have been a wasted effort.

shemnon (Tue, 11 Feb 2020 23:28:14 GMT):
I don't think eWasm will make the Eth 1.x chain. It's currently a top candidate for Eth 2 Phase 2, but that is out of scope for Besu, which is a 1.x clain client.

shemnon (Tue, 11 Feb 2020 23:28:14 GMT):
I don't think eWasm will make the Eth 1.x chain. It's currently a top candidate for Eth 2 Phase 2, but that is out of scope for Besu, which is a 1.x chain client.

shemnon (Tue, 11 Feb 2020 23:29:19 GMT):
eWasm has been "on the verge" for years already, their current focus in mainnet is as an alternative for precompiles not for deployed contracts. There's funding and politics involved in that focus too.

shemnon (Tue, 11 Feb 2020 23:29:58 GMT):
"Stateless EVM" is also a phase 2 candidate. There is a good chance there will be multiple phase 2 VMs.

AkihiroTanaka (Wed, 12 Feb 2020 10:23:08 GMT):
Hi All. I have question. I'm managing besu nodes whitch has 3 nodes for private. All besu node was down suddenly. How do i fix it? This is my besu version. $ besu --version besu/v1.3.6/osx-x86_64/adoptopenjdk-java-12 First the bootnode emitted the logs below. ``` EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, wait for peers. ``` After several hours, the logs was emitted and nodes were down. ``` vert.x-eventloop-thread-0 | ERROR | ContextImpl | Unhandled exception java.lang.IllegalStateException: Response is closed at io.vertx.core.http.impl.HttpServerResponseImpl.checkValid(HttpServerResponseImpl.java:617) ~[vertx-core-3.8.0.jar:3.8.0] : vertx-blocked-thread-checker | WARN | BlockedThreadChecker | Thread Thread[vert.x-worker-thread-7,5,main]=Thread[vert.x-worker-thread-7,5,main] has been blocked for 64536 ms, time limit is 60000 ms io.vertx.core.VertxException: Thread blocked at org.rocksdb.RocksDB.get(Native Method) ~[rocksdbjni-6.2.4.jar:?] ```

AkihiroTanaka (Wed, 12 Feb 2020 10:23:08 GMT):
Hi All. I have question. I'm managing besu nodes whitch has 3 nodes for private. All besu node was down suddenly. How do i fix it? This is my besu version. $ besu --version besu/v1.3.6/osx-x86_64/adoptopenjdk-java-12 First the bootnode emitted the logs below. ``` EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, wait for peers. ``` After several hours, the logs was emitted and nodes were down. ``` vert.x-eventloop-thread-0 | ERROR | ContextImpl | Unhandled exception java.lang.IllegalStateException: Response is closed at io.vertx.core.http.impl.HttpServerResponseImpl.checkValid(HttpServerResponseImpl.java:617) ~[vertx-core-3.8.0.jar:3.8.0] : vertx-blocked-thread-checker | WARN | BlockedThreadChecker | Thread Thread[vert.x-worker-thread-7,5,main]=Thread[vert.x-worker-thread-7,5,main] has been blocked for 64536 ms, time limit is 60000 ms io.vertx.core.VertxException: Thread blocked at org.rocksdb.RocksDB.get(Native Method) ~[rocksdbjni-6.2.4.jar:?] ```

seanyoung (Wed, 12 Feb 2020 11:47:58 GMT):
Thanks for your insights into this.

shemnon (Wed, 12 Feb 2020 13:40:18 GMT):
How much memory is allocated for each node?

AkihiroTanaka (Wed, 12 Feb 2020 13:45:14 GMT):
16GB. I'm using a t2.xlarge instance on EC2 per node

shemnon (Wed, 12 Feb 2020 13:45:43 GMT):
So not memory. What's the RPC load like? are you querying large amounts of logs?

AkihiroTanaka (Wed, 12 Feb 2020 13:54:43 GMT):
There were no RPC load because I just created and keep it for few weeks. It looks many log is queried but I'm using ecs on ec2 and cloudwatch logs.

AkihiroTanaka (Wed, 12 Feb 2020 13:58:35 GMT):
I deployed contracts and called it first without error. The nodes worked at the time.

shemnon (Wed, 12 Feb 2020 14:40:03 GMT):
Can we get more lines out of the stack trace? The top line only tells me its a rocksdb read.

atoulme (Wed, 12 Feb 2020 17:35:02 GMT):
hey folks, I took a pass at the issue tracker and left a few comments. I'm not sure if those comments warrant a discussion, but I'd like to make sure this turns into more than a drive-by.

AkihiroTanaka (Thu, 13 Feb 2020 00:49:08 GMT):
this is the stack trace. ``` vert.x-eventloop-thread-0 | ERROR | ContextImpl | Unhandled exception java.lang.IllegalStateException: Response is closed at io.vertx.core.http.impl.HttpServerResponseImpl.checkValid(HttpServerResponseImpl.java:617) ~[vertx-core-3.8.0.jar:3.8.0] at io.vertx.core.http.impl.HttpServerResponseImpl.putHeader(HttpServerResponseImpl.java:157) ~[vertx-core-3.8.0.jar:3.8.0] at io.vertx.core.http.impl.HttpServerResponseImpl.putHeader(HttpServerResponseImpl.java:54) ~[vertx-core-3.8.0.jar:3.8.0] at org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService.lambda$handleJsonSingleRequest$7(JsonRpcHttpService.java:387) ~[besu-api-1.3.6.jar:1.3.6] at io.vertx.core.impl.ContextImpl.lambda$null$0(ContextImpl.java:330) ~[vertx-core-3.8.0.jar:3.8.0] at io.vertx.core.impl.ContextImpl.executeTask(ContextImpl.java:369) ~[vertx-core-3.8.0.jar:3.8.0] at io.vertx.core.impl.EventLoopContext.lambda$executeAsync$0(EventLoopContext.java:38) ~[vertx-core-3.8.0.jar:3.8.0] at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163) [netty-common-4.1.34.Final.jar:4.1.34.Final] at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:404) [netty-common-4.1.34.Final.jar:4.1.34.Final] at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:495) [netty-transport-4.1.34.Final.jar:4.1.34.Final] at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:905) [netty-common-4.1.34.Final.jar:4.1.34.Final] at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) [netty-common-4.1.34.Final.jar:4.1.34.Final] at java.lang.Thread.run(Thread.java:834) [?:?] ```

AkihiroTanaka (Thu, 13 Feb 2020 00:49:23 GMT):
``` vertx-blocked-thread-checker | WARN | BlockedThreadChecker | Thread Thread[vert.x-worker-thread-7,5,main]=Thread[vert.x-worker-thread-7,5,main] has been blocked for 60536 ms, time limit is 60000 ms io.vertx.core.VertxException: Thread blocked at org.rocksdb.RocksDB.get(Native Method) ~[rocksdbjni-6.2.4.jar:?] at org.rocksdb.RocksDB.get(RocksDB.java:1721) ~[rocksdbjni-6.2.4.jar:?] at org.hyperledger.besu.plugin.services.storage.rocksdb.segmented.RocksDBColumnarKeyValueStorage.get(RocksDBColumnarKeyValueStorage.java:153) ~[besu-plugin-rocksdb-1.3.6.jar:1.3.6] at org.hyperledger.besu.plugin.services.storage.rocksdb.segmented.RocksDBColumnarKeyValueStorage.get(RocksDBColumnarKeyValueStorage.java:60) ~[besu-plugin-rocksdb-1.3.6.jar:1.3.6] at org.hyperledger.besu.services.kvstore.SegmentedKeyValueStorageAdapter.get(SegmentedKeyValueStorageAdapter.java:50) ~[besu-kvstore-1.3.6.jar:1.3.6] at org.hyperledger.besu.ethereum.storage.keyvalue.KeyValueStoragePrefixedKeyBlockchainStorage.get(KeyValueStoragePrefixedKeyBlockchainStorage.java:123) ~[besu-core-1.3.6.jar:1.3.6] at org.hyperledger.besu.ethereum.storage.keyvalue.KeyValueStoragePrefixedKeyBlockchainStorage.getBlockHeader(KeyValueStoragePrefixedKeyBlockchainStorage.java:78) ~[besu-core-1.3.6.jar:1.3.6] at org.hyperledger.besu.ethereum.chain.DefaultBlockchain$$Lambda$521/0x0000000840477c40.apply(Unknown Source) ~[?:?] at java.util.Optional.flatMap(Optional.java:294) ~[?:?] at org.hyperledger.besu.ethereum.chain.DefaultBlockchain.getBlockHeader(DefaultBlockchain.java:176) ~[besu-core-1.3.6.jar:1.3.6] at org.hyperledger.besu.ethereum.api.query.BlockchainQueries$$Lambda$969/0x0000000840575c40.apply(Unknown Source) ~[?:?] at java.util.stream.LongPipeline$1$1.accept(LongPipeline.java:177) ~[?:?] at java.util.stream.Streams$RangeLongSpliterator.tryAdvance(Streams.java:207) ~[?:?] at java.util.stream.LongPipeline.forEachWithCancel(LongPipeline.java:161) ~[?:?] at java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:502) ~[?:?] at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:488) ~[?:?] at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474) ~[?:?] at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:913) ~[?:?] at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:?] at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:578) ~[?:?] at org.hyperledger.besu.ethereum.api.query.BlockchainQueries.matchingLogs(BlockchainQueries.java:499) ~[besu-api-1.3.6.jar:1.3.6] at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthGetLogs.response(EthGetLogs.java:62) ~[besu-api-1.3.6.jar:1.3.6] at org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService.process(JsonRpcHttpService.java:497) ~[besu-api-1.3.6.jar:1.3.6] at org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService.lambda$handleJsonSingleRequest$6(JsonRpcHttpService.java:375) ~[besu-api-1.3.6.jar:1.3.6] at org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService$$Lambda$804/0x0000000840524840.handle(Unknown Source) ~[?:?] at io.vertx.core.impl.ContextImpl.lambda$executeBlocking$2(ContextImpl.java:316) ~[vertx-core-3.8.0.jar:3.8.0] at io.vertx.core.impl.ContextImpl$$Lambda$606/0x00000008404a7440.run(Unknown Source) ~[?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[?:?] at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) ~[netty-common-4.1.34.Final.jar:4.1.34.Final] at java.lang.Thread.run(Thread.java:834) ~[?:?] ```

shemnon (Thu, 13 Feb 2020 00:50:54 GMT):
Yes, this is the RPC load I suspected. We are prepping a fix to show up in what may be a 1.4 RC 2 next week. - https://github.com/hyperledger/besu/pull/367

shemnon (Thu, 13 Feb 2020 00:51:43 GMT):
Are you running eventeum or some other ethereum transaction log analysis software?

AkihiroTanaka (Thu, 13 Feb 2020 00:59:17 GMT):
Thanks!! I will update to 1.4 RC 2 after next week. I don't use eventeum. I'm running only explorer (alethio) with nodes.

jacekv (Thu, 13 Feb 2020 10:13:20 GMT):
Has joined the channel.

jacekv (Thu, 13 Feb 2020 10:13:20 GMT):
Hi guys :) I am currently setting up a Clique network. I saw that Parity does not include the standard Ethereum builtin contracts by default, like ecrecover, sha256, ripemd160 & identity, and that you have to configure those in the genesis file. How is it in Besu? I haven't found any information regarding this.

faraggi (Thu, 13 Feb 2020 10:25:35 GMT):
:thumbsup: We're taking a look at them now, thanks for your feedback!

faraggi (Thu, 13 Feb 2020 10:48:46 GMT):
These predefined parameters are needed for those testnets. The allocations you see in the Besu clique genesis file are the Rinkeby allocations. https://github.com/hyperledger/besu/blob/master/config/src/main/resources/rinkeby.json If you wanted to create brand new POA network, you could exchange those for your valiadator node's keys and respective allocations.

faraggi (Thu, 13 Feb 2020 10:49:03 GMT):
Let me know if that helps cause I'm not 100% I understood the questin

faraggi (Thu, 13 Feb 2020 10:49:03 GMT):
Let me know if that helps cause I'm not 100% I understood the question

jacekv (Thu, 13 Feb 2020 10:53:55 GMT):
But are those fields required? If I understand it correct and do not provide the ecrecover contract, I won't be able to use it in smart contracts. Is it the same in Besu?

faraggi (Thu, 13 Feb 2020 11:34:54 GMT):
Yes, if you want to deploy the network with those contract, you'll have to include them in the genesis file. Similarly, allocations are needed if you want ETH to be present because it is a POA network, therefore Eth doesn't get mined. Your network will have 0 eth forever unless you allocate it initially. Although I'd like to get someone else's take on it as well just to make sure.

jacekv (Thu, 13 Feb 2020 11:52:02 GMT):
Thank you so far :)

Silona (Thu, 13 Feb 2020 18:23:16 GMT):
Howdy Contributors and Maintainers! Are you wondering about tapping into Developer marketing for your group or project? Do you have a blog post idea? An awesome announcement? Please attend our Contributor/marketing meeting! https://wiki.hyperledger.org/display/Marketing/2020-02-19+Meeting+notes

ajsutton (Thu, 13 Feb 2020 22:22:25 GMT):
You do not have to include precompiled contracts like ecrecover in the Besu genesis file. They are provided automatically based on the milestone version used by the chain (which is configured in the genesis file). You can optionally include contracts in the genesis file by specifying their EVM code but those are not precompiles, just normal Ethereum contracts which are included in the genesis state. Precompile contracts like ecrecover are run in native code and provided by the client software itself.

Jemal (Fri, 14 Feb 2020 03:15:24 GMT):
Hi guys,

Jemal (Fri, 14 Feb 2020 03:21:29 GMT):
Hi guys, i am trying to compare the performance of Blockchain consensus protocols for some kind of application. I was able to test PoW and PoA (Clique and IBFT). But I want to test my application on Proof of Stake also. Does besu support Proof of Stake? If not, is it possible to plug in Proof of Stake protocol into Besu?

shemnon (Fri, 14 Feb 2020 03:41:23 GMT):
No proof of stake protocol yet.

Jemal (Fri, 14 Feb 2020 04:12:24 GMT):
@shemnon thanks. Do you know when will it be available?

sankarshanm (Fri, 14 Feb 2020 09:06:02 GMT):
Has joined the channel.

faraggi (Fri, 14 Feb 2020 10:24:26 GMT):
Looking for a beginner issue to start contributing for Besu? Look no more: https://jira.hyperledger.org/browse/BESU-146 Feel free to ask here or in #besu-contributors for details on the Issue.

faraggi (Fri, 14 Feb 2020 10:25:37 GMT):
You should take a look at Teku (ex Artemis) for POS and eth2.0 related info. https://gitter.im/PegaSysEng/artemis https://github.com/PegaSysEng/artemis

ppoliani (Fri, 14 Feb 2020 11:37:40 GMT):
no worries @faraggi, that makes sense

ppoliani (Fri, 14 Feb 2020 11:40:42 GMT):
I'm looking into the Grafana chart for my CLIQUE network (5 nodes) and as you can see in the attached screenshots, there are some spikes from time to time and I wonder what might be the cause. The TPS is very low at the moment so there are not really too many transaction that are processed. I'm actually quite confident that when the spikes appear there are no transaction at all. Is it some internal work that the nodes perform occasionally?

ppoliani (Fri, 14 Feb 2020 11:41:34 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=9gLzhkrbBBhwth4kW)
Screenshot 2020-02-14 at 11.41.05.png

ppoliani (Fri, 14 Feb 2020 11:42:27 GMT):
this is the cpu usage. My assumption is that this is caused by the GC, but it would be nice for someone to share his wisdom with me :)

ppoliani (Fri, 14 Feb 2020 11:42:27 GMT):
this is the cpu usage. My assumption is that this is caused by the GC, but it would be nice for someone to share his/her wisdom with me :)

adityasingh177 (Fri, 14 Feb 2020 11:45:38 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=9gLzhkrbBBhwth4kW) Hi @ppoliani , how did you measur the tps ?

adityasingh177 (Fri, 14 Feb 2020 11:45:38 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=9gLzhkrbBBhwth4kW) Hi @ppoliani , how did you measure the tps ?

ppoliani (Fri, 14 Feb 2020 11:46:39 GMT):
@adityasingh177 it's on my staging environment so we know pretty much when we send new transactions.

adityasingh177 (Fri, 14 Feb 2020 11:47:37 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=Ghbu8YfTjAyZQbMYZ) Ok, Did you see any measurement for blocks committed vs Transactions sent ?

ppoliani (Fri, 14 Feb 2020 11:50:12 GMT):
I know with accuracy how many blocks are committed by viewing the charts on Grafana

ppoliani (Fri, 14 Feb 2020 11:51:02 GMT):
ok I think my assumption might be correct; I checked the GC chart and it looks like it might be causing those spikes

ppoliani (Fri, 14 Feb 2020 11:51:15 GMT):

Screenshot 2020-02-14 at 11.43.50.png

adityasingh177 (Fri, 14 Feb 2020 11:59:43 GMT):
I had the same question , by seeing empty block creation , the chain height keeps increasing

ppoliani (Fri, 14 Feb 2020 12:02:35 GMT):
yes I think there is not option to disable empty blocks the way you can do it in Tendermint for example. So the block height will keep increasing, which is ok

adityasingh177 (Fri, 14 Feb 2020 12:03:22 GMT):
What is the purpose of creating empty blocks ?

adityasingh177 (Fri, 14 Feb 2020 12:03:52 GMT):
I saw some other blockchain , the blocks are created only when the transaction is submitted

ppoliani (Fri, 14 Feb 2020 12:05:08 GMT):
probably so that you can have a notion of time to some extent

NicolasMassart (Fri, 14 Feb 2020 12:05:10 GMT):
I confirm that creating block in a continuous way is made on purpose to enable the protocol do detect when some issues happen. Otherwise you would not be able to know if the network is stuck of if it's just because no tx was sent.

ppoliani (Fri, 14 Feb 2020 12:05:11 GMT):
I don't know really

NicolasMassart (Fri, 14 Feb 2020 12:05:32 GMT):
This is working the same way with IBFT2

ppoliani (Fri, 14 Feb 2020 12:06:02 GMT):
so it works as a liveness check for the other peers

adityasingh177 (Fri, 14 Feb 2020 12:06:19 GMT):
ok Thanks @NicolasMassart

ppoliani (Fri, 14 Feb 2020 12:07:04 GMT):
@NicolasMassart isn't there a `/liveness` endpoint that does a similar job?

NicolasMassart (Fri, 14 Feb 2020 12:09:01 GMT):
Yes but the RPC liveness endpoint is there to help you monitor the nodes at an infrastructure level (kubernetes for instance could wait for nodes to be available or things like that) but the continuous blocks creation is made to ensure the network liveness at protocol level.

adityasingh177 (Fri, 14 Feb 2020 12:09:01 GMT):
For liveness , aint gossip messages not enough @NicolasMassart @ppoliani

adityasingh177 (Fri, 14 Feb 2020 12:09:01 GMT):
For liveness , arent gossip messages not enough @NicolasMassart @ppoliani ?

adityasingh177 (Fri, 14 Feb 2020 12:09:01 GMT):
Hello , So For liveness , arent gossip messages not enough @NicolasMassart @ppoliani ?

adityasingh177 (Fri, 14 Feb 2020 12:09:04 GMT):
?

ppoliani (Fri, 14 Feb 2020 12:36:22 GMT):
@NicolasMassart yes of course, I forgot that. That makes sense

NicolasMassart (Fri, 14 Feb 2020 12:43:41 GMT):
I asked our protocol team for reference docs on this too, so as soon as I have links, I will post them here.

Jemal (Sun, 16 Feb 2020 02:32:48 GMT):
@faraggi thanks

ggarri (Sun, 16 Feb 2020 10:51:21 GMT):
Has joined the channel.

atoulme (Sun, 16 Feb 2020 18:38:19 GMT):
it's more than liveness. It's a timestamp showing that effectively during that timeframe the chain came to a consensus that no transactions were present.

adityasingh177 (Mon, 17 Feb 2020 05:41:28 GMT):
@NicolasMassart Thank You

ArvsIndrarys (Mon, 17 Feb 2020 14:47:08 GMT):
I tried to setup a faucet in the genesis file of a permissionned network using the following command : `solcjs --optimize --bin -o exampleexample contracts/FaucetProxy.sol contracts/Faucet.sol contracts/interfaces/Ownable.sol contracts/interfaces/Context.sol contracts/permissionning/Admin.sol contracts/permissionning/AdminList.sol contracts/permissionning/AdminProxy.sol` I added it in the genesis file and launched the network. The thing is, every call to that contract is wrong. For example, I have a getter `faucet()` that should return the address of the faucet, and a method `setFaucet(addr)` to set it. Even after calling the `setFaucet` method, the `faucet` call return the wrong address. I saw that the permissioned contracts uses storage addresses, something my contract do not. Is my problem due to that? Is there any good documentation about it somewhere?

ArvsIndrarys (Mon, 17 Feb 2020 14:49:10 GMT):
From the [pegasys/permissionning-smart-contracts](https://github.com/PegaSysEng/permissioning-smart-contracts) folder, we have that: ``` contract Ingress { // Contract keys bytes32 public RULES_CONTRACT = 0x72756c6573000000000000000000000000000000000000000000000000000000; // "rules" bytes32 public ADMIN_CONTRACT = 0x61646d696e697374726174696f6e000000000000000000000000000000000000; // "administration" ``` How these addresses have been chosen? Should I setup my contract to have a storage the same way?

faraggi (Mon, 17 Feb 2020 16:01:14 GMT):
HI! Can we see your smart contract code?

ArvsIndrarys (Mon, 17 Feb 2020 16:01:39 GMT):
Hi, hmm not really, it would be our production code.

ArvsIndrarys (Mon, 17 Feb 2020 16:02:42 GMT):
Not really, it would be our production code Could I indicate you on how it works?

faraggi (Mon, 17 Feb 2020 16:03:52 GMT):
I guess that could maybe work

ArvsIndrarys (Mon, 17 Feb 2020 16:07:53 GMT):
it is a proxy ; only the owner can set the faucet address. faucet_address is undefined at the start

ArvsIndrarys (Mon, 17 Feb 2020 16:09:59 GMT):
then the proxy would redirect any call to the faucet

akuanti (Mon, 17 Feb 2020 17:07:42 GMT):
Those aren't addresses, they are keys for the contract registry. For example, if you hex encode "rules", you get `0x72756c6573`, which is then being padded to 32 bytes.

akuanti (Mon, 17 Feb 2020 17:08:10 GMT):
What exactly are you trying to accomplish? Does your faucet work properly on a network without permissioning?

Silona (Mon, 17 Feb 2020 22:17:24 GMT):
Are you wondering about tapping into Developer marketing for your group or project? Do you have a blog post idea? An awesome announcement? Please attend TOMORROW! https://wiki.hyperledger.org/display/Marketing/2020-02-19+Meeting+notes

shemnon (Tue, 18 Feb 2020 00:53:57 GMT):
APAC Besu Contributor call in 7 minutes - https://wiki.hyperledger.org/display/BESU/2020-02-18+Besu+Contributor+Call

shemnon (Tue, 18 Feb 2020 00:54:38 GMT):
zoom link - APAC Besu Contributor call in 7 minutes - https://wiki.hyperledger.org/display/BESU/2020-02-18+Besu+Contributor+Call

shemnon (Tue, 18 Feb 2020 00:55:03 GMT):
zoom link - https://consensys.zoom.us/j/524697595

jinnyeon (Tue, 18 Feb 2020 01:23:11 GMT):
Code inside *Proxy.sol of the uPort* smart contract. This works fine in Geth, but in Besu, the result of the call keeps returning false Is there any part of Besu to consider for Assembly Inline code operation?``` ```

jinnyeon (Tue, 18 Feb 2020 01:23:11 GMT):
Code inside *Proxy.sol of the uPort* smart contract. This works fine in Geth, but in Besu, the result of the call keeps returning false Is there any part of Besu to consider for Assembly Inline code operation?``` ``` // copied from GnosisSafe // https://github.com/gnosis/gnosis-safe-contracts/blob/master/contracts/GnosisSafe.sol function executeCall(address to, uint256 value, bytes data) public payable returns (bool success) { assembly { success := call(gas, to, value, add(data, 0x20), mload(data), 0, 0) } } ```

jinnyeon (Tue, 18 Feb 2020 01:23:11 GMT):
Code inside *Proxy.sol of the uPort* smart contract. This works fine in Geth, but in Besu, the result of the call keeps returning false Is there any part of Besu to consider for Assembly Inline code operation? ` // copied from GnosisSafe // https://github.com/gnosis/gnosis-safe-contracts/blob/master/contracts/GnosisSafe.sol function executeCall(address to, uint256 value, bytes data) public payable returns (bool success) { assembly { success := call(gas, to, value, add(data, 0x20), mload(data), 0, 0) } }`

jinnyeon (Tue, 18 Feb 2020 01:23:11 GMT):
Code inside *Proxy.sol of the uPort* smart contract. This works fine in Geth, but in Besu, the result of the call keeps returning false Is there any part of Besu to consider for Assembly Inline code operation? ``` // copied from GnosisSafe // https://github.com/gnosis/gnosis-safe-contracts/blob/master/contracts/GnosisSafe.sol function executeCall(address to, uint256 value, bytes data) public payable returns (bool success) { assembly { success := call(gas, to, value, add(data, 0x20), mload(data), 0, 0) } } ```

jinnyeon (Tue, 18 Feb 2020 01:23:11 GMT):
Code inside *Proxy.sol of the uPort* smart contract. This works fine in Geth, but in Besu, the result of the call keeps returning false Is there any part of Besu to consider for Assembly Inline code operation? ``` // copied from GnosisSafe // https://github.com/gnosis/gnosis-safe-contracts/blob/master/contracts/GnosisSafe.sol function executeCall(address to, uint256 value, bytes data) public payable returns (bool success) { assembly { success := call(gas, to, value, add(data, 0x20), mload(data), 0, 0) } } ```

jinnyeon (Tue, 18 Feb 2020 01:23:11 GMT):
Code inside *Proxy.sol of the uPort* smart contract. This works fine in Geth, but in Besu, the result of the call keeps returning false. Is there any part of Besu to consider for Assembly Inline code operation? ``` // copied from GnosisSafe // https://github.com/gnosis/gnosis-safe-contracts/blob/master/contracts/GnosisSafe.sol function executeCall(address to, uint256 value, bytes data) public payable returns (bool success) { assembly { success := call(gas, to, value, add(data, 0x20), mload(data), 0, 0) } } ```

jinnyeon (Tue, 18 Feb 2020 01:23:11 GMT):
Hi. Below is code inside *Proxy.sol of the uPort* smart contract. This works fine in Geth, but in Besu, the result of the call keeps returning false. Is there any part of Besu to consider for Assembly Inline code operation? ``` // copied from GnosisSafe // https://github.com/gnosis/gnosis-safe-contracts/blob/master/contracts/GnosisSafe.sol function executeCall(address to, uint256 value, bytes data) public payable returns (bool success) { assembly { success := call(gas, to, value, add(data, 0x20), mload(data), 0, 0) } } ```

jinnyeon (Tue, 18 Feb 2020 01:23:15 GMT):
`// copied from GnosisSafe // https://github.com/gnosis/gnosis-safe-contracts/blob/master/contracts/GnosisSafe.sol function executeCall(address to, uint256 value, bytes data) public payable returns (bool success) { assembly { success := call(gas, to, value, add(data, 0x20), mload(data), 0, 0) } }`

EdJoJob (Tue, 18 Feb 2020 01:50:40 GMT):
Notes from the meeting are at https://wiki.hyperledger.org/display/BESU/2020-02-18+Besu+Contributor+Call+Notes, recording to be added

jinnyeon (Tue, 18 Feb 2020 04:29:55 GMT):
Hello. I'm testing *uPort's IdentityManager* smart contract on Besu. When I run this contract in Geth, it works normally but not in Besu. I want to know why there is a difference in the result of the same smart contract. The uPort smart contract link is below. `https://github.com/uport-project/uport-identity`

jinnyeon (Tue, 18 Feb 2020 04:29:55 GMT):
Hello. I'm testing *uPort's IdentityManager* smart contract on Besu. When I run this contract in Geth, it works normally but not in Besu. I want to know why there is a difference in the result of the same smart contract. The uPort smart contract link is below. https://github.com/uport-project/uport-identity

shemnon (Tue, 18 Feb 2020 04:34:01 GMT):
Can you elaborate on what the failures you are seeing?

jinnyeon (Tue, 18 Feb 2020 05:36:56 GMT):
When executing 'forwardTo' function of uPort IdentityManager.sol, transaction failed with 'false Transaction mined but execution failed' message. I think the following part doesn't work. ``` // copied from GnosisSafe // https://github.com/gnosis/gnosis-safe-contracts/blob/master/contracts/GnosisSafe.sol function executeCall (address to, uint256 value, bytes data) internal returns (bool success) { assembly { success: = call (gas, to, value, add (data, 0x20), mload (data), 0, 0) } } ``` In addition, I wrote a smart contract that simply sends ether to Besu, and send (), transfer (), and call () all fail to send ether. Can you see the cause? ``` pragma solidity 0.4.15; contract Sender { function send(address _receiver) payable { //_receiver.send(msg.value); //_receiver.transfer(msg.value); _receiver.call.gas(203124).value(msg.value)(); } } ```

jinnyeon (Tue, 18 Feb 2020 05:36:56 GMT):
When executing 'forwardTo' function of uPort IdentityManager.sol, transaction failed with 'false Transaction mined but execution failed' message. I think the following part doesn't work. ``` // copied from GnosisSafe // https://github.com/gnosis/gnosis-safe-contracts/blob/master/contracts/GnosisSafe.sol function executeCall (address to, uint256 value, bytes data) internal returns (bool success) { assembly { success: = call (gas, to, value, add (data, 0x20), mload (data), 0, 0) } } ``` In addition, I wrote a smart contract that simply sends ether to Besu, and send (), transfer (), and call () all fail to send ether. Can you see the cause? ``` pragma solidity 0.4.15; contract Sender { function send(address _receiver) payable { //_receiver.send(msg.value); //_receiver.transfer(msg.value); _receiver.call.gas(203124).value(msg.value)(); } } ```

shemnon (Tue, 18 Feb 2020 05:41:43 GMT):
So by "sends ether to Besu" I assume you mean a node running besu. Is this on mainnet or a testnet or on a custom network? Also, what are the outputs of the JSON-RPC calls posting? Are you specifying gas or replying on eth_estimateGas?

shemnon (Tue, 18 Feb 2020 05:42:15 GMT):
If this is in a named blockchain can you point me at a failing transaction?

jinnyeon (Tue, 18 Feb 2020 06:16:46 GMT):
The test environment consists of the Besu node in Kaleido and is the PoA algorithm. Correcting 'sends other to Besu' means sending Ether between accounts using smart contacts. JSON/RPC output will check again and let you know because it was tested through Remix's Injected Web3 (Metamask).

jinnyeon (Tue, 18 Feb 2020 06:16:46 GMT):
The test environment consists of the Besu node in Kaleido and is the PoA algorithm. Correcting 'sends other to Besu' means sending Ether between accounts using smart contacts. JSON/RPC output will check again and let you know because it was tested through Remix's Injected Web3 (Metamask).

shemnon (Tue, 18 Feb 2020 06:19:21 GMT):
I bet it's an estimate_gas issue - https://jira.hyperledger.org/browse/BESU-61

shemnon (Tue, 18 Feb 2020 08:18:21 GMT):
@VipinB I had my head buried deep in tracing diffs for the past month. Whatever happened with this? Do we need to try and get some other Besu people involved?

ArvsIndrarys (Tue, 18 Feb 2020 08:38:37 GMT):
My faucet and the proxy are tested and work properly. In the permissionning contracts example, two of the contracts are defined in the genesis file. I would like to deploy the faucet proxy via the genesis file to have it have some ethers. ``` "0x...55": { "comment": "my faucet proxy", "code": "....", "balance" : "0x100000000000000..." } ```

ArvsIndrarys (Tue, 18 Feb 2020 08:39:34 GMT):
I would like to set it like that to avoid having an account with most of the ethers of the network.

ArvsIndrarys (Tue, 18 Feb 2020 08:40:35 GMT):
The thing is, when using remix to test it after deployment on my network, the faucetProxy contract does not work as it should.

ArvsIndrarys (Tue, 18 Feb 2020 08:42:01 GMT):
I don't know if it is because of my contract missing a storage like the [permissioning contracts defined in the genesis file](https://github.com/PegaSysEng/permissioning-smart-contracts/blob/master/genesis.json#L38) or if the way I compiled the bytecode is wrong

ArvsIndrarys (Tue, 18 Feb 2020 08:43:01 GMT):
(`solcjs --optimize --bin -o bytecodes [list of contracts]`)

ArvsIndrarys (Tue, 18 Feb 2020 08:44:50 GMT):
or any other error I did not think about. I don't know why it did not work ; pegasys gave an example on how to define a contract at genesis, but there is no documentation about it. So I don't know what went wrong ; if there's any constraints or anything

faraggi (Tue, 18 Feb 2020 09:18:10 GMT):
@adityasingh177 Your Contributor call question was answered in yesterday's Call. This is the recording: https://consensys.zoom.us/rec/play/u5YrfrquqTM3HNXBuASDA6N5W43oKqOs2nQZ86cIn0azB3ZXNgKvbrMaMLB8UgTBpJratkhTMTa9Y5As?startTime=1581987869000 The question was answered near the 13 minute mark.

faraggi (Tue, 18 Feb 2020 09:18:10 GMT):
@adityasingh177 Your Contributor call question was answered by @ajsutton in yesterday's Call. This is the recording: https://consensys.zoom.us/rec/play/u5YrfrquqTM3HNXBuASDA6N5W43oKqOs2nQZ86cIn0azB3ZXNgKvbrMaMLB8UgTBpJratkhTMTa9Y5As?startTime=1581987869000 The question was answered near the 13 minute mark.

faraggi (Tue, 18 Feb 2020 09:33:50 GMT):
Sorry @ArvsIndrarys , Its hard for us to help out without having a look at the code itself.

gregdhill (Tue, 18 Feb 2020 10:04:11 GMT):
Has joined the channel.

PeterTheOne (Tue, 18 Feb 2020 15:53:21 GMT):
Has joined the channel.

VipinB (Tue, 18 Feb 2020 20:29:04 GMT):
test

jinnyeon (Wed, 19 Feb 2020 01:38:38 GMT):
It seems to be related to the estimate_gas issue. When I debug the transaction, it seems that there is not enough gas. Is there a solution?

shemnon (Wed, 19 Feb 2020 02:36:16 GMT):
If you get at the gas estimate multiply it by 1.1 for a 10% boost.

raedbensaid (Wed, 19 Feb 2020 09:57:29 GMT):
Hello everyone, I'm testing hyperledger besu with kubernetes using this : https://github.com/PegaSysEng/besu-kubernetes/tree/master/kubectl/private-network-ibft with the default configuration and i have 2 pods that didn't work! ( 1 replicat of besu node + validator 2 ). Besu node is created with 2 recplicaset by default can you tell me why ? and just one of them is working!

raedbensaid (Wed, 19 Feb 2020 09:58:07 GMT):

besu2.png

robertosaltini (Wed, 19 Feb 2020 10:42:35 GMT):
In the case of Clique, empty blocks help secure existing non empty blocks by burying them in the blockchain.

shemnon (Wed, 19 Feb 2020 15:27:47 GMT):
What do the console logs say?

adityasingh177 (Wed, 19 Feb 2020 17:58:58 GMT):
Thanks @faraggi and @ajsutton , sorry for misssing out

adityasingh177 (Wed, 19 Feb 2020 17:58:58 GMT):
Thanks @faraggi and @ajsutton , sorry for missing out

adityasingh177 (Wed, 19 Feb 2020 17:58:58 GMT):
Thanks @faraggi , @shemnon and @ajsutton , sorry for missing out , thank you for the explanation

adityasingh177 (Wed, 19 Feb 2020 17:58:58 GMT):
@faraggi , @shemnon and @ajsutton , sorry for missing out , thank you for the explanation

adamalexandru4 (Thu, 20 Feb 2020 13:45:28 GMT):
Has joined the channel.

adamalexandru4 (Thu, 20 Feb 2020 13:45:29 GMT):
Hello, I'm new to blockchain technology and I'm trying to develop a voting system using Hyperledger (after a lot of pros and cons between it and Ethereum). Actually, I looked over and I found Besu and Fabric projects. My request would be to use the PoA consensus algorithm which looks available in Besu, but I don't want to use actually an Ethereum network due to the gas cost and the wallet prerequisites. So, is there any option in order to use another consensus algorithm in Hyperledger Fabric than the current one (ordering) ?

Silona (Thu, 20 Feb 2020 14:53:33 GMT):
@faraggi

raedbensaid (Thu, 20 Feb 2020 15:06:12 GMT):
kubernetes can't start the container of the node

raedbensaid (Thu, 20 Feb 2020 15:07:08 GMT):
one replicaset of this node is working but the other no ! and as a consequence validator 2 is not working too !

shemnon (Thu, 20 Feb 2020 15:15:45 GMT):
You can set the gas cost to zero and that would result in gas simply being used to ensure the smart contract will halt. Thus you don't need to manage ether between wallets and IIRC any account (wethere it existed or not) can call any contract. (if not we should consider removing the barriers).

faraggi (Thu, 20 Feb 2020 15:41:46 GMT):
You can find different consensus algos that are compatible with besu here: https://besu.hyperledger.org/en/stable/HowTo/Configure/Consensus-Protocols/IBFT/ And this is the doc for creating a free gas network: https://besu.hyperledger.org/en/stable/HowTo/Configure/FreeGas/

faraggi (Thu, 20 Feb 2020 15:43:24 GMT):
Thanks for pinging Silona. Yesterday's meeting was great. Would anyone in here like to write an technical content article about/using Besu? Reach out to me!

Mozer18 (Thu, 20 Feb 2020 19:53:46 GMT):
Has joined the channel.

adamalexandru4 (Thu, 20 Feb 2020 22:06:51 GMT):
In order to be more specific about an earlier question, let me ask you the following: ``` For a voting system, why should I use Besu not other solutions like Fabric ```

jinnyeon (Fri, 21 Feb 2020 08:37:57 GMT):
Hello. I am using besu v1.3.8 and I am running a private network on my personal local pc. I want to send a transaction using web3.js. However, running the example `create_value_raw_transaction.js` in the link https://besu.hyperledger.org/en/stable/HowTo/Develop-Dapps/Use-web3js/ returns `Error: Returned error: Invalid params`. What is the cause?

e-nikolov (Fri, 21 Feb 2020 11:14:26 GMT):
Has joined the channel.

e-nikolov (Fri, 21 Feb 2020 11:14:28 GMT):
Hello, I was fast syncing with pruning using docker and besu/v1.4.0-beta4-dev-9b35c3b6/linux-x86_64/oracle_openjdk-java-11 and it was first successful for a while until it reached the following checksum mismatch error: ``` 2020-02-21 02:57:54.900+00:00 | EthScheduler-Services-30 (importBlock) | ERROR | PipelineChainDownloader | Chain download failed. Restarting after short delay. java.util.concurrent.CompletionException: org.hyperledger.besu.plugin.services.exception.StorageException: org.rocksdb.RocksDBException: block checksum mismatch: expected 2622741545, got 3240449483 in /root/mainnet/database/012017.sst offset 54051702 size 26209 at java.util.concurrent.CompletableFuture.encodeRelay(CompletableFuture.java:367) ~[?:?] at java.util.concurrent.CompletableFuture.completeRelay(CompletableFuture.java:376) ~[?:?] at java.util.concurrent.CompletableFuture$UniRelay.tryFire(CompletableFuture.java:1019) ~[?:?] at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:506) ~[?:?] at java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:2088) ~[?:?] at org.hyperledger.besu.services.pipeline.Pipeline.abort(Pipeline.java:152) ~[besu-pipeline-1.4.0-beta4-SNAPSHOT.jar:1.4.0-beta4-dev-9b35c3b6] at org.hyperledger.besu.services.pipeline.Pipeline.lambda$runWithErrorHandling$3(Pipeline.java:134) ~[besu-pipeline-1.4.0-beta4-SNAPSHOT.jar:1.4.0-beta4-dev-9b35c3b6] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) [?:?] at java.util.concurrent.FutureTask.run(FutureTask.java:264) [?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?] at java.lang.Thread.run(Thread.java:834) [?:?] ```

e-nikolov (Fri, 21 Feb 2020 11:14:28 GMT):
Hello, I was fast syncing with pruning using docker and besu/v1.4.0-beta4-dev-9b35c3b6/linux-x86_64/oracle_openjdk-java-11 and it was first successful for a while until it reached the following checksum mismatch error: ``` 2020-02-21 02:57:54.900+00:00 | EthScheduler-Services-30 (importBlock) | ERROR | PipelineChainDownloader | Chain download failed. Restarting after short delay. java.util.concurrent.CompletionException: org.hyperledger.besu.plugin.services.exception.StorageException: org.rocksdb.RocksDBException: block checksum mismatch: expected 2622741545, got 3240449483 in /root/mainnet/database/012017.sst offset 54051702 size 26209 at java.util.concurrent.CompletableFuture.encodeRelay(CompletableFuture.java:367) ~[?:?] at java.util.concurrent.CompletableFuture.completeRelay(CompletableFuture.java:376) ~[?:?] at java.util.concurrent.CompletableFuture$UniRelay.tryFire(CompletableFuture.java:1019) ~[?:?] at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:506) ~[?:?] at java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:2088) ~[?:?] at org.hyperledger.besu.services.pipeline.Pipeline.abort(Pipeline.java:152) ~[besu-pipeline-1.4.0-beta4-SNAPSHOT.jar:1.4.0-beta4-dev-9b35c3b6] at org.hyperledger.besu.services.pipeline.Pipeline.lambda$runWithErrorHandling$3(Pipeline.java:134) ~[besu-pipeline-1.4.0-beta4-SNAPSHOT.jar:1.4.0-beta4-dev-9b35c3b6] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) [?:?] at java.util.concurrent.FutureTask.run(FutureTask.java:264) [?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?] at java.lang.Thread.run(Thread.java:834) [?:?] ``` And then for a couple of hours it keeps spitting out the same error

e-nikolov (Fri, 21 Feb 2020 11:15:50 GMT):
Any ideas about what is causing this and how I can resolve it?

e-nikolov (Fri, 21 Feb 2020 11:15:50 GMT):
It looks like rocksdb missing a write, or Amazon's file store being flakey. I've had success shutting down besu and restarting the AWS node when I've seen it. Restarting the AWS node is essential because it forces Amazon's backing file system to sync.

e-nikolov (Fri, 21 Feb 2020 11:15:50 GMT):

shemnon (Fri, 21 Feb 2020 14:00:34 GMT):
It looks like an error in the file system, possibly amazon's AWS instance. I've had luck stoping besu and restarting the AWS instance.

e-nikolov (Fri, 21 Feb 2020 14:01:19 GMT):
it's using a digital ocean droplet with an attached block storage volume

faraggi (Fri, 21 Feb 2020 14:47:10 GMT):
Relative to a *voting system*, per sé; no specific reasons to build on any specific platform. However, the main differences between HLF and HLBesu are: - Besu will be able to TX with eth mainnet, and private networks - Java v/s Go - Solidty (and more) vs chaincode - privacy solutions are completely different and more...

faraggi (Fri, 21 Feb 2020 14:47:26 GMT):
Relative to a voting system, per sé; no specific reasons to build on any specific platform. However, the main differences between HLF and HLBesu are: - Besu will be able to TX with eth mainnet, and private networks - Java v/s Go - Solidty (and more) vs chaincode - privacy solutions are completely different and more...

shemnon (Fri, 21 Feb 2020 15:35:56 GMT):
again, it may be the same sync issue. Otherwise the node became corrupt because of file system issues. RocksDB is rough on file systems.

shemnon (Fri, 21 Feb 2020 15:36:12 GMT):
Did a full reboot of the droplet help?

adamalexandru4 (Fri, 21 Feb 2020 20:04:04 GMT):
Thanks a lot @faraggi for your answers!

rranjan3 (Fri, 21 Feb 2020 20:50:21 GMT):
Has joined the channel.

rranjan3 (Fri, 21 Feb 2020 20:53:09 GMT):
Can one listen for events from Besu over http? Websocket isn't working for me. Getting timeout trying to connect to a local Besu deployment(using dockers)

rranjan3 (Fri, 21 Feb 2020 20:53:09 GMT):
Can one listen for events from Besu over http(using web3.py)? Websocket isn't working for me. Getting timeout trying to connect to a local Besu deployment(using dockers)

NicolasMassart (Sat, 22 Feb 2020 12:19:24 GMT):
What command line/config did you use to run your node with ws? It should be ok to use ws.

rranjan3 (Sat, 22 Feb 2020 12:22:09 GMT):
https://github.com/ethereum/web3.py/issues/1584 .. I was able to get events over wscat. So I suspect an issue with web3.py

rranjan3 (Sat, 22 Feb 2020 12:22:09 GMT):
https://github.com/ethereum/web3.py/issues/1584 .. I was able to get events over wscat. So I suspect an issue with web3.py. Correct me if I am wrong in the usage of web3.py

shemnon (Sat, 22 Feb 2020 15:54:51 GMT):
Web3.py is the only client that by default enforces extradata lengths from the yellow paper. All enterprise chains violate this length: https://web3py.readthedocs.io/en/stable/middleware.html#why-is-geth-poa-middleware-necessary

rranjan3 (Sat, 22 Feb 2020 16:06:59 GMT):
Thanks @shemnon & @NicolasMassart. That's insightful. But I wonder if this middleware would have a role in isConnected() call as well. i am able to connect to Besu for event using wscat & JRPC

rranjan3 (Sat, 22 Feb 2020 16:06:59 GMT):
Thanks @shemnon & @NicolasMassart . That's insightful. But I wonder if this middleware would have a role in isConnected() call as well. i am able to connect to Besu for event using wscat & JRPC

rranjan3 (Mon, 24 Feb 2020 06:50:03 GMT):
What is the encoding "data" field in Log Object for an Event log received using JRPC? https://besu.hyperledger.org/en/stable/Reference/API-Objects/#log-object

ajsutton (Mon, 24 Feb 2020 07:37:11 GMT):
It's whatever bytes the contract output with the log event. It can be anything, but if you used solidity to output the log, it will use solidity's data format and most web3 libraries should be able to parse it into a more usable form for you if you provide the contract ABI.

rranjan3 (Mon, 24 Feb 2020 09:17:56 GMT):
Thanks!.processLog/processReceipt is what you meant I guess -https://web3py.readthedocs.io/en/stable/contracts.html#web3.contract.ContractEvents

ajsutton (Mon, 24 Feb 2020 09:18:59 GMT):
Probably yes. I must admit I spend so much of my time dealing with the lowest levels I don’t actually know the web3 libraries all that well :)

harish0449 (Mon, 24 Feb 2020 10:20:20 GMT):
Has joined the channel.

harish0449 (Mon, 24 Feb 2020 10:20:21 GMT):
Hi, can anyone pls help me to install hyperledger besu in the server . https://besu.hyperledger.org/en/stable/Tutorials/Private-Network/Create-Private-Clique-Network/

harish0449 (Mon, 24 Feb 2020 10:29:09 GMT):
besu :command is not found

faraggi (Mon, 24 Feb 2020 11:13:02 GMT):
@harish0449 That means that your Besu binary isn't installed correctly or (most likely) isn't added to your path.

faraggi (Mon, 24 Feb 2020 11:13:23 GMT):
What OS are you on? How did you originally install Besu?

harish0449 (Mon, 24 Feb 2020 12:03:04 GMT):
I am trying to install in Ubuntu

faraggi (Mon, 24 Feb 2020 13:16:00 GMT):
I'll help you in PMs. I'll send you a message.

eum602 (Mon, 24 Feb 2020 15:28:34 GMT):
Hello everyone, I am also not able to listen events using golang, please can you tell me if it is possible or maybe I am doing something worng? thanks

eum602 (Mon, 24 Feb 2020 15:53:25 GMT):
Hello everyone, I would like to share some thoughts about interactions with the besu node. In a scenario where If for some reason the besu node does not totally synchronize (but almost at the head of the chain), I am able to: * Read database * execute transactions. But I am not able to listen events. As I see this is the normal behavior under that context, but wouldn't be better to guarantee that even when the synchronization fails the node is still able to listen events?

eum602 (Mon, 24 Feb 2020 15:53:25 GMT):
Hello everyone, I would like to share some thoughts about interactions with the besu node. In a scenario where If for some reason the besu node does not totally synchronize (but everytime almost at the head of the chain), I am able to: * Read database * execute transactions. But I am not able to listen events. As I see this is the normal behavior under that context, but wouldn't be better to guarantee that even when the synchronization fails the node is still able to listen events?

shemnon (Mon, 24 Feb 2020 17:22:23 GMT):
Next week's contributor call is scheduled an hour before the Hyperledger Global Forum keynote in Phoenix. Also the tail end of the first day of EthCC. Does this impact anyone's ability to attend? I'm leaning towards holding the call as normal if there are no objections.

lucassaldanha (Mon, 24 Feb 2020 20:10:39 GMT):
What events are you talking about? If you are talking about event emitted by Solidity (that become logs in the tx receipt), your node will generate them as it processes the incoming blocks. If it is out-of-sync, you won't get the events for transactions that have been included in blocks that your node hasn't received yet.

timbeiko (Mon, 24 Feb 2020 22:10:51 GMT):
The Besu roadmap doc has been updated on the wiki to reflect our upcoming 1.4 release: https://wiki.hyperledger.org/display/BESU/Roadmap

shemnon (Mon, 24 Feb 2020 22:12:56 GMT):
We had reviewed this in last weeks APAC/AMER contributor call and can go over it again in next weeks EMEA/AMER call - https://wiki.hyperledger.org/display/BESU/2020-02-18+Besu+Contributor+Call+Notes

faraggi (Tue, 25 Feb 2020 08:17:00 GMT):
I just checked and my EthCC talk is scheduled _right_ at the start of the Call. I'll try to make it after the talk, and give some updates on ethCC in real-time, but I can't promise I'll make it.

faraggi (Tue, 25 Feb 2020 09:07:15 GMT):
For anyone wondering and having the same issues, Harish was having troubles installing the Besu Binary to on their linux machine and adding it to their PATH variable. These instructions helped him: https://kauri.io/installing-besu-binary-on-linux/e00df6efcb644e07ab44df169d9375e9/a or https://kauri.io/using-besu-the-java-ethereum-client-with-linuxmaco/276dd27f1458443295eea58403fd6965/a

qwertlimframe (Tue, 25 Feb 2020 10:30:39 GMT):
Has joined the channel.

qwertlimframe (Tue, 25 Feb 2020 10:34:24 GMT):
Has left the channel.

terrencecooke (Tue, 25 Feb 2020 22:05:37 GMT):
Has joined the channel.

joshuafernandes (Wed, 26 Feb 2020 02:35:52 GMT):
FWIW https://galaxy.ansible.com/pegasyseng/hyperledger_besu does the lot - conf, logs, versions and a systemd service

eum602 (Wed, 26 Feb 2020 14:39:30 GMT):
Hello everyone, please I would like your help to try to know what could be happening here: I have a node which is behind a subnetwork (virtualized and nated), I have the following error:

eum602 (Wed, 26 Feb 2020 14:39:39 GMT):

Clipboard - February 26, 2020 9:39 AM

eum602 (Wed, 26 Feb 2020 14:40:47 GMT):
can you help me what the debug message is mentioning?; thank a lot.

eum602 (Wed, 26 Feb 2020 14:41:22 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=TPWn6FSWkJAfBHeqp)
Clipboard - February 26, 2020 9:41 AM

eum602 (Wed, 26 Feb 2020 14:42:00 GMT):
can you help me what the debug message is mentioning?; thank a lot.

eum602 (Wed, 26 Feb 2020 14:42:55 GMT):
can you help me what the debug message is mentioning?; thank a lot.

NicolasMassart (Wed, 26 Feb 2020 15:06:00 GMT):
Hi @ppoliani can you tell me if you still have these peaks and what your memory configuration values are for the Besu node?

shemnon (Wed, 26 Feb 2020 15:58:04 GMT):
There are two errors. First, the headers to download being sent by the peer don't connecct durring fast sync. We have error logic convering that. But the error logic does not hande the case where the chekpoint range includes the chain head, so we get an unexpected error. Corner case of a corner case.

shemnon (Wed, 26 Feb 2020 15:58:18 GMT):
Can you post a jira bug with the text version of that stack trace?

shemnon (Wed, 26 Feb 2020 15:58:35 GMT):
Also, can you try it again after 200 blocks have been mined? This may be self correcting.

shemnon (Wed, 26 Feb 2020 15:59:18 GMT):
Based on the code base I do not expect 1.4.0 that is being reelased today to make a difference.

eum602 (Wed, 26 Feb 2020 16:36:06 GMT):
@shemnon let me give some context. * The node is under IBFT2.0. * Network: Under nat environemt and node is hosted into a subnetwork where the node is hosted in a machine that uses virtualization(eg. virtualbox or similar) * Lets assume my node is "A". Then as I understand when some other peers send message block headers to the node "A" then for some reason there is no fast synchronization with those peers (maybe connection is broken for some reason?): * Besu handle errors related to fast sync during block headers transmission that aren't the chain head. * But the errors are shown because the handler does not cover the case when the chain head arrives and fast sync fails. In Practice, I have observed that the node "A" is capable of: * serve queries made by users through RPC api methods (eg. read and change the state) * Users are NOT able to listen events because the node is not always 100% synchronized. The problem persists because the node is continoulsy trying to reach the chain head.

eum602 (Wed, 26 Feb 2020 16:41:34 GMT):
Also something that gets my attention is this message that appears on debug: Seems that it is disconnecting and the reason is "TOO MANY PEERS":

eum602 (Wed, 26 Feb 2020 16:42:07 GMT):

TOO_MANY_PEERS

eum602 (Wed, 26 Feb 2020 16:43:14 GMT):
please @shemnon can you give some ideas what is happening. Thanks!!

shemnon (Wed, 26 Feb 2020 17:09:54 GMT):
You may want to up the `--max-peers` (default is 25) or set each peer to reserve a peer for an "adjacent" peer or set of peers using the `static-nodes.json` facility. You can actually use `static-peers.json` to set up a fixed topoligy too. Each peer would need to have the other peer in the static peers list to ensure connection.

eum602 (Wed, 26 Feb 2020 17:18:32 GMT):
thanks a lot @shemnon , I have a clue, according to the attached image the node disconnects for almost all the peers; please can you tell me why it is happening?

shemnon (Wed, 26 Feb 2020 17:19:43 GMT):
All the other peers are connected to each other with no available connections. They've formed a tight clique. That's why upping max peers would help and why setting static nodes would ensure at least some connection if that tight clique forms.

shemnon (Wed, 26 Feb 2020 17:21:47 GMT):
Not every node can be connected with each other if the max nodes is less than the total nodes, and when those numbers are close a clique is more likely to form. Especially if the clique has not had node members go off line.

shemnon (Wed, 26 Feb 2020 17:22:35 GMT):
try bringing down some of the non-validator nodes and see if this node can re-connect after 5 min.

shemnon (Wed, 26 Feb 2020 17:23:01 GMT):
If I may ask, how many total besu nodes are in your network?

eum602 (Wed, 26 Feb 2020 17:23:17 GMT):
I have near 30 nodes

shemnon (Wed, 26 Feb 2020 17:24:09 GMT):
yep, that is consistant with my expectations. The other 29 have a tight pool of nodes and there is no place for this node to connect. Upping `--max-peers` to 30 on all nodes should help.

eum602 (Wed, 26 Feb 2020 17:25:02 GMT):
so maybe I may increase that number as minimum on all bootnodes?

shemnon (Wed, 26 Feb 2020 17:25:08 GMT):
yes.

eum602 (Wed, 26 Feb 2020 17:25:33 GMT):
excellent @shemnon let me try it. I'll come back soon

eum602 (Wed, 26 Feb 2020 19:03:13 GMT):
@shemnon fortunately now I do not see TOO_MANY_PEERS anymore, neverthless I see a message mentioning that: "Rejecting connection because local node is not ready" , can you let me know what issues can be happening in my local node? thanks

timbeiko (Wed, 26 Feb 2020 19:14:57 GMT):
Our team is currently working on removing the fallback from fast sync to full sync (https://github.com/hyperledger/besu/pull/427). Because this is a change in how defaults work, we were hoping to have it for the 1.4 release, but would still need ~1 day of work to get it done and test it properly. At the same time, it’s not a “feature” that people used per say as much as a good idea that turned out to be inconvenient when used in the wild. No one "relies" on this. That would be an argument to not push back the release and just have the change in 1.4.1. Thoughts? Not too sure what the right call is here.

davemec (Wed, 26 Feb 2020 19:30:15 GMT):
Has joined the channel.

madelinemurray (Wed, 26 Feb 2020 19:31:05 GMT):
If a fast-sync is failing due to peer starvation, it'll drop back to full-sync automatically so the only way to try fast-sync again will be to realise this has happened, stop the sync, delete the database, and start again. Is that right?

madelinemurray (Wed, 26 Feb 2020 19:31:57 GMT):
So if someone starts syncing using a named network and the default fast sync fails, it could be hours before they realise?

madelinemurray (Wed, 26 Feb 2020 19:33:03 GMT):
And then the original bug that promted this change is more likely to occur and that will stop the full sync as well. So they'd have to delete the database and restart the full sync?

mbaxter (Wed, 26 Feb 2020 19:37:14 GMT):
FWIW - I'd characterize this change as a bug fix - we're trying to properly handle previously unhandled errors

mbaxter (Wed, 26 Feb 2020 19:38:57 GMT):
> And then the original bug that promted this change What's the original bug?

madelinemurray (Wed, 26 Feb 2020 19:40:49 GMT):
Pruning failing and causing a MerkleTrieExcpetion. Hang on - I'll find the actual bug.

madelinemurray (Wed, 26 Feb 2020 19:41:40 GMT):
https://jira.hyperledger.org/browse/BESU-160

timbeiko (Wed, 26 Feb 2020 19:42:46 GMT):
That bug was discovered by the switch from full to fast sync, but isn't really "caused" by it. It's an issue with pruning only.

timbeiko (Wed, 26 Feb 2020 19:43:02 GMT):
So users are more likely to encounter it with the current fallback.

madelinemurray (Wed, 26 Feb 2020 19:43:28 GMT):
The bug can occur with full sync but its much less likely to - is that right Tim?

timbeiko (Wed, 26 Feb 2020 19:46:05 GMT):
The bug is most likely when full sync is running with pruning

timbeiko (Wed, 26 Feb 2020 19:46:45 GMT):
Full Sync + Pruning is an odd configuration, *but* Fast Sync + Pruning is recommended. Therefore, due to the fallback, users are likelier to end up with that configuration.

madelinemurray (Wed, 26 Feb 2020 19:52:46 GMT):
So this really affects users syncing to named networks (mainnet, Ropsten, etc). If we don't change the default behaviour, a portion of them are likely to: 1) Fall back to full sync if peer starvartion causes fast sync to fail 2)Hit the pruning bug because now they're using full sync and pruning. Do we have any feeling about how likely each of 1 and 2 are? ie, very likely, might happen, unlikely And in both cases, the solution is to delete the database and start again?

timbeiko (Wed, 26 Feb 2020 19:53:45 GMT):
> Do we have any feeling about how likely each of 1 and 2 are? ie, very likely, might happen, unlikely (1) Likely. My personal experience is ~50% of the time on a laptop. (2) Not sure. > And in both cases, the solution is to delete the database and start again? Yes

arash009 (Wed, 26 Feb 2020 19:55:55 GMT):
Sounds like its not whether or not this is a bug that needs to be fixed, its if release should be delays because of it. To me as long as we have communicated the bug, we can go ahead with release and advise what to do now, and when it will be fixed.

timbeiko (Wed, 26 Feb 2020 19:57:14 GMT):
The nuance is that the fallback wasn't really a "bug" at first but a feature. Just turned out to be a bad one :-)

arash009 (Wed, 26 Feb 2020 19:58:29 GMT):
And we cant make it fall back to fast sync AND switch off pruning?

timbeiko (Wed, 26 Feb 2020 19:59:19 GMT):
We don't want to fall back to full sync period.

timbeiko (Wed, 26 Feb 2020 19:59:35 GMT):
There isn't really a good use case for that. It's better to spend days searching for peers than switch back to full sync

timbeiko (Wed, 26 Feb 2020 19:59:35 GMT):
There isn't really a good use case for that. It's better to spend days searching for peers than switch back to full sync because of how long the sync takes.

arash009 (Wed, 26 Feb 2020 20:01:15 GMT):
Got it. My thoughts are go ahead with release (as there are a bunch of other features that users are waiting for) and we communicate this one have it fixed in the next point release.

timbeiko (Wed, 26 Feb 2020 20:06:03 GMT):
That makes sense to me :+1:

madelinemurray (Wed, 26 Feb 2020 20:07:09 GMT):
Pruning is disabled by default isn't it?

madelinemurray (Wed, 26 Feb 2020 20:07:46 GMT):
I'll update the changelog to make this clear.

timbeiko (Wed, 26 Feb 2020 20:07:54 GMT):
> Pruning is disabled by default isn't it? Yes

timbeiko (Wed, 26 Feb 2020 20:08:18 GMT):
We will only enable it by default with fast sync once both the fallback is gone and the bug linked above is fixed :+1:

madelinemurray (Wed, 26 Feb 2020 20:08:19 GMT):
But not in named networks?

timbeiko (Wed, 26 Feb 2020 20:09:16 GMT):
Not the default there either. We held off merging it because of the two issues above.

madelinemurray (Wed, 26 Feb 2020 20:09:16 GMT):
Ignore that - it's enabled for named networks because they start on fast sync

timbeiko (Wed, 26 Feb 2020 20:09:24 GMT):
Wait what?

madelinemurray (Wed, 26 Feb 2020 20:09:39 GMT):
> Full Sync + Pruning is an odd configuration, but Fast Sync + Pruning is recommended. Therefore, due to the fallback, users are likelier to end up with that configuration.

madelinemurray (Wed, 26 Feb 2020 20:10:21 GMT):
So if you start with `besu`, don't you end up with fast-sync and pruning enabled by default?

timbeiko (Wed, 26 Feb 2020 20:10:41 GMT):
No: there is an open PR pending for that to be ture. We held off merging it due to these issues https://github.com/hyperledger/besu/pull/384

timbeiko (Wed, 26 Feb 2020 20:11:15 GMT):
But fast sync + pruning is what we tell (told) people to use prior to finding these bugs

madelinemurray (Wed, 26 Feb 2020 20:11:15 GMT):
OK - that's actually better. So you'll only hit the 2) if you've deliberately enabled pruning

timbeiko (Wed, 26 Feb 2020 20:11:24 GMT):
Yes

timbeiko (Wed, 26 Feb 2020 20:11:50 GMT):
... unless fast-sync enables pruning by default.

madelinemurray (Wed, 26 Feb 2020 20:11:52 GMT):
Should I put a known bug tag into the command line reference doc as well as the changelog in that case?

timbeiko (Wed, 26 Feb 2020 20:12:37 GMT):
Ok, as I understand it, fast-sync *does* enable pruning. Sorry, my bad.

madelinemurray (Wed, 26 Feb 2020 20:13:29 GMT):
OK - so we should be recommended that users explicitly disable pruning when syncing to a named network then?

timbeiko (Wed, 26 Feb 2020 20:13:48 GMT):
I'm double checking with @rai

timbeiko (Wed, 26 Feb 2020 20:14:23 GMT):
Ok, confirmed that: 1. Fast Sync is *not* the default on named networks 2. Fast Sync *does* enable pruning

timbeiko (Wed, 26 Feb 2020 20:14:51 GMT):
So, yes, we should recommend *not* using pruning for now, and hence if people use fast sync, they should disable pruning.

madelinemurray (Wed, 26 Feb 2020 20:15:01 GMT):
OK - so if you explicitly enable fast sync, then you should explicity disable pruning

timbeiko (Wed, 26 Feb 2020 20:15:06 GMT):
yep

madelinemurray (Wed, 26 Feb 2020 20:15:31 GMT):
And just generally be aware that defaulting to full sync is probably not the behaviour you want.

timbeiko (Wed, 26 Feb 2020 20:15:51 GMT):
Yep, and that should be fixed by 1.4.1

madelinemurray (Wed, 26 Feb 2020 20:16:13 GMT):
Is the pruning bug likely to be fixed by 1.4.1 as well?

timbeiko (Wed, 26 Feb 2020 20:16:55 GMT):
@rai :-D ?

rai (Wed, 26 Feb 2020 20:17:14 GMT):
1.4.1 is in 2 weeks right?

timbeiko (Wed, 26 Feb 2020 20:17:17 GMT):
yep

madelinemurray (Wed, 26 Feb 2020 20:17:17 GMT):
Yep

timbeiko (Wed, 26 Feb 2020 20:17:25 GMT):
worst case we can un-default pruning with fast sync

rai (Wed, 26 Feb 2020 20:17:30 GMT):
I am really really hoping so

rai (Wed, 26 Feb 2020 20:17:30 GMT):
I am really really hoping so

rai (Wed, 26 Feb 2020 20:17:30 GMT):
I really really hoping so

madelinemurray (Wed, 26 Feb 2020 20:18:08 GMT):
OK - so defaults will definitely be sorted and pruning bug hopefully

timbeiko (Wed, 26 Feb 2020 20:18:53 GMT):
yes :-)

madelinemurray (Wed, 26 Feb 2020 20:58:05 GMT):
@timbeiko @rai - could you review the updated known issues section in here: https://github.com/hyperledger/besu/pull/426

timbeiko (Wed, 26 Feb 2020 22:21:08 GMT):
Approved

Benjamin (Thu, 27 Feb 2020 00:36:50 GMT):
Has joined the channel.

Bobur (Thu, 27 Feb 2020 00:47:22 GMT):
Has joined the channel.

Bobur (Thu, 27 Feb 2020 00:47:25 GMT):
Hello guys! I have a question regarding Besu private transaction performance test. I have been wondering if there is any official tool to test Besu private transaction TPS and latency. I have found Caliper for Ethereum but not for Besu private transaction. Thank you a lot for your help in advance :grinning:

madelinemurray (Thu, 27 Feb 2020 02:08:08 GMT):
Not yet but we have this work on our roadmap. Have you got specific requirements around private transaction TPS?

Bobur (Thu, 27 Feb 2020 02:17:10 GMT):
@madelinemurray thank u for the prompt reply. Currently we do not have specific requirements as it may differ based on business model. I have been wondering if you can share internal TPS result if you have done any?

Benjamin (Thu, 27 Feb 2020 10:59:25 GMT):
Hi. I understood that BESU Private Network can be used as a channel of fabric by grouping nodes. How do I add a node to a group? There seems to be no function to add nodes to the group. has additional questions in the question content of Kobilov Boburjon. Are there performance test results internal when trading based on groups of nodes based on IBFT 2.0 consensus?

lucassaldanha (Thu, 27 Feb 2020 21:20:12 GMT):
Hi Benjamin, the functionality to add nodes to a privacy group is currently under development. Atm, your only option is to create a new privacy group with the new member.

jklepatch (Fri, 28 Feb 2020 06:04:29 GMT):
Has joined the channel.

jklepatch (Fri, 28 Feb 2020 06:04:30 GMT):
Hi, Julien from EatTheBlocks youtube channel here (Blockchain dev tutorial). I am preparing a series of videos tutorials on Besu

jklepatch (Fri, 28 Feb 2020 06:05:24 GMT):
I went through the quickstart tutorial to setup a private network (with docker), and also another tutorial to setup a private network but using the `besu` cli directly

jklepatch (Fri, 28 Feb 2020 06:05:36 GMT):
In the first tutorial, there is a mention of mining nodes, but not in the second

jklepatch (Fri, 28 Feb 2020 06:06:17 GMT):
do we always need mining nodes, or there are some consensus protocols that dont require it?

shemnon (Fri, 28 Feb 2020 06:22:11 GMT):
There should always be at least one block producing nodes. This is determined in a PoA by the extra data in each block, with the genesis block having the initial set of miners. If a node sees that it's key matches the set of allowed producers it should mine automatically.

jklepatch (Fri, 28 Feb 2020 06:38:00 GMT):
ok

jklepatch (Fri, 28 Feb 2020 06:38:07 GMT):
who determine this extra data for each block?

jklepatch (Fri, 28 Feb 2020 06:40:09 GMT):
let's take this from the beginning of the process

jklepatch (Fri, 28 Feb 2020 06:40:28 GMT):
so I start my network, with the configuration for the genesis block, which include the set of miners

jklepatch (Fri, 28 Feb 2020 06:41:01 GMT):
next, I sent a transaction to the network...

jklepatch (Fri, 28 Feb 2020 06:41:10 GMT):
one of the node is going to pick up the tx

jklepatch (Fri, 28 Feb 2020 06:41:16 GMT):
and mine if it has the correct signature

jklepatch (Fri, 28 Feb 2020 06:41:28 GMT):
how about for the next transaction in the next block

ajsutton (Fri, 28 Feb 2020 06:42:31 GMT):
So in a PoA network we typically call the nodes creating blocks "Validators" rather than miners. As you note, the genesis block defines the initial set of validators. Which validator proposes the next block depends on the particular form of PoA you're using but roughly they take it in turns.

jklepatch (Fri, 28 Feb 2020 06:43:50 GMT):
oh

ajsutton (Fri, 28 Feb 2020 06:43:55 GMT):
Blocks are created in most PoA systems whether there are transactions or not. Typically there's a block period setting which defines how often they are produced.

jklepatch (Fri, 28 Feb 2020 06:44:05 GMT):
so... when a validator create a block, he also pick the next valdiator?

ajsutton (Fri, 28 Feb 2020 06:44:40 GMT):
No, the PoA algorithm sets rules about who proposes the next block. The rules vary in subtle ways.

ajsutton (Fri, 28 Feb 2020 06:45:15 GMT):
The set of validators is normally unchanged from block to block, but there's typically a system where validators can vote to add or remove validators.

ajsutton (Fri, 28 Feb 2020 06:45:50 GMT):
When enough validators have produced a block voting for the change the new validator is added in (or removed if that's what the vote is for)

jklepatch (Fri, 28 Feb 2020 06:46:10 GMT):
I see

jklepatch (Fri, 28 Feb 2020 06:46:43 GMT):
so from the point of the view of a user, the logic is a bit different depending on whether you setup a POA private network of POW private network

jklepatch (Fri, 28 Feb 2020 06:46:59 GMT):
with POW, you specify the miners (validators) in the genesis file

jklepatch (Fri, 28 Feb 2020 06:47:06 GMT):
*with POA

jklepatch (Fri, 28 Feb 2020 06:47:22 GMT):
but then you start each node normally, without the "mining" flag

jklepatch (Fri, 28 Feb 2020 06:47:43 GMT):
and with POW, you dont specify the miners in the config file

jklepatch (Fri, 28 Feb 2020 06:47:54 GMT):
but instead you need to start each node with the "mining" flag

jklepatch (Fri, 28 Feb 2020 06:48:07 GMT):
(I am ignoring permissioning here)

ajsutton (Fri, 28 Feb 2020 06:48:18 GMT):
Yes.

jklepatch (Fri, 28 Feb 2020 06:49:33 GMT):
thank you, it clarifies everything :)

jorikito (Fri, 28 Feb 2020 12:07:15 GMT):
@faraggi thank you for the awesome stickers! :)

jorikito (Fri, 28 Feb 2020 12:07:51 GMT):

20200228_130503.jpg

jklepatch (Fri, 28 Feb 2020 13:37:48 GMT):
For my next tutorial on Besu, I have managed to run a local development besu and deploy a smart contract to it

jklepatch (Fri, 28 Feb 2020 13:38:08 GMT):
however, I am a bit surprised of the output of Besu

jklepatch (Fri, 28 Feb 2020 13:38:32 GMT):
``` Produced and imported block #754 / 0 tx / 0 om / 0 (0.0%) gas / (0x6b9d26ef03aef4b9ef246dff4615845b1cfe2264b705a593bec095f6e6b93faa) in 0.215s 2020-02-28 22:27:01.115+09:00 | pool-9-thread-1 | INFO | BlockMiner | Produced and imported block #755 / 0 tx / 0 om / 0 (0.0%) gas / (0x2ed9b3721ac01e687d76338b50b605fdc67c20fa0e065ca3b50c1c33a12231fd) in 0.110s ```

jklepatch (Fri, 28 Feb 2020 13:41:09 GMT):
1. It keeps producing new blocks, even when I don't send transactions => is it actually running a local development Blockchain or maybe there is a mistake in my command and it tries to sync some network? 2. when I stop and restart it, and resumes the Blockchain where it last stopped, even though I configured a data-path in tmp. I thought this would be destroyed by the OS (MacOS) automatically... I certainly lack of Linux skills here... any tip to avoid having to destroy this data folder between 2 runs of besu?

jklepatch (Fri, 28 Feb 2020 13:41:09 GMT):
1. It keeps producing new blocks, even when I don't send transactions => is it actually running a local development Blockchain or maybe there is a mistake in my command and it tries to sync some network? 2. when I stop and restart Besu, it resumes the Blockchain where it last stopped, even though I configured a `data-path` in `tmp`. I thought this would be destroyed by the OS (MacOS) automatically... I certainly lack of Linux skills here... any tip to avoid having to destroy this data folder between 2 runs of besu?

jklepatch (Fri, 28 Feb 2020 13:41:09 GMT):
1. It keeps producing new blocks, even when I don't send transactions => is it actually running a local development Blockchain or maybe there is a mistake in my command and it tries to sync some network? 2. when I stop and restart Besu, it resumes the Blockchain where it last stopped, even though I configured a `data-path` in `tmp`. I thought this would be destroyed by the OS (MacOS) automatically... I certainly lack of Linux knowledge here... any tip to avoid having to destroy this data folder between 2 runs of besu?

jklepatch (Fri, 28 Feb 2020 13:41:26 GMT):
Here is my repo

jklepatch (Fri, 28 Feb 2020 13:41:27 GMT):
https://gitlab.com/jklepatch/eattheblocks-pro/-/tree/master/screencast%2F148-besu-deploy-truffle

jklepatch (Fri, 28 Feb 2020 13:42:04 GMT):
this is a simple Truffle project with a Storage smart contract, and configuration to run on Besu

jklepatch (Fri, 28 Feb 2020 13:42:14 GMT):
the besu command is in `package.json`

jklepatch (Fri, 28 Feb 2020 13:43:15 GMT):
The besu command is directly copy pasted from this tutorial: https://besu.hyperledger.org/en/stable/HowTo/Get-Started/Starting-node/

shemnon (Fri, 28 Feb 2020 15:25:13 GMT):
1. Yes, the dev servers for demo are configured to mine by default 2. IIRC /tmp takes days or a reboot to clear on Mac. I have a directory ~/besu/dev that I keep a persistent chain on when I develop.

eum602 (Fri, 28 Feb 2020 16:11:44 GMT):
@shemnon thanks for your support, the checkpoint.range error was appearing because the npt server was not correctly configured causing rejection of arriving block headers.

faraggi (Fri, 28 Feb 2020 20:18:29 GMT):
Hello all! Github issues are now officially enabled for Besu. https://github.com/hyperledger/besu/issues 291968

faraggi (Fri, 28 Feb 2020 20:18:29 GMT):
Hello all! Github issues are now officially enabled for Besu. https://github.com/hyperledger/besu/issues

ajsutton (Fri, 28 Feb 2020 22:46:25 GMT):
@jklepatch Besu continues mining blocks even if there are no transactions. That's because a block reward is paid for every block mined regardless of whether it contains transactions. In dev mode it would be reasonable to provide an option to only create blocks when there are transactions to save CPU but besu doesn't currently have such an option.

jklepatch (Sun, 01 Mar 2020 05:51:00 GMT):
thanks @shemnon and @ajsutton

RealDeanZhao (Mon, 02 Mar 2020 02:51:56 GMT):
@ajsutton What abount a PoA gas free network?

ajsutton (Mon, 02 Mar 2020 03:17:42 GMT):
This answer was specifically about the PoW miner. Clique doesn't pay any block reward and IBFT2 is usually configured with no block reward (though I believe it's a config option). For both Clique and IBFT, the consensus protocol requires creating blocks at fixed intervals to keep things working so there is no option to skip creating empty blocks.

RealDeanZhao (Mon, 02 Mar 2020 03:19:17 GMT):
thanks,:thumbsup:

jklepatch (Mon, 02 Mar 2020 11:55:29 GMT):
I would like to understand the advantages of permissioning (tutorial with clique) vs a simple private network (tutorial with IBFT 2.0)

jklepatch (Mon, 02 Mar 2020 11:55:42 GMT):
https://besu.hyperledger.org/en/stable/Concepts/Permissioning/Permissioning-Overview/

jklepatch (Mon, 02 Mar 2020 11:55:42 GMT):
https://besu.hyperledger.org/en/stable/Tutorials/Permissioning/Create-Permissioned-Network/

jklepatch (Mon, 02 Mar 2020 11:56:24 GMT):
https://besu.hyperledger.org/en/stable/Tutorials/Private-Network/Create-IBFT-Network/

jklepatch (Mon, 02 Mar 2020 11:58:04 GMT):
it seems like both allow to control which nodes are allowed to participate (on-chain or local config file for permissioning vs on-chain configuration for IBFT tutorial)

jklepatch (Mon, 02 Mar 2020 11:58:31 GMT):
but only permissioning allow to also control which account is allowed

jklepatch (Mon, 02 Mar 2020 12:15:35 GMT):
----

jklepatch (Mon, 02 Mar 2020 12:16:36 GMT):
and also, why do we need to explicitly add nodes as peers with clique? is it because with this consensus mechanism there is no native method for node discovery with a bootnode?

coenie (Mon, 02 Mar 2020 13:55:55 GMT):
I've spoken to some of the Besu/PegaSys people a while back about adding support for another (perhaps NIST compliant) signing curve, is any current work going into that atm?

shemnon (Mon, 02 Mar 2020 15:43:42 GMT):
Besu Contributor Call tomorrow - 3 Mar 1500 UTC - Right before the Hyperledger Global Forum keynote! - https://wiki.hyperledger.org/display/BESU/2018-03-03+Contributor+Call

shemnon (Mon, 02 Mar 2020 15:43:42 GMT):
Besu Contributor Call tomorrow - 3 Mar 1500 UTC - Right before the Hyperledger Global Forum keynote! - https://wiki.hyperledger.org/display/BESU/2020-03-03+Contributor+Call

shemnon (Mon, 02 Mar 2020 16:21:12 GMT):
It's not on our roadmap currently. It's got some non-trivial friction: some hash functions and signatures have different lengths which impacts the wire protocol in unexpected ways. It also impacts off chain tooling such as wallets, metamask, and integration libraries.

ArvsIndrarys (Mon, 02 Mar 2020 16:33:08 GMT):
Hi all! I have some trouble creating an IBFT network. I followed [this tutorial](https://besu.hyperledger.org/en/stable/Tutorials/Private-Network/Create-IBFT-Network/), my peers are connected to each other and use the correct private key at setup. But no blocks are produced and I don't know why; I tried to re-create the rlp encoding in cas that was faulty but with no result. I tried back with besu1.3 but with no success. Any idea of what I could have done wrong? My process is: - generate the genesis and keys from a template using `besu operator generate-blockchain-config` - move this data where the besu containers load it - deploy with `docker-compose up` and then connect the nodes via RPC From the grafana dashboard I can see that they are connected but the first block has trouble being issued: ``` 2020-03-02 16:28:38.033+00:00 | pool-10-thread-1 | DEBUG | IbftBlockHeightManager | Round has expired, creating PreparedCertificate and notifying peers. round=ConsensusRoundIdentifier{Sequence=1, Round=4} 2020-03-02 16:28:38.033+00:00 | pool-10-thread-1 | DEBUG | IbftBlockHeightManager | Starting new round 5 ```

shemnon (Mon, 02 Mar 2020 16:36:50 GMT):
Are these the logs from each node that is a validator?

ArvsIndrarys (Mon, 02 Mar 2020 16:39:03 GMT):
Now you say it, only half of them (they are 4) do have these logs

ArvsIndrarys (Mon, 02 Mar 2020 16:45:04 GMT):
Thanks! I had a misconfiguration in the volumes of my docker-compose. I am correcting it and I keep you updated ! Thanks

ArvsIndrarys (Mon, 02 Mar 2020 16:45:04 GMT):
Thanks! I had a misconfiguration in the volumes of my docker-compose. I am correcting it and I keep you updated !

ArvsIndrarys (Mon, 02 Mar 2020 16:49:00 GMT):
Yes! that was the misconfiguration, thanks a lot for giving the clue I was missing. ANd sorry for the spam, it was my fault

ArvsIndrarys (Mon, 02 Mar 2020 16:49:00 GMT):
Yes! that was the misconfiguration, thanks a lot for giving the clue I was missing. And sorry for the spam, it was my fault

shemnon (Mon, 02 Mar 2020 16:49:25 GMT):
Not a problem. Keeps us updated.

ArvsIndrarys (Mon, 02 Mar 2020 16:49:48 GMT):
All is working, they are producing blocks as expected

ArvsIndrarys (Mon, 02 Mar 2020 16:55:12 GMT):
I have another question though, how do I specify my block time to be fixed to 5 seconds ? my current configuration is : ``` "ibft2" : { "blockperiodseconds" : 5, "epochlength" : 30000, "requesttimeoutseconds" : 10 } ``` But it seems to lock at around 6.3s. I have 4 validators for BFT and network is localhost. Would setting `"requesttimeoutseconds" : 5` do the trick?

jklepatch (Mon, 02 Mar 2020 17:07:20 GMT):
I have done a tutorial on how to setup a private ethereum network with ibft 2.0 following besu doc tutorial

jklepatch (Mon, 02 Mar 2020 17:07:37 GMT):
https://youtu.be/U3T4flnoTbA

jasonatran (Mon, 02 Mar 2020 17:39:59 GMT):
Has joined the channel.

aldoborrero (Mon, 02 Mar 2020 17:45:02 GMT):
Hi guys! Just wanted to share the plugin we have been working on: Exflo "A plugin for the Besu enterprise-grade Ethereum client with the aim of making it easier to extract chain data into a variety of different data stores and processing pipelines.". For now we support only Postgres and Kafka. It's Apache 2.0 Licensed (and is an alpha release as we know some obvious things we need to improve). Feel free to take a look!

aldoborrero (Mon, 02 Mar 2020 17:45:17 GMT):
https://github.com/41north/exflo

shemnon (Mon, 02 Mar 2020 20:57:03 GMT):
IBFT2 has finality, Clique is supported by other ethereum clients. Those are the two most relevant differences.

trent.mohay (Mon, 02 Mar 2020 21:19:19 GMT):
Hi @ArvsIndrarys, Unfortunately, the blocktime is hard/impossible to have 100% fixed in a distributed system. Having said that, I'm surprised you're seeing such significant difference on localhost. The blockperiodseconds is the number of seconds since the last block's import that the next block creation process will start (i.e. create the block, share with validators and create signatures) - this block creation process can take a little time, but I'm surprised its taking 1.3 seconds - are you CPU limited? Changing reqeusttimeoutseconds is not going to help your situation - this field is used to define the maximum duration (in seconds) of the first-block-creation process at each block-height - if this timeout expires, the block-creation process is restarted, but with a double-duration timeout and a new proposer (repeat ad infinitum)

jklepatch (Tue, 03 Mar 2020 04:43:26 GMT):
whats the advantage of permissioning vs just setting up a private network ?

jklepatch (Tue, 03 Mar 2020 04:44:56 GMT):
In a private network we already can choose which node will be allowed in the network

jklepatch (Tue, 03 Mar 2020 04:45:17 GMT):
@shemnon thanks for your answer about IBFT

lucassaldanha (Tue, 03 Mar 2020 05:14:24 GMT):
Permissioning is really useful when the rules of which nodes can join net network are dynamic. Also, you can use permissioning to specify accounts that can affect the world state (potentially, different permission levels for different accounts).

lucassaldanha (Tue, 03 Mar 2020 05:15:24 GMT):
Also, using onchain permissioning mean that the rules are controlled by smart contracts, allowing a variety of use cases (e.g. a consortium network in which member should vote to allow a new member to join the network). Stuff like that.

ArvsIndrarys (Tue, 03 Mar 2020 10:14:50 GMT):
Hi! I have some trouble connecting my nodes via the `static-nodes.json`file method. My nodes do connect to each other via the `admin_addPeer` RPC command but I got `Node is not permitted to connect` problems via the file. [Here are more detailed logs](https://gist.github.com/ArvsIndrarys/26b52ff93a07d6095eb3b1b7bfa87d69). I tried setting peer-discovery to true (what I would avoid, thus not using the bootnodes option), but with no success.

lucassaldanha (Tue, 03 Mar 2020 18:06:34 GMT):
Hi! Could you share with us the config file or the CLI options used to start the nodes?

ArvsIndrarys (Wed, 04 Mar 2020 08:26:39 GMT):
Hi @lucassaldanha , I updated the gist to add the node config file.

jklepatch (Wed, 04 Mar 2020 15:30:40 GMT):
Thanks all for your help here

jklepatch (Wed, 04 Mar 2020 15:30:56 GMT):
with your help, I was able to complete this series of tutorial on Hyperledger Besu

jklepatch (Wed, 04 Mar 2020 15:31:22 GMT):
Please help me share it with interested people, and maybe consider adding it to the docs of Besu if you think thats good enough

jklepatch (Wed, 04 Mar 2020 15:31:23 GMT):
https://www.youtube.com/playlist?list=PLbbtODcOYIoEsNWdjTlXXWwCEClLA0fnK

ArvsIndrarys (Wed, 04 Mar 2020 16:15:45 GMT):
As well, when enabling and setting the bootnodes, I still got the `discovery must be enabled` error. And the `discovery-enabled` is set to true !

ArvsIndrarys (Wed, 04 Mar 2020 16:15:55 GMT):
(same gist)

lucassaldanha (Wed, 04 Mar 2020 19:51:03 GMT):
Ok thanks for sharing the genesis file. The other thing that I'd like to take a look at is your genesis file `/opt/besu/config/network/genesis.json`.

lucassaldanha (Wed, 04 Mar 2020 19:51:25 GMT):
And your `static-nodes.json`

ArvsIndrarys (Thu, 05 Mar 2020 08:25:49 GMT):
gist updated

faraggi (Thu, 05 Mar 2020 16:48:35 GMT):
Thanks @jklepatch for that great series!

akuanti (Thu, 05 Mar 2020 17:51:05 GMT):
If you use local permissioning and have nodes in your whitelist, do you then need to explicitly add the nodes as peers, or should this happen automatically?

NicolasMassart (Fri, 06 Mar 2020 16:46:41 GMT):
If you have a bootnode where your node can find these whitelisted nodes by himself it should work automatically

NicolasMassart (Fri, 06 Mar 2020 16:47:14 GMT):
Note that the bootnode have to be whitelisted too.

Jemal (Mon, 09 Mar 2020 00:53:37 GMT):
Hi guys, i am trying to measure transaction latency for a specific app for different consensus algorithms (IBFT, Clique PoA and PoW). For that, i need to know the confirmation time of a transaction. For IBFT, I know that a transaction is considered final once added to a block. But not sure for the other two. When can i say a transaction is confirmed for Clique PoA and PoW? Any idea?

ajsutton (Mon, 09 Mar 2020 01:00:29 GMT):
Neither Clique nor PoW provide guarnateed transaction finality, only probabilistic finality. So you basically have to choose how many blocks you want to wait to get to the level of risk you're prepared to accept. That number will be affected by what's at risk and things like the network hashrate (for PoW) or how much you trust validators in Clique.

Jemal (Mon, 09 Mar 2020 01:05:22 GMT):
@ajsutton Thank you bro. So, is there a rule like the minimum/maximum number of blocks to wait to get some level of guarantee. Also do you know if there is any documentation that explains these things in detail?.

ajsutton (Mon, 09 Mar 2020 05:44:42 GMT):
I'm not aware of anything definitive. Most people just go with something fairly arbitrary like 6 blocks from what I can tell.

ajsutton (Mon, 09 Mar 2020 05:45:09 GMT):
Although Eth2 went with follow 1024 blocks behind the eth1 chain PoW chain to be *really* sure there were no re-orgs.

akuanti (Mon, 09 Mar 2020 15:07:45 GMT):
Thank you

ThomasRush2 (Mon, 09 Mar 2020 17:41:16 GMT):
Has joined the channel.

ThomasRush2 (Mon, 09 Mar 2020 17:41:17 GMT):
Hi. Question for you'all about tracing.

ThomasRush2 (Mon, 09 Mar 2020 17:41:36 GMT):
Running this version of Besu: `besu/v1.4.0/osx-x86_64/adoptopenjdk-java-13` with this configuraiton file: ``` network="mainnet" miner-enabled=false rpc-http-cors-origins=["all"] host-whitelist=["*"] rpc-ws-enabled=true rpc-http-enabled=true data-path="/Volumes/Samsung_T7/besu-mainnet" revert-reason-enabled=true pruning-enabled=false For this curl command I get good data: curl --data '{"method":"eth_getBlockByNumber","params":["0x1",true],"id":1,"jsonrpc":"2.0"}' -H "Content-Type: application/json" -X POST localhost:8545 For this curl command: curl --data '{"method":"trace_replayBlockTransactions","params":["0x1"],"id":1,"jsonrpc":"2.0"}' -H "Content-Type: application/json" -X POST localhost:8545 I get this response: { "jsonrpc" : "2.0", "id" : 1, "error" : { "code" : -32604, "message" : "Method not enabled" } } ```

ThomasRush2 (Mon, 09 Mar 2020 17:41:36 GMT):
Running this version of Besu: `besu/v1.4.0/osx-x86_64/adoptopenjdk-java-13` with this configuraiton file: ``` network="mainnet" miner-enabled=false rpc-http-cors-origins=["all"] host-whitelist=["*"] rpc-ws-enabled=true rpc-http-enabled=true data-path="/Volumes/Samsung_T7/besu-mainnet" revert-reason-enabled=true pruning-enabled=false ``` For this curl command I get good data: ``` curl --data '{"method":"eth_getBlockByNumber","params":["0x1",true],"id":1,"jsonrpc":"2.0"}' -H "Content-Type: application/json" -X POST localhost:8545 ``` For this curl command: ``` curl --data '{"method":"trace_replayBlockTransactions","params":["0x1"],"id":1,"jsonrpc":"2.0"}' -H "Content-Type: application/json" -X POST localhost:8545 ``` I get this response: ``` { "jsonrpc" : "2.0", "id" : 1, "error" : { "code" : -32604, "message" : "Method not enabled" } } ```

shemnon (Mon, 09 Mar 2020 17:44:01 GMT):
add to CLI `--rpc-http-api=TRACE`

ThomasRush2 (Mon, 09 Mar 2020 17:44:15 GMT):
Let me try that.

ThomasRush2 (Mon, 09 Mar 2020 17:44:28 GMT):
To the command line or the configuration file?

ThomasRush2 (Mon, 09 Mar 2020 17:56:44 GMT):
That works....but....

ThomasRush2 (Mon, 09 Mar 2020 17:57:57 GMT):
This command `curl --data '{"method":"trace_replayBlockTransactions","params":["0x895441",["trace"]],"id":1,"jsonrpc":"2.0"}' -H "Content-Type: application/json" -X POST localhost:8545` run against Parity produces a huge amount of data (this is block 9000001). Besu produces ``` { "jsonrpc" : "2.0", "id" : 1, "result" : null } ```

ThomasRush2 (Mon, 09 Mar 2020 17:57:57 GMT):
This command `curl --data '{"method":"trace_replayBlockTransactions","params":["0x895441",["trace"]],"id":1,"jsonrpc":"2.0"}' -H "Content-Type: application/json" -X POST localhost:8545` run against Parity produces a huge amount of data (this is block 900001). Besu produces ``` { "jsonrpc" : "2.0", "id" : 1, "result" : null } ```

ThomasRush2 (Mon, 09 Mar 2020 17:58:50 GMT):
`vmTrace` for parity produces dramatically more data. Besu produces same result.

shemnon (Mon, 09 Mar 2020 18:27:27 GMT):
which chain? If you are running in fast sync only blocks after the pivot will result in useful results.

ThomasRush2 (Mon, 09 Mar 2020 18:28:24 GMT):
I'm running mainchain with pruning off.

ThomasRush2 (Mon, 09 Mar 2020 18:30:31 GMT):
Oh. Just figured it out. I was trying to query a block that had not yet synced. (I queried 9,000,001 and meant to query 900,001).

shemnon (Mon, 09 Mar 2020 18:30:41 GMT):
Was it a fast or a full sync? If it was a fast sync 900k is well before the pivot.

ThomasRush2 (Mon, 09 Mar 2020 18:31:00 GMT):
It's full sync. It's working now.

shemnon (Mon, 09 Mar 2020 18:31:07 GMT):
:+1:

ThomasRush2 (Mon, 09 Mar 2020 18:31:10 GMT):
I was querying a block that hadn't yet sunk.

ThomasRush2 (Mon, 09 Mar 2020 18:31:40 GMT):
Is 'trace_replayBlockTransactions` the only tracing command you support?

shemnon (Mon, 09 Mar 2020 18:33:01 GMT):
Right now. We are in the process of adding others. Specifically, what commands do you want?

ThomasRush2 (Mon, 09 Mar 2020 18:40:10 GMT):
In order of increasing importance.

ThomasRush2 (Mon, 09 Mar 2020 18:40:12 GMT):
1) We use `trace_get` as a lightweight way to tell how many traces a transaction has. For the Fall 2016 dDos attacks, we use this to 'skip over' these traces (at the user's discretion). Almost all of the 2016 dDos attack transactions have 10s of thousands of 'traces'. It's a huge performance killer.

ThomasRush2 (Mon, 09 Mar 2020 18:41:32 GMT):
2) We use `trace_transaction` but only in a limited way when we know the exact transaction and we want the 'raw' trace data we're querying (not the case in our primary usage).

ThomasRush2 (Mon, 09 Mar 2020 18:43:56 GMT):
3) We use `trace_block` to do our 'extraction of appearances'. This is the primary use of traces. We spin through every block, call `trace_block` and run through the entirety of that data to extract addresses. (We use other RPC data such as receipts to get contract creations and deletions.)

ThomasRush2 (Mon, 09 Mar 2020 18:45:51 GMT):
We only really look at the 'trace' types -- we don't use `vmTrace` or `stateDiff` (yet).

ThomasRush2 (Mon, 09 Mar 2020 18:47:53 GMT):
If I had to choose, I would choose `trace_block`.

shemnon (Mon, 09 Mar 2020 19:25:10 GMT):
`trace_block` and `trace_transaction` are on the ConsenSys todo list. Most of the other contributors are focused on Eth Classic support and EEA features so I wouldn't expect it from them. `trace_get` is not on our roadmap although the difficult work appears to be done for that.

jasonatran (Tue, 10 Mar 2020 02:38:10 GMT):
hi Besu community, Jason here from Whiteblock.io. we are working on contributing support for PoW mining via keccak256 (https://etccooperative.org/etc-coop-support-switch-to-keccak256/), and we are looking for information on which requirements we should focus on passing(e.g. unit tests and integration tests). on a high level, we are trying to add a run time flag (or.ghyperledger.besu.cli) and making changes to (org.hyperledger.besu.etehreum.blockcreation and ethereum.mainnet). we would appreciate any pointers!

bobsummerwill (Tue, 10 Mar 2020 02:46:02 GMT):
And I am happy to help in any way I can with this ^^ ChainSafe (mainly Edward Mack) are doing ongoing work for ETC hard forks as they come. Whiteblock are doing the first "extra" work here, looking at mining support. @timbeiko helped with the triage on various mining TODOs. This is the first step.

shemnon (Tue, 10 Mar 2020 04:07:19 GMT):
Don't do a runtime flag. This should be configured via the genesis file, like ethash, ibft, and clique are configured. org.hyperledger.besu.config.JsonGenesisConfigOptions#getConsensusEngine is a place to start. Some of the classes that you are modeling will be (mistakenly) named "EthHash" instead of "Ethash" Pretty much every "EthHash" class will need a "Keccak256Pow" equivilant. Stylewise I would prefer "pow" in the class names. Keccak also has non-Proof-of-Work uses whereas Ethash is almost exclusively PoW, so the rider isn't needed.

ggarri (Tue, 10 Mar 2020 09:55:21 GMT):
Hi !! I am trying to set up an off-chain private network using the instructions written in the official documentation: https://besu.hyperledger.org/en/latest/Tutorials/Permissioning/Create-Permissioned-Network/ Unfortunately I could not make it work. I booted up the 3 nodes, whitelisted the enodes and added the peers to each of the nodes following step by step the documentation but connectivity across peers do not work. I am using latest stable version : `besu/v1.4.0/linux-x86_64/oracle-java-13`. Can anyone gimme a hand with it?

ggarri (Tue, 10 Mar 2020 09:55:21 GMT):
Hi !! I am trying to set up an off-chain permissioned network using the instructions written in the official documentation: https://besu.hyperledger.org/en/latest/Tutorials/Permissioning/Create-Permissioned-Network/ Unfortunately I could not make it work. I booted up the 3 nodes, whitelisted the enodes and added the peers to each of the nodes following step by step the documentation but connectivity across peers do not work. I am using latest stable version : `besu/v1.4.0/linux-x86_64/oracle-java-13`. Can anyone gimme a hand with it?

ggarri (Tue, 10 Mar 2020 09:55:21 GMT):
Hi !! I am trying to set up an off-chain permissioned network using the instructions written in the official documentation: https://besu.hyperledger.org/en/latest/Tutorials/Permissioning/Create-Permissioned-Network/ Unfortunately I could not make it work. I started up the 3 nodes, whitelisted their enodes and cross added peers following step by step the documentation but the connectivity/synchronization does not work. I am using latest stable version : `besu/v1.4.0/linux-x86_64/oracle-java-13`

ggarri (Tue, 10 Mar 2020 09:55:21 GMT):
Hi !! I am trying to set up an off-chain permissioned network using the instructions written in the official documentation: https://besu.hyperledger.org/en/latest/Tutorials/Permissioning/Create-Permissioned-Network/ Unfortunately I could not make it work. I started up the 3 nodes, whitelisted their enodes and cross added peers following step by step the documentation but the connectivity/synchronization does not work, every nodes in the loop of pritting "No sync target, wait for peers" I am using latest stable version : `besu/v1.4.0/linux-x86_64/oracle-java-13`

ArvsIndrarys (Tue, 10 Mar 2020 15:49:25 GMT):
per second

ArvsIndrarys (Tue, 10 Mar 2020 16:32:48 GMT):
Hi is there any informations about the amount of tx/s (or tps) supported by besu? I saw in the JIRA these issues/epics : https://jira.hyperledger.org/browse/BESU-22 https://jira.hyperledger.org/browse/BESU-15 but is there somewhere the results?

madelinemurray (Wed, 11 Mar 2020 05:13:42 GMT):
Depending on infrastruture and network topology, we've seen up to 400 TPS supported by Besu.

arash009 (Wed, 11 Mar 2020 05:15:43 GMT):
Hi @ggarri did you complete all the steps in the tutorial? Can you validate that the `permissions_config.toml` file in each of the nodes directories contains the 3 enode IDs matching the 3 nodes that you started up

ggarri (Wed, 11 Mar 2020 07:38:21 GMT):
Hi! Yes to both, completed the tutorial and validated the permissions file to verify enodes are whitelisted

ggarri (Wed, 11 Mar 2020 08:51:47 GMT):
Sorry, my bad, I have a messed iptables with localhost rules what causes the communication issue. After a clean up I made it work. Thanks!

magooster (Wed, 11 Mar 2020 08:59:08 GMT):
Hi on upgrade to besu 1.4.0 i noticed that even with rpc auth disabled (rpc-http-authentication-enabled=false) if I include rpc-http-authentication-credentials-file=/path/to/file I get a 401 error when accessing the JSON RPC endpoint {"jsonrpc":"2.0","id":null,"error":{"code":-40100,"message":"Unauthorized"}} (This is different behaviour from Besu 1.3) shouldn't the flag take precedence? If i comment out the cerdential file setting in the config all works as expected...

faraggi (Wed, 11 Mar 2020 09:50:58 GMT):
There are also some detailed benchmarks being worked on and that information will be released as soon as we have it.

faraggi (Wed, 11 Mar 2020 09:52:10 GMT):
good question, let me check and see if this might be a bug

machadovilaca (Wed, 11 Mar 2020 12:25:43 GMT):
Has joined the channel.

machadovilaca (Wed, 11 Mar 2020 12:25:44 GMT):
Hello, I'm using a fork of the besu repo in GitLab, right now I'm trying to configure CI/CD on GitLab but the docker build step is taking a lot of time. Looking at your circleci config I don't quite understand how it's being done, looks like you are building the code with gradlew and then moving those compiled files to the docker, is that right? Can someone explain this to me? thanks in advance

antonispoulakis (Wed, 11 Mar 2020 13:20:19 GMT):
Has joined the channel.

antonispoulakis (Wed, 11 Mar 2020 13:20:20 GMT):
Hi, I'm using Besu 1.3.8, and I've noticed if two transactions are sent at the same time with the same nonce, the second transaction doesn't get the "Nonce too low" error but it hangs until it gets unauthorized after the auth token expires and the error I get is "Failed to check for transaction receipt". If the second one gets sent after the first one has finished mining, it returns the "Nonce too low" error immediately.

shemnon (Wed, 11 Mar 2020 13:58:09 GMT):
I believe this is how all ethereum clients will treat it. We need to be able to replace mempry pool transactions on occasion. i.e. transactions not mined. Once case I had to deal with was when I set the gas price to zero and no miner would mine it but it had propagated to all the miner nodes. If it always replied "nonce too low" we would never be able to replace memory pool transactions.

faraggi (Wed, 11 Mar 2020 15:52:16 GMT):
@joshuafernandes hangs out in here and is the perfect person to ask about this.

faraggi (Wed, 11 Mar 2020 15:52:16 GMT):
@joshuafernandes and @EdJoJob hang out in here and are perfect persons to ask this to.

faraggi (Wed, 11 Mar 2020 15:53:55 GMT):
@EdJoJob is here often as well

joshuafernandes (Wed, 11 Mar 2020 21:09:15 GMT):
The first step from ```./gradlew --no-daemon --parallel clean spotlessCheck compileJava compileTestJava assemble``` does the build and has a lot of compiled files

joshuafernandes (Wed, 11 Mar 2020 21:09:15 GMT):
The first step from ```./gradlew --no-daemon --parallel clean spotlessCheck compileJava compileTestJava assemble``` does the build and has a lot of compiled files which we save to a workspace and mount for the next test runs to speed things up

joshuafernandes (Wed, 11 Mar 2020 21:10:06 GMT):
we save those to a workspace so the next steps of unittests (`build`), int tests (`integrationTest`) and so on are faster

joshuafernandes (Wed, 11 Mar 2020 21:10:06 GMT):
this makes the next steps of unittests (`build`), int tests (`integrationTest`) and so on are faster

joshuafernandes (Wed, 11 Mar 2020 21:10:38 GMT):
the longest of the tests are the acceptance and reference tests

joshuafernandes (Wed, 11 Mar 2020 21:17:57 GMT):
From memory (this could well have changed now) I believe the equivalent on gitlab would be `artifacts` (for the workspace) paired with `dependencies` to pass things across stages

RobertoSnap (Wed, 11 Mar 2020 21:34:11 GMT):
Has joined the channel.

RobertoSnap (Wed, 11 Mar 2020 21:57:02 GMT):
Hello, Im running a Besu node on Kaleido (1.0.24). Running IBFT. Debugged a transactions for hours now. What seems to cause problems is a function with string CALLDATA paramName, im a right in that CALLDATA wont work on this version of Besu?

RobertoSnap (Wed, 11 Mar 2020 21:57:02 GMT):
Hello, Im running a Besu node on Kaleido (1.0.24). Running IBFT. Debugged a transactions for hours now. Im useing budiler and remix to debug in different ways. Bascially, i deploy som contracts, run some transactions. Then there is one function that im trying to run but fails on Besu. But it does not fail in javascriptVM. reason: 'transaction failed', code: 'CALL_EXCEPTION', What seems to cause problems is a function with string CALLDATA paramName, im a right in that CALLDATA wont work on this version of Besu?

RobertoSnap (Wed, 11 Mar 2020 21:57:02 GMT):
Hello, Im running a Besu node on Kaleido (1.0.24). Running IBFT. Debugged a transactions for hours now. Im useing budiler and remix to debug in different ways. Bascially, i deploy som contracts, run some transactions. Then there is one function that im trying to run but fails on Besu. But it does not fail in javascriptVM. reason: 'transaction failed', code: 'CALL_EXCEPTION', What seemed to cause problem in the function was string CALLDATA param. But when switched it out for bytes32 I still have the problem. Because its only happening on the Kaleido Besu node its hard to debug. Any tips?

arash009 (Wed, 11 Mar 2020 23:28:29 GMT):
I've raised https://github.com/hyperledger/besu/issues/453 to investigate further

magooster (Thu, 12 Mar 2020 06:40:02 GMT):
Thanks

faraggi (Thu, 12 Mar 2020 07:55:27 GMT):
@magooster Its been fixed and the issues is now closed: https://github.com/hyperledger/besu/pull/454 Should be merged into next release

magooster (Thu, 12 Mar 2020 07:58:11 GMT):
Great

magooster (Thu, 12 Mar 2020 08:09:49 GMT):
Great

magooster (Thu, 12 Mar 2020 08:14:57 GMT):
I believe i've identified an edge case related to private state migration, seems if the Besu node can't detect schema version i.e. version = 0. Besu still starts and private database migration wont run

magooster (Thu, 12 Mar 2020 08:16:55 GMT):
Migration only runs if schema version is 1 and migration flag is set, otherwise node wont start... (PrivateStrorageMigrationService.java)

magooster (Thu, 12 Mar 2020 08:20:59 GMT):
The node i'm testing dates back to pantheon 1.1 and there's no DATABASE_METADATA.json in the database directory.

magooster (Thu, 12 Mar 2020 08:31:57 GMT):
Actually might be that the database is deemed to be empty...

TerryWBC (Thu, 12 Mar 2020 13:59:33 GMT):
Has joined the channel.

TerryWBC (Thu, 12 Mar 2020 14:29:39 GMT):
Hi, are there any plans to support subscribing to private contract events out of the box? Currently, I have something like this to listen to private events (added comments where code is missing) ```` import Web3 from 'web3' import EEAClient from 'web3-eea' import EventEmitter from 'events' const ORION_PUBLIC_KEY = 'key' const BESU_WS_URL = 'url' const BESU_RPC_URL = 'url' const web3 = new Web3(BESU_RPC_URL) const web3ws = new Web3(BESU_WS_URL) const web3priv = new EEAClient(new Web3(BESU_RPC_URL), 2018) class PrivateEventClient extends EventEmitter { constructor (web3ws, web3priv, orionPublicKey) { super() const pendingTxs = web3ws.eth.subscribe('pendingTransactions') pendingTxs.on('data', async (txHash) => { const txReceipt = await web3priv.priv.getTransactionReceipt( txHash, orionPublicKey ) // We are only interested in private tx if (!txReceipt) return if (txReceipt.contractAddress) { this.emit('privateContractDeployed', txReceipt) return } txReceipt.logs.forEach(log => { this.emit('logs', log) }) }) } } const privateEventsClient = new PrivateEventClient(web3ws, web3priv, ORION_PUBLIC_KEY) privateEventsClient.on('privateContractDeployed', async (txReceipt) => { const address = txReceipt.contractAddress // this uses the from/to instead of privacygroups, but they are interchangeable const privacyGroup = [...txReceipt.privateFor, txReceipt.privateFrom] // get abi&bytecode from somewhere const contract = new web3.eth.Contract(abi, address, { bytecode: bytecode }) contract.options.privacyGroup = privacyGroup.sort() privateEventsClient.on('logs', (log) => { if (contract._address.toLowerCase() !== log.address.toLowerCase()) return const output = contract._decodeEventABI.call({ name: 'ALLEVENTS', jsonInterface: contract._jsonInterface }, log) output.privacyGroup = contract.options.privacyGroup // Event received similar to public events console.log(output) }) }) ``` `

TerryWBC (Thu, 12 Mar 2020 14:29:39 GMT):
Hi, are there any plans to support subscribing to private contract events? Currently, I have something like this to listen to private events (added comments where code is missing) ```` import Web3 from 'web3' import EEAClient from 'web3-eea' import EventEmitter from 'events' const ORION_PUBLIC_KEY = 'key' const BESU_WS_URL = 'url' const BESU_RPC_URL = 'url' const web3 = new Web3(BESU_RPC_URL) const web3ws = new Web3(BESU_WS_URL) const web3priv = new EEAClient(new Web3(BESU_RPC_URL), 2018) class PrivateEventClient extends EventEmitter { constructor (web3ws, web3priv, orionPublicKey) { super() const pendingTxs = web3ws.eth.subscribe('pendingTransactions') pendingTxs.on('data', async (txHash) => { const txReceipt = await web3priv.priv.getTransactionReceipt( txHash, orionPublicKey ) // We are only interested in private tx if (!txReceipt) return if (txReceipt.contractAddress) { this.emit('privateContractDeployed', txReceipt) return } txReceipt.logs.forEach(log => { this.emit('logs', log) }) }) } } const privateEventsClient = new PrivateEventClient(web3ws, web3priv, ORION_PUBLIC_KEY) privateEventsClient.on('privateContractDeployed', async (txReceipt) => { const address = txReceipt.contractAddress // this uses the from/to instead of privacygroups, but they are interchangeable const privacyGroup = [...txReceipt.privateFor, txReceipt.privateFrom] // get abi&bytecode from somewhere const contract = new web3.eth.Contract(abi, address, { bytecode: bytecode }) contract.options.privacyGroup = privacyGroup.sort() privateEventsClient.on('logs', (log) => { if (contract._address.toLowerCase() !== log.address.toLowerCase()) return const output = contract._decodeEventABI.call({ name: 'ALLEVENTS', jsonInterface: contract._jsonInterface }, log) output.privacyGroup = contract.options.privacyGroup // Event received similar to public events console.log(output) }) }) ``` `

TerryWBC (Thu, 12 Mar 2020 14:29:39 GMT):
Hi, are there any plans to support subscribing to private contract events? Currently, I have something like this to listen to private events (added comments where code is missing) But It would be great if it will work similar to how public events work, only that it will also return the privacyGroup ``` const contract = new web3.eth.Contract(abi, address, { bytecode: bytecode }) contract.events.event().on('data', async({ event, returnValues, privacyGroup }) => { // DoSomething }) ``` ``` import Web3 from 'web3' import EEAClient from 'web3-eea' import EventEmitter from 'events' const ORION_PUBLIC_KEY = 'key' const BESU_WS_URL = 'url' const BESU_RPC_URL = 'url' const web3 = new Web3(BESU_RPC_URL) const web3ws = new Web3(BESU_WS_URL) const web3priv = new EEAClient(new Web3(BESU_RPC_URL), 2018) class PrivateEventClient extends EventEmitter { constructor (web3ws, web3priv, orionPublicKey) { super() const pendingTxs = web3ws.eth.subscribe('pendingTransactions') pendingTxs.on('data', async (txHash) => { const txReceipt = await web3priv.priv.getTransactionReceipt( txHash, orionPublicKey ) // We are only interested in private tx if (!txReceipt) return if (txReceipt.contractAddress) { this.emit('privateContractDeployed', txReceipt) return } txReceipt.logs.forEach(log => { this.emit('logs', log) }) }) } } const privateEventsClient = new PrivateEventClient(web3ws, web3priv, ORION_PUBLIC_KEY) privateEventsClient.on('privateContractDeployed', async (txReceipt) => { const address = txReceipt.contractAddress // this uses the from/to instead of privacygroups, but they are interchangeable const privacyGroup = [...txReceipt.privateFor, txReceipt.privateFrom] // get abi&bytecode from somewhere const contract = new web3.eth.Contract(abi, address, { bytecode: bytecode }) contract.options.privacyGroup = privacyGroup.sort() privateEventsClient.on('logs', (log) => { if (contract._address.toLowerCase() !== log.address.toLowerCase()) return const output = contract._decodeEventABI.call({ name: 'ALLEVENTS', jsonInterface: contract._jsonInterface }, log) output.privacyGroup = contract.options.privacyGroup // Event received similar to public events console.log(output) }) }) ```

TerryWBC (Thu, 12 Mar 2020 14:29:39 GMT):
Hi, are there any plans to support subscribing to private contract events? Currently, I have something like this to listen to private events (added comments where code is missing) ``` import Web3 from 'web3' import EEAClient from 'web3-eea' import EventEmitter from 'events' const ORION_PUBLIC_KEY = 'key' const BESU_WS_URL = 'url' const BESU_RPC_URL = 'url' const web3 = new Web3(BESU_RPC_URL) const web3ws = new Web3(BESU_WS_URL) const web3priv = new EEAClient(new Web3(BESU_RPC_URL), 2018) class PrivateEventClient extends EventEmitter { constructor (web3ws, web3priv, orionPublicKey) { super() const pendingTxs = web3ws.eth.subscribe('pendingTransactions') pendingTxs.on('data', async (txHash) => { const txReceipt = await web3priv.priv.getTransactionReceipt( txHash, orionPublicKey ) // We are only interested in private tx if (!txReceipt) return if (txReceipt.contractAddress) { this.emit('privateContractDeployed', txReceipt) return } txReceipt.logs.forEach(log => { this.emit('logs', log) }) }) } } const privateEventsClient = new PrivateEventClient(web3ws, web3priv, ORION_PUBLIC_KEY) privateEventsClient.on('privateContractDeployed', async (txReceipt) => { const address = txReceipt.contractAddress // this uses the from/to instead of privacygroups, but they are interchangeable const privacyGroup = [...txReceipt.privateFor, txReceipt.privateFrom] // get abi&bytecode from somewhere const contract = new web3.eth.Contract(abi, address, { bytecode: bytecode }) contract.options.privacyGroup = privacyGroup.sort() privateEventsClient.on('logs', (log) => { if (contract._address.toLowerCase() !== log.address.toLowerCase()) return const output = contract._decodeEventABI.call({ name: 'ALLEVENTS', jsonInterface: contract._jsonInterface }, log) output.privacyGroup = contract.options.privacyGroup // Event received similar to public events console.log(output) }) }) ``` But It would be great if it will work similar to how public events work, only that it will also return the privacyGroup ``` const contract = new web3.eth.Contract(abi, address, { bytecode: bytecode }) contract.events.event().on('data', async({ event, returnValues, privacyGroup }) => { // DoSomething }) ```

TerryWBC (Thu, 12 Mar 2020 14:29:39 GMT):
Hi, are there any plans to support subscribing to private contract events? Currently, I have something like this to listen to private events (added comments where code is missing) ``` import Web3 from 'web3' import EEAClient from 'web3-eea' import EventEmitter from 'events' const ORION_PUBLIC_KEY = 'key' const BESU_WS_URL = 'url' const BESU_RPC_URL = 'url' const web3 = new Web3(BESU_RPC_URL) const web3ws = new Web3(BESU_WS_URL) const web3priv = new EEAClient(new Web3(BESU_RPC_URL), 2018) class PrivateEventClient extends EventEmitter { constructor (web3ws, web3priv, orionPublicKey) { super() const pendingTxs = web3ws.eth.subscribe('pendingTransactions') pendingTxs.on('data', async (txHash) => { const txReceipt = await web3priv.priv.getTransactionReceipt( txHash, orionPublicKey ) // We are only interested in private tx if (!txReceipt) return if (txReceipt.contractAddress) { this.emit('privateContractDeployed', txReceipt) return } txReceipt.logs.forEach(log => { this.emit('logs', log) }) }) } } const privateEventsClient = new PrivateEventClient(web3ws, web3priv, ORION_PUBLIC_KEY) privateEventsClient.on('privateContractDeployed', async (txReceipt) => { const address = txReceipt.contractAddress // this uses the from/to instead of privacygroups, but they are interchangeable const privacyGroup = [...txReceipt.privateFor, txReceipt.privateFrom] // get abi&bytecode from somewhere const contract = new web3.eth.Contract(abi, address, { bytecode: bytecode }) contract.options.privacyGroup = privacyGroup.sort() privateEventsClient.on('logs', (log) => { if (contract._address.toLowerCase() !== log.address.toLowerCase()) return const output = contract._decodeEventABI.call({ name: 'ALLEVENTS', jsonInterface: contract._jsonInterface }, log) output.privacyGroup = contract.options.privacyGroup // Event output similar to public events console.log(output) }) }) ``` But It would be great if it will work similar to how public events work, only that it will also return the privacyGroup ``` const contract = new web3.eth.Contract(abi, address, { bytecode: bytecode }) contract.events.event().on('data', async({ event, returnValues, privacyGroup }) => { // DoSomething }) ``` For anybody that is interested, you can simulate this behaviour (nastily) by replacing the subscription on the contract.events[key] with a function returning an new EventEmitter(). Then instead of console logging the output, you can bind emit the output on that new EventEmitter. However, this doesn't seem like a good idea long term ``` privateEventsClient.on('privateContractDeployed', async (txReceipt) => { ... Object.keys(contract.events).forEach(key => { const ee = new EventEmitter() ee.topics = contract.events[key]().options.params.topics contract.events[key] = function () { return ee } }) web3privateEvents.on('logs', (log) => { ... const events = Object.values(contract.events).filter(event => event().topics.includes(output.signature)) events.forEach(event => event().emit('data', output)) }) ```

TerryWBC (Thu, 12 Mar 2020 14:29:39 GMT):
Hi, are there any plans to support subscribing to private contract events? Currently, I have something like this to listen to private events (added comments where code is missing) ``` import Web3 from 'web3' import EEAClient from 'web3-eea' import EventEmitter from 'events' const ORION_PUBLIC_KEY = 'key' const BESU_WS_URL = 'url' const BESU_RPC_URL = 'url' const web3 = new Web3(BESU_RPC_URL) const web3ws = new Web3(BESU_WS_URL) const web3priv = new EEAClient(new Web3(BESU_RPC_URL), 2018) class PrivateEventClient extends EventEmitter { constructor (web3ws, web3priv, orionPublicKey) { super() const pendingTxs = web3ws.eth.subscribe('pendingTransactions') pendingTxs.on('data', async (txHash) => { const txReceipt = await web3priv.priv.getTransactionReceipt( txHash, orionPublicKey ) // We are only interested in private tx if (!txReceipt) return if (txReceipt.contractAddress) { this.emit('privateContractDeployed', txReceipt) return } txReceipt.logs.forEach(log => { this.emit('logs', log) }) }) } } const privateEventsClient = new PrivateEventClient(web3ws, web3priv, ORION_PUBLIC_KEY) privateEventsClient.on('privateContractDeployed', async (txReceipt) => { const address = txReceipt.contractAddress // this uses the from/to instead of privacygroups, but they are interchangeable const privacyGroup = [...txReceipt.privateFor, txReceipt.privateFrom] // get abi&bytecode from somewhere const contract = new web3.eth.Contract(abi, address, { bytecode: bytecode }) contract.options.privacyGroup = privacyGroup.sort() privateEventsClient.on('logs', (log) => { if (contract._address.toLowerCase() !== log.address.toLowerCase()) return const output = contract._decodeEventABI.call({ name: 'ALLEVENTS', jsonInterface: contract._jsonInterface }, log) output.privacyGroup = contract.options.privacyGroup // Event output similar to public events console.log(output) }) }) ``` But It would be great if it will work similar to how public events work, only that it will also return the privacyGroup ``` const contract = new web3.eth.Contract(abi, address, { bytecode: bytecode }) contract.events.event().on('data', async({ event, returnValues, privacyGroup }) => { // DoSomething }) ``` For anybody that is interested, you can simulate this behaviour (nastily) by replacing the subscription on the contract.events[key] with a function returning a new EventEmitter(). Instead of console logging the output, you can emit the output to that new EventEmitter. However, this doesn't seem like a good idea long term. ``` privateEventsClient.on('privateContractDeployed', async (txReceipt) => { ... Object.keys(contract.events).forEach(key => { const ee = new EventEmitter() ee.topics = contract.events[key]().options.params.topics contract.events[key] = function () { return ee } }) web3privateEvents.on('logs', (log) => { ... const events = Object.values(contract.events).filter(event => event().topics.includes(output.signature)) events.forEach(event => event().emit('data', output)) }) ```

TerryWBC (Thu, 12 Mar 2020 14:29:39 GMT):
Hi, are there any plans to support subscribing to private contract events? Currently, I have something like this to listen to private events (added comments where code is missing) ``` import Web3 from 'web3' import EEAClient from 'web3-eea' import EventEmitter from 'events' const ORION_PUBLIC_KEY = 'key' const BESU_WS_URL = 'url' const BESU_RPC_URL = 'url' const web3 = new Web3(BESU_RPC_URL) const web3ws = new Web3(BESU_WS_URL) const web3priv = new EEAClient(new Web3(BESU_RPC_URL), 2018) class PrivateEventClient extends EventEmitter { constructor (web3ws, web3priv, orionPublicKey) { super() const pendingTxs = web3ws.eth.subscribe('pendingTransactions') pendingTxs.on('data', async (txHash) => { const txReceipt = await web3priv.priv.getTransactionReceipt( txHash, orionPublicKey ) // We are only interested in private tx if (!txReceipt) return if (txReceipt.contractAddress) { this.emit('privateContractDeployed', txReceipt) return } txReceipt.logs.forEach(log => { this.emit('logs', log) }) }) } } const privateEventsClient = new PrivateEventClient(web3ws, web3priv, ORION_PUBLIC_KEY) privateEventsClient.on('privateContractDeployed', async (txReceipt) => { const address = txReceipt.contractAddress // this uses the from/to instead of privacygroups, but they are interchangeable const privacyGroup = [...txReceipt.privateFor, txReceipt.privateFrom] // get abi&bytecode from somewhere const contract = new web3.eth.Contract(abi, address, { bytecode: bytecode }) contract.options.privacyGroup = privacyGroup.sort() privateEventsClient.on('logs', (log) => { if (contract._address.toLowerCase() !== log.address.toLowerCase()) return const output = contract._decodeEventABI.call({ name: 'ALLEVENTS', jsonInterface: contract._jsonInterface }, log) output.privacyGroup = contract.options.privacyGroup // Event output similar to public events console.log(output) }) }) ``` But It would be great if it will work similar to how public events work, only that it will also return the privacyGroup ``` const contract = new web3.eth.Contract(abi, address, { bytecode: bytecode }) contract.events.event().on('data', async({ event, returnValues, privacyGroup }) => { // DoSomething }) ``` For anybody that is interested, you can simulate this behaviour (nastily) by replacing the subscription on the contract.events[key] with a function returning a new EventEmitter(). Instead of console logging the output, you can emit the output to that new EventEmitter. However, this doesn't seem like a good idea long term. ``` privateEventsClient.on('privateContractDeployed', async (txReceipt) => { ... Object.keys(contract.events).forEach(key => { const ee = new EventEmitter() ee.topics = contract.events[key]().options.params.topics contract.events[key] = function () { return ee } }) web3privateEvents.on('logs', (log) => { ... const events = Object.values(contract.events).filter(event => event().topics.includes(output.signature)) events.forEach(event => event().emit('data', output)) }) }) ```

bobsummerwill (Thu, 12 Mar 2020 17:04:33 GMT):
Hey everyone! When is the next scheduled HL Besu point release? Is there a 1.4.1 coming up soon? Thanks!

timbeiko (Thu, 12 Mar 2020 19:04:55 GMT):
Yes, 1.4.1 is scheduled for tomorrow :+1:

NikosFotiadis (Thu, 12 Mar 2020 19:25:12 GMT):
Has joined the channel.

NikosFotiadis (Thu, 12 Mar 2020 19:25:13 GMT):
Hi, We have been running besu on and we are uising Username and Password Authentication. When connecting using web3's websocket provider the connection is ok initially but is dropped after a while(before the token expitres). I have not been able to find anything on the documentation regarding dropping connections. My question is whether this is something that besu does intentionally or if it is related with something else. If yes, can I disabled it?

tvanepps (Thu, 12 Mar 2020 19:42:56 GMT):
Hello Besu community, I'm dropping by to share this Ethereum developer survey from ETHGlobal. We're casting a really wide net and would love to get responses from more enterprise focused developers >> https://ethglobal.typeform.com/to/RxHlK8 :moneybag: 1 of 10 prizes of 100 DAI :airplane: 1 of 3 free return flights to an ETHGlobal event :tickets: 1 of 2 free tickets to Devcon 6 Looking forward to your responses!

tvanepps (Thu, 12 Mar 2020 19:42:56 GMT):
Hello Besu community, I'm dropping by to share this Ethereum developer survey from ETHGlobal. We're casting a really wide net and would love to get responses from more enterprise focused developers >> https://ethglobal.typeform.com/to/RxHlK8 Filling it out to the end also makes you eligible for a few prizes: :moneybag: 1 of 10 prizes of 100 DAI :airplane: 1 of 3 free return flights to an ETHGlobal event :tickets: 1 of 2 free tickets to Devcon 6 Sincere thanks for those that take the time, looking forward to your responses :pray:

tvanepps (Thu, 12 Mar 2020 19:42:56 GMT):
Hello Besu community, I'm dropping by to share this Ethereum developer survey from ETHGlobal. We're casting a really wide net and would love to get responses from more enterprise focused developers >> https://ethglobal.typeform.com/to/RxHlK8 Filling it out to the end also makes you eligible for a few prizes: :moneybag: 1 of 10 prizes of 100 DAI :airplane: 1 of 3 free return flights to an ETHGlobal event :tickets: 1 of 2 free tickets to Devcon 6 Thanks for your time, looking forward to any responses :pray:

eum602 (Fri, 13 Mar 2020 02:04:30 GMT):
Please can you tell us what amount of gas does those transactions have?

Bobur (Fri, 13 Mar 2020 02:12:03 GMT):
Hello folks! I hope everyone is doing well. I have a few questions regarding the Orion node. If anyone can provide some insights about it, you would make my day! 1. What is the reason of running Orion node in a separate instance instead of inside Besu node?. 2. When running an Orion node in a separate instance, wont there be any performance issues like lower TPS or any unexpected failure in Orion node etc? 3. Does it have to be a separate Orion node for each Besu node? 4. Is it really safe to use Orion for private transaction? Thank you a lot for ur answers in advance! Wish HLB community the best!

lucassaldanha (Fri, 13 Mar 2020 03:30:17 GMT):
@Bobur here are a few answers to your questions. I hope they can help! 1. Mostly due to the origin of the project and the use cases that required the data encrypted at rest to be into "special" servers and things like that (mostly compliance). We are exploring options to, in the future, allow Orion to run as a plugin of Besu. So the user will have both options available. 2. For production environments, Orion must be highly available (from 1.5.0) - (https://docs.orion.pegasys.tech/en/latest/HowTo/High-Availability/). For most use cases, the overhead of encrypting/decrypting private txs doesn't impact the TPS of the network. 3. This is recommended. If you want to run it in the same instance, you'll need to ensure that both JVMs are properly configure to share the host resources nicely. 4. Safety is a really broad concept. What are your concerns around using Orion for private txs?

lucassaldanha (Fri, 13 Mar 2020 03:30:17 GMT):
@Bobur here are a few answers to your questions. I hope they can help! 1. Mostly due to the origin of the project and the use cases that required the data encrypted at rest to be into "special" servers and things like that (mostly compliance). We are exploring options to, in the future, allow Orion to run as a plugin of Besu. So the user will have both options available. 2. For production environments, Orion must be highly available (full support for HA started on 1.5.0, our next stable version) - (https://docs.orion.pegasys.tech/en/latest/HowTo/High-Availability/). For most use cases, the overhead of encrypting/decrypting private txs doesn't impact the TPS of the network. 3. This is recommended. If you want to run it in the same instance, you'll need to ensure that both JVMs are properly configure to share the host resources nicely. 4. Safety is a really broad concept. What are your concerns around using Orion for private txs?

madelinemurray (Fri, 13 Mar 2020 06:42:04 GMT):
hi @magooster - I'm following this up and will get back to you.

madelinemurray (Fri, 13 Mar 2020 06:59:21 GMT):
Adding this functionality is planned for 1.5 - the Jira issue for tracking is https://jira.hyperledger.org/browse/BESU-79 We're in the progress of migrating our Jira issues to GitHub issues but will include a link on the Jira issue when that happens.

magooster (Fri, 13 Mar 2020 07:39:16 GMT):
Thanks, to me it looks like in Besu 1.4 private tx related items are being written to the data/database whereas in Besu 1.3.x looks like it wrote to data/database/private.

magooster (Fri, 13 Mar 2020 08:00:58 GMT):
The migration service thens see the database as empty - all I see in the PRIVATE_TRANSACTION segment is entries suffixed PGHEADMAP

magooster (Fri, 13 Mar 2020 08:05:13 GMT):
The 'old' db files contain keys suffixed LOGS and OUTPUT

faraggi (Fri, 13 Mar 2020 11:32:56 GMT):
Hi bobur,

faraggi (Fri, 13 Mar 2020 12:46:42 GMT):
1. I believe this is for RAM reasons. Having multiple RocksDB instances is going to use a ton of extra RAM due to all its caches etc. 2. There _might_ be lower TPS, but I don't think that'll be the bottleneck really. 3. its recommended because of (1) 4. Pretty subjective question, and depends on too many factors to answer objectively. What do you mean by 'safe'?

faraggi (Fri, 13 Mar 2020 12:46:42 GMT):
(only just saw lucas' answers, I've edited a bit now to add to his) 1. I believe this is for RAM reasons. Having multiple RocksDB instances is going to use a ton of extra RAM due to all its caches etc. 2. There _might_ be lower TPS, but I don't think that'll be the bottleneck, really. 3. its recommended because of (1) 4. Pretty subjective question, and depends on too many factors to answer objectively. What do you mean by 'safe'?

TerryWBC (Fri, 13 Mar 2020 13:43:17 GMT):
Thanks

ArseniiPetrovich (Fri, 13 Mar 2020 19:19:41 GMT):
Has joined the channel.

shemnon (Sat, 14 Mar 2020 22:38:06 GMT):
Next Tuesday is the next Besu contributor call, on EMEA/AMER friednly times. - https://wiki.hyperledger.org/display/BESU/2020-03-17+Contributor+Call If you are in the USA check the times as the call is fixed against UTC, so the call may be an hour later.

ppoliani (Sun, 15 Mar 2020 11:40:45 GMT):
hi guys

ppoliani (Sun, 15 Mar 2020 11:42:20 GMT):
I'm switching from Besu v1.3.8 to v 1.4.1 and I noticed that it doesn't work straightaway. It looks like there is the addition of `KubernetesNatManager` which tries to locate the cluster's config file at `~/.kube/config`

ppoliani (Sun, 15 Mar 2020 11:43:28 GMT):
I had to update `--nat-method=MANUAL` to make it work. Is there any reason why we should use `KubernetesNatManager ` when running in k8s cluster? It looks like setting it to manual works perfectly fine

ppoliani (Sun, 15 Mar 2020 14:32:41 GMT):
It looks like `--nat-method=MANUAL` doesn't work anymore. Peers cannot find each other `No sync target, wait for peers.`

ppoliani (Sun, 15 Mar 2020 15:11:10 GMT):
I can see `Waiting for new peer connection. 2 peers currently connected.` but no blocks are mined.

matkt (Sun, 15 Mar 2020 16:42:11 GMT):
by default Besu will try to automatically detect exposed ports and IP when running in Kunernetes. the difference with the manual mode where it is necessary to put manually all the ports and IP. to be able to make besu work properly in a kube you must add in your deployment script an environment variable KUBE_CONFIG_PATH: "/ path / to / kube-config" and add your port forwarding rules when you define your service

matkt (Sun, 15 Mar 2020 16:44:23 GMT):
Example of service definition with port forwarding : --- apiVersion: v1 kind: Service metadata:   labels:     app.kubernetes.io/name: besu     app.kubernetes.io/release: "1.0.0"   name: besu spec:   ports:   - name: "json-rpc"     port: 9000     targetPort: 8545   - name: "rlpx"     port: 7777     targetPort: 8888   selector:     app.kubernetes.io/name: besu     app.kubernetes.io/release: "1.0.0"   type: LoadBalancer

matkt (Sun, 15 Mar 2020 16:44:23 GMT):
Example of service definition with port forwarding : --- apiVersion: v1 kind: Service metadata:   labels:     app.kubernetes.io/name: besu     app.kubernetes.io/release: "1.0.0"   name: besu spec:   ports:   - name: "json-rpc"     port: 9000     targetPort: 8545   - name: "rlpx"     port: 7777     targetPort: 8888   selector:     app.kubernetes.io/name: besu     app.kubernetes.io/release: "1.0.0"   type: LoadBalancer

matkt (Sun, 15 Mar 2020 16:44:23 GMT):
Example of service definition with port forwarding : --- apiVersion: v1 kind: Service metadata:   labels:     app.kubernetes.io/name: besu     app.kubernetes.io/release: "1.0.0"   name: besu spec:   ports:   - name: "json-rpc"     port: 9000     targetPort: 8545   selector:     app.kubernetes.io/name: besu     app.kubernetes.io/release: "1.0.0"   type: LoadBalancer

matkt (Sun, 15 Mar 2020 16:45:28 GMT):
Example of deployment script with the new env variable : --- apiVersion: v1 kind: ConfigMap metadata:   name: besu-config   labels:     app.kubernetes.io/name: besu     app.kubernetes.io/release: 1.0.0 data:   BESU_LOGGING: "INFO"   BESU_NETWORK: "dev"   BESU_P2P_ENABLED: "true"   BESU_RPC_HTTP_ENABLED: "true"   BESU_RPC_HTTP_APIS: "eth,net,web3,debug,admin"   KUBE_CONFIG_PATH: "/opt/besu/shared/kube-config"

matkt (Sun, 15 Mar 2020 16:46:52 GMT):
did block mining start in manual mode ?

ppoliani (Sun, 15 Mar 2020 17:12:27 GMT):
nope, it didn't start mining. I can see the following logs ``` 2020-03-15 17:10:18.776+00:00 | main | INFO | NatService | Waiting for up to 60 seconds to detect external IP address... 2020-03-15 17:10:18.777+00:00 | main | INFO | NatService | Waiting for up to 60 seconds to detect external IP address... 2020-03-15 17:10:18.780+00:00 | main | INFO | AutoTransactionLogBloomCachingService | Starting auto transaction log bloom caching service. 2020-03-15 17:10:23.490+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, wait for peers. 2020-03-15 17:10:28.492+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, wait for peers. 2020-03-15 17:10:33.493+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, wait for peers. ```

ppoliani (Sun, 15 Mar 2020 17:15:34 GMT):
I'm not sure what has changed since version 1.3.8? I could easily deploy the network using these manifest files https://github.com/PegaSysEng/besu-kubernetes/tree/master/kubectl/clique

matkt (Sun, 15 Mar 2020 17:17:57 GMT):
is your manual configuration correct (host, port)?

matkt (Sun, 15 Mar 2020 17:18:17 GMT):
https://besu.hyperledger.org/en/stable/HowTo/Find-and-Connect/Specifying-NAT/

ppoliani (Sun, 15 Mar 2020 17:20:15 GMT):
this is what it looks like ``` exec /opt/besu/bin/besu \ --genesis-file=/configs/genesis.json \ --node-private-key-file=/secrets/key \ --data-path=/var/besu/data \ --nat-method=MANUAL \ --p2p-host=${VALIDATOR1_SERVICE_HOST} \ --rpc-http-authentication-enabled \ --rpc-ws-authentication-enabled \ --rpc-http-authentication-credentials-file=/configs/creds.toml \ --rpc-ws-authentication-credentials-file=/configs/creds.toml \ --min-gas-price=0 \ --rpc-http-enabled \ --rpc-http-host=0.0.0.0 \ --rpc-http-port=8545 \ --rpc-http-cors-origins=${NODES_HTTP_CORS_ORIGINS} \ --rpc-http-api=ETH,NET,CLIQUE \ --graphql-http-enabled \ --graphql-http-host=0.0.0.0 \ --graphql-http-port=8547 \ --graphql-http-cors-origins=${NODES_HTTP_CORS_ORIGINS} \ --rpc-ws-enabled \ --rpc-ws-host=0.0.0.0 \ --rpc-ws-port=8546 \ --metrics-enabled=true \ --metrics-host=0.0.0.0 \ --metrics-port=9545 \ --host-whitelist=${NODES_HOST_WHITELIST} \ --bootnodes=enode://${VALIDATOR1_PUBKEY}@${VALIDATOR1_SERVICE_HOST}:30303 ```

ppoliani (Sun, 15 Mar 2020 17:20:58 GMT):
I also tried without the `p2p-host` but no luck

ppoliani (Sun, 15 Mar 2020 17:28:48 GMT):
I can see the following logs which suggest to me that the peer discovery is working

ppoliani (Sun, 15 Mar 2020 17:28:51 GMT):
``` 2020-03-15 17:27:59.510+00:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 2 peers currently connected. 2020-03-15 17:28:01.169+00:00 | vert.x-eventloop-thread-2 | TRACE | DiscoveryProtocolLogger | >>> Received FINDN packet from peer 0xb57b15ddd9810fcf6c9c42f1fa64a67e (enode://b57b15ddd9810fcf6c9c42f1fa64a67ebc57bceb5f106d693cecfb4719284a260e7e6eda1c90102eee3f2521bf0903d833bff0b05ef1f9c8b0e6ddcabf468a33@10.42.6.28:30303): Packet{type=FIND_NEIGHBORS, data=FindNeighborsPacketData{expiration=1584293341107, target=0xb4a8abc5253300238705ca6c909084e0a79ccb2f44ce2cb8607ede56d7cf57df7731602cfd409cfc57131f5a482a7c0821b849ac23f05918ba45ce73c4c722e0}, hash=0x5d1a986c84a15c9ca351f1bdc64440925fc0bb76c51c2f2e4ce31aedb26a07bd, signature=SECP256K1.Signature{r=53362686214299423291585764502792231700140798824720480175106775853788168364807, s=4651400382349154141455091724201233667030665560980751582585207011964105095776, recId=1}, publicKey=0xb57b15ddd9810fcf6c9c42f1fa64a67ebc57bceb5f106d693cecfb4719284a260e7e6eda1c90102eee3f2521bf0903d833bff0b05ef1f9c8b0e6ddcabf468a33} 2020-03-15 17:28:01.268+00:00 | vert.x-eventloop-thread-2 | TRACE | DiscoveryProtocolLogger | <<< Sending NEIGH packet to peer 0xb57b15ddd9810fcf6c9c42f1fa64a67e (enode://b57b15ddd9810fcf6c9c42f1fa64a67ebc57bceb5f106d693cecfb4719284a260e7e6eda1c90102eee3f2521bf0903d833bff0b05ef1f9c8b0e6ddcabf468a33@10.42.6.28:30303): Packet{type=NEIGHBORS, data=NeighborsPacketData{peers=[DiscoveryPeer{status=bonded, enode=enode://b57b15ddd9810fcf6c9c42f1fa64a67ebc57bceb5f106d693cecfb4719284a260e7e6eda1c90102eee3f2521bf0903d833bff0b05ef1f9c8b0e6ddcabf468a33@10.42.6.28:30303, firstDiscovered=1584293221511, lastContacted=1584293271367, lastSeen=1584293221511}, DiscoveryPeer{status=bonded, enode=enode://6a76f7579da0b96a8534e90937937c912568fe224d16c65526cc1c8c1d0db6f91caf4cf59819925b2f4d01ab178a1c6e362f033031c3ef934b8a83fcebee0650@10.42.7.29:30303, firstDiscovered=1584293228838, lastContacted=1584293271371, lastSeen=1584293228838}], expiration=1584293341170}, hash=0x1b4b4b5c976ab62d53d8ff72a2e6d151b8e72232255a236a3aa11843892c7067, signature=SECP256K1.Signature{r=46873011859848028865975502793936149198358571352598058666595943976201208434298, s=43294861171771830860063491015870083808724090700784275635578563003600094829114, recId=0}, publicKey=0xff7af01ea0ab5289cdd3930d09cb2c87d7a9e884f2180f1ba26590d42e651463c3d1db31f7d034cad159e0076c8f2eedd6c2b2311fd8ca02219f5d60748aad93} 2020-03-15 17:28:02.214+00:00 | nioEventLoopGroup-3-1 | DEBUG | WireKeepAlive | Idle connection detected, sending Wire PING to peer. 2020-03-15 17:28:02.214+00:00 | nioEventLoopGroup-3-1 | TRACE | AbstractPeerConnection | Writing PingMessage{data=''} to PeerInfo{version=5, clientId='besu/v1.4.1/linux-x86_64/oracle_openjdk-java-11', capabilities=[eth/62, eth/63, eth/64], port=30303, nodeId=0xb57b15ddd9810fcf6c9c42f1fa64a67ebc57bceb5f106d693cecfb4719284a260e7e6eda1c90102eee3f2521bf0903d833bff0b05ef1f9c8b0e6ddcabf468a33} via protocol null 2020-03-15 17:28:02.216+00:00 | nioEventLoopGroup-3-1 | DEBUG | ApiHandler | Received Wire PING 2020-03-15 17:28:02.216+00:00 | nioEventLoopGroup-3-1 | TRACE | AbstractPeerConnection | Writing org.hyperledger.besu.ethereum.p2p.rlpx.wire.messages.PongMessage@2f21cd5a to PeerInfo{version=5, clientId='besu/v1.4.1/linux-x86_64/oracle_openjdk-java-11', capabilities=[eth/62, eth/63, eth/64], port=30303, nodeId=0xb57b15ddd9810fcf6c9c42f1fa64a67ebc57bceb5f106d693cecfb4719284a260e7e6eda1c90102eee3f2521bf0903d833bff0b05ef1f9c8b0e6ddcabf468a33} via protocol null 2020-03-15 17:28:02.218+00:00 | nioEventLoopGroup-3-1 | DEBUG | ApiHandler | Received Wire PONG 2020-03-15 17:28:04.511+00:00 | EthScheduler-Timer-0 | DEBUG | FullSyncTargetManager | Caught up to best peer: 1 2020-03-15 17:28:04.511+00:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 2 peers currently connected. ```

ppoliani (Sun, 15 Mar 2020 18:01:32 GMT):
ok it was my bad. I had more initial signers in the `extraData` within the genesis file than the validators I was running

matkt (Sun, 15 Mar 2020 18:03:30 GMT):
Cool good news 👍

ppoliani (Sun, 15 Mar 2020 18:04:32 GMT):
thanks for the help :)

arash009 (Sun, 15 Mar 2020 23:20:04 GMT):
Hi @NikosFotiadis We dont think there is anything that drops the connection after inactivity, so probably needs some further investigation. Can you provide some more details? How long does the connection stay before being dropped out? Are you connecting directly to the Besu node or through a firewall/reverse proxy connection? And what version of the products are you using?

arash009 (Sun, 15 Mar 2020 23:23:52 GMT):
Also note that we have multi-tenancy support for Orion now. So you can run a single instance of Orion/Besu for multiple users - if that is a consideration.

timbeiko (Mon, 16 Mar 2020 15:25:53 GMT):
:tada: Hyperledger Besu 1.4.1 is out today :tada: We’ve added more parity-style tracing (trace_transaction), the ability to add/remove people from privacy groups and other privacy, pruning, ETC and devp2p improvements Get it at https://github.com/hyperledger/besu/releases/1.4.1 :besu:

tezansahu (Mon, 16 Mar 2020 15:54:04 GMT):
Has joined the channel.

tezansahu (Mon, 16 Mar 2020 16:21:47 GMT):
Hi! I am new to the Besu community

tezansahu (Mon, 16 Mar 2020 16:22:34 GMT):
I was going through the documentation, & would like to know if one could have a private transaction from a user to a contract. If so, how? If no, any alternatives?

lucassaldanha (Mon, 16 Mar 2020 21:38:04 GMT):
Hi! You can deploy a contract in a privacy group and interact with it through a node that is a participant in the privacy group.

shemnon (Tue, 17 Mar 2020 00:05:38 GMT):
Reminder, Besu Contributor call is in 15 hours from now, not 1 hour from now.

madelinemurray (Tue, 17 Mar 2020 00:54:11 GMT):
Thanks @shemnon - I must need to update my invite

tezansahu (Tue, 17 Mar 2020 02:45:18 GMT):
Thanks

tezansahu (Tue, 17 Mar 2020 14:58:03 GMT):
I was able to start a Besu Network on Kubernetes following this: https://github.com/PegaSysEng/besu-kubernetes/tree/master/kubectl/ibft2-with-privacy But since this network is on a VPS with ssh access only & the services for Prometheus/Grafana are declared to be of type ClusterIP (& not NodePort), I am unable to monitor the blockchain. Could someone help me out with this issue?

faraggi (Tue, 17 Mar 2020 15:03:58 GMT):
Contributor call starting now: https://consensys.zoom.us/j/199741148

Bobur (Wed, 18 Mar 2020 07:13:26 GMT):
Hi guys! Thank you all for answers and efforts to improve HLB I have a few questions regarding Besu. 1. When Node1 deploys a contract with "privateFor=Node2 orion public key" field, is the transaction stored in Node3 rocksdb database as well? 2. How can i see rocksdb .sst files contents? I tried sst_dump tool and keylord gui but it is not showing the result that I wanted Thank u in advance

rranjan3 (Wed, 18 Mar 2020 08:28:20 GMT):
Not able to get events using web3py - ``` w3 = Web3(HTTPProvider('http://localhost:23011')) print("Connection established : ", w3.isConnected()) contractDetails = json.load(open("build/contracts/Contract.json")) contract = w3.eth.contract(address = contract_address, abi = contractDetails.get('abi')) evt_filter = contract.events.MyEvent.createFilter(fromBlock='latest') #-- latest for my event print(evt_filter) print("Filter created") while True : evnts = evt_filter.get_new_entries() if len(evnts) > 0: print(evnts) ``` A Ganache node works perfect wit the same. So probably I can't suspect the web3 wrappers

rranjan3 (Wed, 18 Mar 2020 08:28:20 GMT):
Not able to get events using web3py - ``` w3 = Web3(HTTPProvider('http://localhost:23011')) print("Connection established : ", w3.isConnected()) contractDetails = json.load(open("build/contracts/Contract.json")) contract = w3.eth.contract(address = contract_address, abi = contractDetails.get('abi')) evt_filter = contract.events.MyEvent.createFilter(fromBlock='latest') #-- latest for my event print(evt_filter) print("Filter created") while True : evnts = evt_filter.get_new_entries() if len(evnts) > 0: print(evnts) ``` A Ganache node works perfect with the same. So probably I can't suspect the web3 wrappers. What could be wrong?

lucassaldanha (Wed, 18 Mar 2020 08:48:45 GMT):
Hi @Bobur a private transaction is only shared between participants of the transaction. In your example, node3 won't have the private transaction. About exploring RocksDB data. You might try something like this (https://github.com/facebook/rocksdb/wiki/Administration-and-Data-Access-Tool)

lucassaldanha (Wed, 18 Mar 2020 08:49:50 GMT):
Hi @rranjan3 could you specify the version of Besu and web3py that you are running on? Do you get any error msgs on anything like that?

Bobur (Wed, 18 Mar 2020 08:53:59 GMT):

rocksDB.png

Bobur (Wed, 18 Mar 2020 08:54:04 GMT):
@lucassaldanha Thank you for ur answer. Yeah I used sst_dump tool which u mentioned but it is not giving me transaction payload etc.

Bobur (Wed, 18 Mar 2020 08:54:56 GMT):
I used ```sst_dump --file=/opt/besu/database/000031.sst --command=scan --output_hex ```

Bobur (Wed, 18 Mar 2020 08:56:40 GMT):
``` root@183e49c769d6:/opt/besu/database# sst_dump --file=/opt/besu/database/000031.sst --command=scan --output_hex --read_num=1 from [] to [] Process /opt/besu/database/000031.sst Sst file format: block-based '00031DDF399D40D80987A4578D2C8DC6E7FAC97D0A2D6E52EC44B9CB0C1C92645047484541444D4150' seq:6698, type:1 => F844F842A0E417245AEED1507230245D41C2FD2A7D5BD037CD027F26C2511C45AE2427B261A0BBC92134BBCA498E06F77E4AA144D66B4F43A4F8E326808CC067D784647FA4AD root@183e49c769d6:/opt/besu/database# ```

rranjan3 (Wed, 18 Mar 2020 08:57:45 GMT):
web3py is @ 5.7.0 and Besu @ 1.4.0

rranjan3 (Wed, 18 Mar 2020 09:00:53 GMT):
I do not see any errors but another thing I verified is that get_all_events or the JRPC counterpart eth_getFilterLogs works on the same filter.

rranjan3 (Wed, 18 Mar 2020 09:13:27 GMT):
@lucassaldanha I also tried out the RPC calls directly from curl. Similar behaviour. SO it can probably be something with the ``eth_getFilterChanges`` method call.

rranjan3 (Wed, 18 Mar 2020 09:13:27 GMT):
@lucassaldanha I also tried out the RPC calls directly from curl. Similar behavior. SO it can probably be something with the `eth_getFilterChanges` method call.

rranjan3 (Wed, 18 Mar 2020 09:24:45 GMT):
https://github.com/hyperledger/besu/issues/473 . Should I try out something prior to 1.4?

dbdagr8 (Wed, 18 Mar 2020 10:25:23 GMT):
Has joined the channel.

dbdagr8 (Wed, 18 Mar 2020 10:25:25 GMT):
Hi everyone, Can somebody tell me, how to invoke smart contract functions without metamask plugin. I was following https://besu.hyperledger.org/en/stable/HowTo/Develop-Dapps/Use-web3js/

dbdagr8 (Wed, 18 Mar 2020 10:25:25 GMT):
Hi everyone, Can somebody tell me, how to invoke smart contract functions without metamask plugin. I was following https://besu.hyperledger.org/en/stable/HowTo/Develop-Dapps/Use-web3js/ But getting Invalid params as a response. ``` { StatusCodeError: 400 - {"jsonrpc":"2.0","id":1,"error":{"code":-32602,"message":"Invalid params"}} at new StatusCodeError (/home/ubuntu/performance/node_modules/request-promise-core/lib/errors.js:32:15) at Request.plumbing.callback (/home/ubuntu/performance/node_modules/request-promise-core/lib/plumbing.js:104:33) at Request.RP$callback [as _callback] (/home/ubuntu/performance/node_modules/request-promise-core/lib/plumbing.js:46:31) at Request.self.callback (/home/ubuntu/performance/node_modules/request/request.js:185:22) at Request.emit (events.js:198:13) at Request. (/home/ubuntu/performance/node_modules/request/request.js:1154:10) at Request.emit (events.js:198:13) at IncomingMessage. (/home/ubuntu/performance/node_modules/request/request.js:1076:12) at Object.onceWrapper (events.js:286:20) at IncomingMessage.emit (events.js:203:15) at endReadableNT (_stream_readable.js:1145:12) at process._tickCallback (internal/process/next_tick.js:63:19) name: 'StatusCodeError', statusCode: 400, message: '400 - {"jsonrpc":"2.0","id":1,"error":{"code":-32602,"message":"Invalid params"}}', ```

shemnon (Wed, 18 Mar 2020 14:46:03 GMT):
Besu didn't like the set of parameters you sent in for a specific RPC call. What was the RPC call you were executing when this error occured? i.e. what web3js api were you calling? That is not present in stack trace you posted.

ppoliani (Wed, 18 Mar 2020 16:55:10 GMT):
A quick question; can I start the a CLIQUE network without the Orion nodes and then at some point in the future make it a permissioned network?

faraggi (Wed, 18 Mar 2020 17:55:56 GMT):
Just some clarification first: are you looking to implement permissioning or privacy in the future? Orion = Privacy, and prefers having IBFT2, not clique Permissioning needs a specific genesis file from the get-go

ppoliani (Wed, 18 Mar 2020 18:13:00 GMT):
sorry @faraggi my bad. I meant the privacy feature

faraggi (Wed, 18 Mar 2020 18:54:24 GMT):
In that case, although privacy-enabled networks can use CLIQUE, transaction finality is preferred. Check the 'important' highlight here: https://besu.hyperledger.org/en/stable/Concepts/Privacy/Privacy-Overview/ To answer your question; yes, you can spin up the network with the corresponding config and then spin up the orion nodes themselves.

ppoliani (Wed, 18 Mar 2020 18:55:01 GMT):
cheers mate; good to know

faraggi (Wed, 18 Mar 2020 20:30:28 GMT):
Update with more details. Scenario 1: if you have privacy enabled without orion/with orion but it's down the node will try and process the incoming private transaction and will fail to do so and get stuck until orion is back up. Scenario 2: if you start a node without privacy but process a transaction that happens to be a private marker the node will do nothing interesting.

ftgha (Wed, 18 Mar 2020 21:01:50 GMT):
Has joined the channel.

ftgha (Wed, 18 Mar 2020 21:01:52 GMT):
Hey, trying to run besu on a s390x and I'm getting an error that rocksdb cannot load the native lib. Do I need to install the c++ lib or should that just work out of the box?

ftgha (Wed, 18 Mar 2020 21:02:47 GMT):
Or rather, where should I put the native lib so it can be found?

ftgha (Wed, 18 Mar 2020 21:02:47 GMT):
Or rather, where should I put the native lib/or my compiled jar so it can be found? Sorry, I don't know much about Java `Caused by: java.lang.RuntimeException: librocksdbjni-linuxs390x.so was not found inside JAR.`

e-nikolov (Thu, 19 Mar 2020 03:02:35 GMT):
Is besu's fast sync comparable to geth and parity's? Does it validate all transactions and can it be considered a full node?

RealDeanZhao (Thu, 19 Mar 2020 03:02:53 GMT):
Hi, must the private transaction send by the orion node? Is it possible for a person to send a private transaction?

ajsutton (Thu, 19 Mar 2020 03:06:43 GMT):
Besu's fast sync is the same as Geth's (parity only supports warp sync which has a similar result but different approach to syncing). Fast sync does not process transactions prior to the "pivot block" (the block which the world state is downloaded for). The historical block and transaction receipt data is however downloaded so when fast sync completes you have a full node. World state prior to the pivot block is not available so it is not an archive node.

e-nikolov (Thu, 19 Mar 2020 03:09:07 GMT):
Can the data up to the pivot block be trusted then?

e-nikolov (Thu, 19 Mar 2020 03:09:29 GMT):
As in can we be sure that nobody tampered with it?

e-nikolov (Thu, 19 Mar 2020 03:09:37 GMT):
Are the hashes verified?

ajsutton (Thu, 19 Mar 2020 03:21:22 GMT):
It depends what you mean by "trusted". For example, even if you did a full sync and processed every transaction, it's possible to be the victim of an eclipse attack where your peers feed you valid blocks which are not actually the canonical chain. You can spot that easily if you verify the final block hash you reach with some other source to confirm you have reached consensus. With fast sync, the chain of block hashes are fully verified which includes the hash of the state root. It also includes the transaction hashes. It does not check the proof of work solution for every block (to speed up importing it only checks a random sample of blocks) and it does not process transactions so can't verify that the new world state is the correct result from applying the transactions in the block. You can however trust that the world state you downloaded is the correct state for the block because the state root hash matches. You know that the ancestor blocks (and the transactions they contain) of the pivot block are correct because each block includes the hash of the parent. But, just as with full sync, you can't know for sure that the block hash of the pivot block is correct. Besu will confirm that multiple peers agree with that same block hash but it's impossible to fully prevent eclipse attacks. Bottom line, however you sync, if you verify the pivot block hash with other sources you trust then you can be 100% confident that the entire chain and world state is correct.

e-nikolov (Thu, 19 Mar 2020 03:23:38 GMT):
Thanks for the write up

shemnon (Thu, 19 Mar 2020 03:48:02 GMT):
I don't think we can support s390x, the rocksdb jni lib doesn't have Z series support, only Linux 32/64 (intel/amd), linux aarch64 (arm) linux ppc64le (power8), windows (intel), and mac (intel). We use the library as-is and that is all the native libs it comes with.

dbdagr8 (Thu, 19 Mar 2020 05:16:38 GMT):
i mentioned the link of what i am trying

shemnon (Thu, 19 Mar 2020 05:18:02 GMT):
But which part of the tutorial?

dbdagr8 (Thu, 19 Mar 2020 05:19:13 GMT):
create_contract_raw_transaction.js

shemnon (Thu, 19 Mar 2020 05:23:30 GMT):
There are more log messages in that sample code. Plus, are you running this in a browser or in a command line app?

shemnon (Thu, 19 Mar 2020 05:23:41 GMT):
Can you provide the whole log output?

dbdagr8 (Thu, 19 Mar 2020 05:32:06 GMT):
``` ```

dbdagr8 (Thu, 19 Mar 2020 05:32:06 GMT):
``` import factory from './ethereum/factory'; import Campaign from './ethereum/campaign'; import contracts from './ethereum/build/contracts.json'; import ethTx from 'ethereumjs-tx'; import request from 'request-promise' //const ethTx = require('ethereumjs-tx').Transaction; import Web3 from 'web3'; async function main(){ console.log("in async") const campaigns = await factory.methods.getDeployedCompaigns().call(); const campaign = Campaign(campaigns[0]); const provider = new Web3.providers.HttpProvider( 'http://13.232.153.85:8545' ); var web3 = new Web3(provider); var factory1 = contracts["Compaign.sol"].CompaignFactory.evm.bytecode.object; var contractData = await campaign.methods.count().encodeABI(); console.log(contractData); var addressFrom = '0x627306090abaB3A6e1400e9345bC60c78a8BEf57'; web3.eth.defaultAccount = addressFrom; //var account1 = await web3.eth.getAccounts() //console.log('Account for Transaction: '+ account1); var privKey = Buffer.from('c87509a1c067bbde78beb793e6fa76530b6382a4c0241e5e4a9ec0a0f44dc0d3', 'hex'); console.log('Private key: ' + privKey); await web3.eth.getTransactionCount(addressFrom, "pending").then((txnCount) => { // Create the contract creation transaction object var txObject = { nonce: web3.utils.toHex(txnCount), gasPrice: web3.utils.toHex(0), gasLimit: web3.utils.toHex(126165), data: contractData }; /* var tx = new ethTx.Transaction(txObject); //tx.sign(privKey) tx.sign(Buffer.from(privKey, 'hex')) //web3.eth.accounts.signTransaction(tx,privKey); var serializedTx = tx.serialize(); var rawTxHex = '0x' + serializedTx.toString('hex'); console.log("Raw transaction data: " + rawTxHex); */ // const transaction = web3.eth.sendSignedTransaction(rawTxHex, (err, tx) => { // console.log(tx) // }); var rawTxHex = web3.eth.accounts.signTransaction({ to: 0x8CdaF0CD259887258Bc13a92C0a6dA92698644C0, from: addressFrom, value: '0', data: contractData, gasPrice: web3.utils.toWei('0', 'gwei'), gas: Math.round((campaign.methods.count().estimateGas({ addressFrom })) * 1.5), nonce: web3.eth.getTransactionCount(addressFrom, 'pending') },privKey) console.log("before send transaction"); web3.eth.sendSignedTransaction(rawTxHex.rawTransaction) .on('receipt', receipt => { console.log('Receipt: ', receipt); }) .catch(error => { console.log('Error: ', error.message); }); console.log("******************************************"); console.log("Value transaction sent, waiting for receipt."); console.log("******************************************"); // curl -X POST --data '{\"jsonrpc\":\"2.0\",\"method\":\"eth_sendRawTransaction\",\"params\":[\"" + rawTxHex + "\"],\"id\":1}' http://localhost:8545 /* const options = { method: 'POST', uri: 'http://localhost:8545', body: { jsonrpc:2.0,method:'eth_sendRawTransaction',params:[" + rawTxHex + "],id:1 }, json: true // JSON stringifies the body automatically } request(options) .then(function (response) { // Handle success response data console.log(response) }) .catch(function (err) { // Handle err response console.log(err) }) */ // web3.eth.sendSignedTransaction(rawTxHex).on('receipt', function(receipt){ // console.log(['transferToStaging Receipt:', receipt]); // }).on('error', console.error); // for (let index = 0; index < 1000; index++) { // } }) } main() .then(console.log) .catch(console.error) ```

dbdagr8 (Thu, 19 Mar 2020 05:35:33 GMT):
Output: ``` in async 0x06661abd Private key: �u ��g��x�����vS c���$^J����M�� before send transaction ****************************************** Value transaction sent, waiting for receipt. ****************************************** undefined (node:5929) UnhandledPromiseRejectionWarning: Error: Returned error: Invalid params at Object.ErrorResponse (/home/ubuntu/performance/node_modules/web3-core-helpers/src/errors.js:29:16) at /home/ubuntu/performance/node_modules/web3-core-requestmanager/src/index.js:140:36 at XMLHttpRequest.request.onreadystatechange (/home/ubuntu/performance/node_modules/web3-providers-http/src/index.js:110:13) at XMLHttpRequestEventTarget.dispatchEvent (/home/ubuntu/performance/node_modules/xhr2-cookies/dist/xml-http-request-event-target.js:34:22) at XMLHttpRequest._setReadyState (/home/ubuntu/performance/node_modules/xhr2-cookies/dist/xml-http-request.js:208:14) at XMLHttpRequest._onHttpResponseEnd (/home/ubuntu/performance/node_modules/xhr2-cookies/dist/xml-http-request.js:318:14) at IncomingMessage. (/home/ubuntu/performance/node_modules/xhr2-cookies/dist/xml-http-request.js:289:61) at IncomingMessage.emit (events.js:203:15) at endReadableNT (_stream_readable.js:1145:12) at process._tickCallback (internal/process/next_tick.js:63:19) (node:5929) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1) (node:5929) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code. (node:5929) UnhandledPromiseRejectionWarning: Error: "gas" is missing at signed (/home/ubuntu/performance/node_modules/web3-eth-accounts/src/index.js:158:21) at /home/ubuntu/performance/node_modules/web3-eth-accounts/src/index.js:271:16 at process._tickCallback (internal/process/next_tick.js:68:7) (node:5929) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 3) Error: Returned error: Invalid params ```

shemnon (Thu, 19 Mar 2020 05:40:21 GMT):
That is a significant departure from the tutorial. This appears to be an issue in how web3.js is being used rather than an issue with besu.

shemnon (Thu, 19 Mar 2020 05:41:03 GMT):
I'm not a web3.js expert, but it looks like you are not hex encoding the transaciton and are trying to send the java script object.

shemnon (Thu, 19 Mar 2020 05:41:13 GMT):
The call to tx.serialize(); is commented out (and out of order)

coenie (Thu, 19 Mar 2020 09:46:15 GMT):
Hi, I'm doing some performance benchmarks on Besu + ethsigner and I would like to run some thoughts by you. Have you run any performance tests on Besu?

ftgha (Thu, 19 Mar 2020 11:16:28 GMT):
Thanks for the reply

ftgha (Thu, 19 Mar 2020 11:16:30 GMT):
I was able to compile the rocksdb jar on there manually. Could I somehow link that instead of using the pre-built one from maven?

gokulalex (Fri, 20 Mar 2020 05:28:04 GMT):
Has joined the channel.

coenie (Fri, 20 Mar 2020 12:09:38 GMT):
^^ Any JVM tweaks I should look out for?

RealDeanZhao (Fri, 20 Mar 2020 13:37:00 GMT):
```function executeCall (address to, uint256 value, bytes data) internal returns (bool success) { assembly { success: = call (gas, to, value, add (data, 0x20), mload (data), 0, 0) } }``` I sent a transaction using Uport IdentityManager.sol, but the transaction failed. Anyone can help me with this?

RealDeanZhao (Fri, 20 Mar 2020 13:37:00 GMT):
```function executeCall (address to, uint256 value, bytes data) internal returns (bool success) { assembly { success: = call (gas, to, value, add (data, 0x20), mload (data), 0, 0) } }``` I sent a transaction to forwardTo method of IdentityManager.sol(uport identity), the transaction failed. Anyone can help me with this?

RealDeanZhao (Fri, 20 Mar 2020 13:37:00 GMT):
```function executeCall (address to, uint256 value, bytes data) internal returns (bool success) { assembly { success: = call (gas, to, value, add (data, 0x20), mload (data), 0, 0) } }``` I sent a transaction to forwardTo method of IdentityManager.sol(uport identity), the transaction failed(status is 0x00, don't know how to get the exact error message). Anyone can help me with this?

RealDeanZhao (Fri, 20 Mar 2020 13:38:10 GMT):
The besu version is 1.3.7

julez (Fri, 20 Mar 2020 13:49:19 GMT):
Has joined the channel.

julez (Fri, 20 Mar 2020 13:49:21 GMT):
Good day, I'm trying to install Besu und Windows. I always get the following error after running the "gradlew build" command: A problem occurred evaluating root project 'besu'. > Java 11 or later is required to build Besu. Detected version 1.8 I have the latest Java / JDK versions running. What am I missing?

madelinemurray (Fri, 20 Mar 2020 23:31:56 GMT):
What does `java -version` give you? Is it possible you have an older version installed and that's what Besu is trying to use?

shemnon (Sat, 21 Mar 2020 01:08:48 GMT):
IIRC if it's in your path or libpath it should load.

shemnon (Sat, 21 Mar 2020 01:15:33 GMT):
There are also two ways, setting `BESU_OPTS=-Djava.library.path=` or adding the library path to `LD_LIBRARY_PATH` (I'm assuming you are running linux from the error)

RealDeanZhao (Sat, 21 Mar 2020 04:12:41 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=S3KZpA4kKjugbvMzp) Hi anyone can help me with this?

RealDeanZhao (Sat, 21 Mar 2020 04:12:41 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=S3KZpA4kKjugbvMzp) Hi anyone can help me with this? It works fine using truffle test with ganache.

marlow (Sat, 21 Mar 2020 14:38:35 GMT):
Hi guys. I'm running a privacy network for quite some while now, works great most of the time. Sometimes I do get this error though: `PrivacyPrecompiledContract | Failed to process private transaction 0xfcs8f3425d3da6a12e0a1a3c7ffff62608ed3c372b8dae2adaffaca899f6ea0b: Private Transaction nonce 44, is lower than sender account nonce 45`. I'm trying to debug the cause of this behavior, any suggestions where to look?

marlow (Sat, 21 Mar 2020 14:38:35 GMT):
Hi guys. I'm running a privacy network for quite some while now, works great most of the time. Sometimes I do get this error though: `PrivacyPrecompiledContract | Failed to process private transaction 0xfcs8f3425d3da6a12e0a1a3c7ffff62608ed3c372b8dae2adaffaca899f6ea0b: Private Transaction nonce 44, is lower than sender account nonce 45`. I'm trying to debug the cause of this behavior, any suggestions where to look? I have not yet found any behavior or action pattern that could trigger this

marlow (Sat, 21 Mar 2020 14:38:35 GMT):
Hi guys. I'm running a privacy network for quite some while now, works great most of the time. Sometimes I do get this error though: `PrivacyPrecompiledContract | Failed to process private transaction 0xfcs8f3425d3da6a12e0a1a3c7ffff62608ed3c372b8dae2adaffaca899f6ea0b: Private Transaction nonce 44, is lower than sender account nonce 45`. I'm trying to debug the cause of this behavior, any suggestions where to look? I have not yet found any action pattern that could trigger this, as it seems to happen at random times

marlow (Sat, 21 Mar 2020 14:38:35 GMT):
Hi guys. I'm running a privacy network for quite some while now, works great most of the time. Sometimes I do get this error though: `PrivacyPrecompiledContract | Failed to process private transaction 0xfcs8f3425d3da6a12e0a1a3c7ffff62608ed3c372b8dae2adaffaca899f6ea0b: Private Transaction nonce 44, is lower than sender account nonce 45`. I'm trying to debug the cause of this behavior, any suggestions where to look? I have not yet found any action pattern that could trigger this, as it seems to happen at random sometimes

madelinemurray (Sun, 22 Mar 2020 00:55:08 GMT):
Are you using EthSigner? If so, which version? And IBFT 2.0? We've got a couple of known issues we're curently looking at that might be related: https://github.com/hyperledger/besu/issues/514 https://github.com/hyperledger/besu/issues/501 Can you get the private transaction receipt for the private transaction?

joshuafernandes (Sun, 22 Mar 2020 10:12:24 GMT):
Hello @tezansahu , few options available depending on your network and what polices are allowed : - change them to be nodeport's and then access them via a broweser or an ssh tunnel - deploy an ingress controller & corresponding rules and then access it via browser if possible or via an ssh tunnel. We've got an example setup here https://github.com/PegaSysEng/besu-kubernetes/tree/master/helm/ingress

joshuafernandes (Sun, 22 Mar 2020 10:12:24 GMT):
Hello @tezansahu , few options available depending on your network and what polices are allowed : - change them to be nodeport's and then access them via a broweser or an ssh tunnel - deploy an ingress controller & corresponding rules and then access it via browser if possible or via an ssh tunnel. We've got an example setup here https://github.com/PegaSysEng/besu-kubernetes/tree/master/helm/ingress The setups in the besu-kubernetes repo are examples only, and intended for users to modify and use to suit their requirements

marlow (Sun, 22 Mar 2020 12:37:02 GMT):
@madelinemurray Using IBFT2.0, not using EthSigner at the moment, but we intend to use it eventually yes. https://github.com/hyperledger/besu/issues/514 looks exactly like it! Good to know there is already an issue for it. I'll keep an eye on this one

ppoliani (Sun, 22 Mar 2020 17:10:21 GMT):
hi guys, I was trying a script that sends 1000 txs in a concurrent way. I checked the logs and I realized that there are some issues with the RPC api

ppoliani (Sun, 22 Mar 2020 17:10:48 GMT):
more specifically, occasionally I see the following errors ``` 2020-03-22 16:41:50.904+00:00 | vert.x-eventloop-thread-2 | ERROR | ContextImpl | Unhandled exception java.lang.IllegalStateException: Response is closed at io.vertx.core.http.impl.HttpServerResponseImpl.checkValid(HttpServerResponseImpl.java:617) ~[vertx-core-3.8.0.jar:3.8.0] at io.vertx.core.http.impl.HttpServerResponseImpl.putHeader(HttpServerResponseImpl.java:157) ~[vertx-core-3.8.0.jar:3.8.0] at io.vertx.core.http.impl.HttpServerResponseImpl.putHeader(HttpServerResponseImpl.java:54) ~[vertx-core-3.8.0.jar:3.8.0] at org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService.lambda$handleJsonSingleRequest$7(JsonRpcHttpService.java:387) ~[besu-api-1.3.8.jar:1.3.8] at io.vertx.core.impl.ContextImpl.lambda$null$0(ContextImpl.java:330) ~[vertx-core-3.8.0.jar:3.8.0] at io.vertx.core.impl.ContextImpl.executeTask(ContextImpl.java:369) ~[vertx-core-3.8.0.jar:3.8.0] at io.vertx.core.impl.EventLoopContext.lambda$executeAsync$0(EventLoopContext.java:38) ~[vertx-core-3.8.0.jar:3.8.0] at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163) [netty-common-4.1.34.Final.jar:4.1.34.Final] at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:404) [netty-common-4.1.34.Final.jar:4.1.34.Final] at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:495) [netty-transport-4.1.34.Final.jar:4.1.34.Final] at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:905) [netty-common-4.1.34.Final.jar:4.1.34.Final] at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) [netty-common-4.1.34.Final.jar:4.1.34.Final] at java.lang.Thread.run(Thread.java:834) [?:?] ```

ppoliani (Sun, 22 Mar 2020 17:11:14 GMT):
Is there any particular reason why I see this error?

madelinemurray (Sun, 22 Mar 2020 20:18:26 GMT):
hi @tezansahu - there's two ways to solve this - either convert the services declared to be node port if that satisfies company polices etc, or preferably deploy the ingress controller as well that ties which has grafana rules already setup. Details here - https://github.com/PegaSysEng/besu-kubernetes/tree/master/helm/ingress

madelinemurray (Sun, 22 Mar 2020 20:24:18 GMT):
The Besu privacy implementation uses off-chain privacy so only the participants in the transaction receive the private transaction. Orion is the private transaction manager so a Orion node is required for each Besu node participating in private transations. This blog post explains a bit more about how it works - https://pegasys.tech/privacy-in-hyperledger-besu-how-it-works-and-why-your-enterprise-should-care/

madelinemurray (Sun, 22 Mar 2020 20:42:56 GMT):
hi @coenie - depending on infrastruture and network topology, we've seen up to 400 TPS supported by Besu. There are also some detailed benchmarks being worked on and that information will be released as soon as we have it. Would love to have you run your thoughts by us.

coenie (Sun, 22 Mar 2020 20:44:28 GMT):
okay awesome, looking forward to that! Do you know if that was 400 TPS for EIP20 transfers, or something else?

madelinemurray (Sun, 22 Mar 2020 20:48:27 GMT):
It was ether transfers on an IBFT network.

coenie (Sun, 22 Mar 2020 20:49:49 GMT):
okay thanks, I'll be on the lookout for those benchmarks!

madelinemurray (Sun, 22 Mar 2020 23:27:47 GMT):
@pinges

shemnon (Mon, 23 Mar 2020 02:32:46 GMT):
this is something seen under some test frameworks, where the client connection closes before a response can be committed. This can be ignored. I think we can stop sending it but it's not highest priority right now.

shemnon (Mon, 23 Mar 2020 02:33:19 GMT):
We've _just_moved off of Jira. Can you open a GitHub issue for us so we can put it in the backlog? https://github.com/hyperledger/besu/issues

ppoliani (Mon, 23 Mar 2020 07:52:06 GMT):
thank @shemnon

ppoliani (Mon, 23 Mar 2020 07:52:11 GMT):
I did open an issue on GH

julez (Mon, 23 Mar 2020 08:29:06 GMT):
Thanks for your answer. This is the output of `java -version`: java version "1.8.0_241" Java(TM) SE Runtime Environment (build 1.8.0_241-b07) Java HotSpot(TM) Client VM (build 25.241-b07, mixed mode, sharing) I have Java 8 installed, the latest version. But Besu asks for Java 11. I guess they mean JDK, not Java. But I have JDK 13 installed as well.

julez (Mon, 23 Mar 2020 09:08:42 GMT):
fixed it, I had to manually overwrite the JAVA_HOME variable to the path where JDK is installed. But now I am running into the next error after using `gradlew build`: `java.lang.NoClassDefFoundError: Could not initialize class org.codehaus.groovy.vmplugin.v7.Java7` It seems to be a known issue, but I haven't found a way around it yet.

julez (Mon, 23 Mar 2020 09:08:42 GMT):
after updatin Gradle to version 6.3-rc-4 and running `gradle build' I get the following error: `> Task :checkSpdxHeader FAILED FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':checkSpdxHeader'. > Files without headers: C:\Users\bauerj1\Desktop\besu\besu\ethereum\core\src\test\java\org\hyperledger\besu\ethereum\vm\blockchain\BlockchainReferenceTest_0.java C:\Users\bauerj1\Desktop\besu\besu\ethereum\core\src\test\java\org\hyperledger\besu\ethereum\vm\blockchain\BlockchainReferenceTest_1.java ... * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights. * Get more help at https://help.gradle.org Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0. Use '--warning-mode all' to show the individual deprecation warnings. See https://docs.gradle.org/6.3-rc-4/userguide/command_line_interface.html#sec:command_line_warnings BUILD FAILED in 26s 70 actionable tasks: 4 executed, 66 up-to-date`

julez (Mon, 23 Mar 2020 09:08:42 GMT):
After updating Gradle to version 6.3-rc-4 and running `gradle build` I get the following error: `> Task :checkSpdxHeader FAILED FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':checkSpdxHeader'. > Files without headers: C:\Users\bauerj1\Desktop\besu\besu\ethereum\core\src\test\java\org\hyperledger\besu\ethereum\vm\blockchain\BlockchainReferenceTest_0.java C:\Users\bauerj1\Desktop\besu\besu\ethereum\core\src\test\java\org\hyperledger\besu\ethereum\vm\blockchain\BlockchainReferenceTest_1.java ... * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights. * Get more help at https://help.gradle.org Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0. Use '--warning-mode all' to show the individual deprecation warnings. See https://docs.gradle.org/6.3-rc-4/userguide/command_line_interface.html#sec:command_line_warnings BUILD FAILED in 26s 70 actionable tasks: 4 executed, 66 up-to-date`

julez (Mon, 23 Mar 2020 09:08:42 GMT):
After updating Gradle to version 6.3-rc-4 and running `gradle build` I get the following error: `> Task :checkSpdxHeader FAILED FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':checkSpdxHeader'. > Files without headers: C:\Users\bauerj1\Desktop\besu\besu\ethereum\core\src\test\java\org\hyperledger\besu\ethereum\vm\blockchain\BlockchainReferenceTest_0.java C:\Users\bauerj1\Desktop\besu\besu\ethereum\core\src\test\java\org\hyperledger\besu\ethereum\vm\blockchain\BlockchainReferenceTest_1.java ... * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights. * Get more help at https://help.gradle.org Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0. Use '--warning-mode all' to show the individual deprecation warnings. See https://docs.gradle.org/6.3-rc-4/userguide/command_line_interface.html#sec:command_line_warnings BUILD FAILED in 26s 70 actionable tasks: 4 executed, 66 up-to-date`

julez (Mon, 23 Mar 2020 09:10:38 GMT):
Or I get this error: `Could not initialize class org.codehaus.groovy.runtime.InvokerHelper`

shemnon (Mon, 23 Mar 2020 14:54:46 GMT):
run `build clean` first

faraggi (Mon, 23 Mar 2020 16:00:34 GMT):
Hell everyone, We've been talking to the team behind Ethereum on ARM / ethraspbian (https://github.com/diglos/userpatches) in order to have it support Besu. https://twitter.com/EthereumOnARM/status/1242002111396745216 Does any one have any experience and/or feedback on this. We know 32bits and RAM to be major bottle necks to this project. What else should we be considering?

bobsummerwill (Mon, 23 Mar 2020 17:12:54 GMT):
@faraggi I have been deeply down this rabbit hole myself: https://doublethink.co/2015/12/31/a-tale-of-two-abis/ https://doublethink.co/2015/11/30/first-working-ethereum-c-cross-builds/ https://github.com/doublethinkco/cpp-ethereum-cross I do not know whether it is really going to be worth putting too much effort into supporting 32-bit devices anymore, to be honest. RAM obviously an issue, but storage and need for SSDs even more of a constraint.

bobsummerwill (Mon, 23 Mar 2020 17:13:28 GMT):
My DEVCON2 talk in 2016 was on Ethereum for Resource Constrained Devices:

bobsummerwill (Mon, 23 Mar 2020 17:13:29 GMT):
https://www.youtube.com/watch?v=S7jT7IWRVlw

bobsummerwill (Mon, 23 Mar 2020 17:14:25 GMT):
In retrospect, our thinking there was pretty naive. Getting a mainnet node running on a flagship mobile device even is still a big stretch.

bobsummerwill (Mon, 23 Mar 2020 17:14:44 GMT):
Great that Ethereum on ARM are having a go.

arash009 (Mon, 23 Mar 2020 21:46:10 GMT):
Hi. Truffle test with ganache sometimes works slightly differetly to real ethereum clients. Has this worked with any other client and is specific to Besu? Unfortunately we dont have details of the contracts being used to help there.

madelinemurray (Mon, 23 Mar 2020 23:37:13 GMT):
@marlow - we're looking in this one but haven't been able to reproduce yet. How are you sending transactions? Where are you calculating the nonces?

RealDeanZhao (Tue, 24 Mar 2020 01:47:12 GMT):
Hi, I have solved the issue. There was an issue encoding function data using web3j in my code.

RealDeanZhao (Tue, 24 Mar 2020 01:47:12 GMT):
Hi, I have solved the issue. There was a bug encoding function data using web3j in my code.

pinges (Tue, 24 Mar 2020 03:17:07 GMT):
https://github.com/hyperledger/besu/issues/514 mentions that it looks like the private transaction was executed correctly, as it was possible to retrieve the transaction receipt. Do you see that as well?

dbdagr8 (Tue, 24 Mar 2020 06:33:31 GMT):
What should be the ideal time for Smart Contract Invocation on Besu 3 node clique network with difficulty of '0x1' in genesis file? For me it is taking 14 sec for each transaction which I think is quite high.

cjhare (Tue, 24 Mar 2020 06:55:43 GMT):
> difficulty of '0x1' in genesis file The Clique consensus mechanism does not use `difficulty` field in the genesis config. For Clique network, that `config`object supports a `clique` child object, which can defines the time between blocks being produced e.g. ``` "config": { ... "clique": { "blockperiodseconds": 15, "epochlength": 30000 } }, ``` `blockperiodseconds` is rough time between blocks, which I believe may default to 15 seconds

cjhare (Tue, 24 Mar 2020 06:56:51 GMT):
For more exciting details about Clique in Hyperledger Besu: https://besu.hyperledger.org/en/stable/HowTo/Configure/Consensus-Protocols/Clique/

rranjan3 (Tue, 24 Mar 2020 07:06:13 GMT):
I see this error when I try to make multiple simultaneously request(using web3.py) to a Besu client(v1.3.9) using the same account- Transaction 0x348e030e065b63c976c8a57caae511f16b9d9a546a2316155439d6baa202845d is not in the chain, after 120 seconds. Interleaving them by a couple of seconds works perfectly fine. Is there a setting or something basic I am missing?

rranjan3 (Tue, 24 Mar 2020 07:06:13 GMT):
I see this error when I try to make multiple simultaneously request(using web3.py) to a Besu client(v1.3.9) using the same account- `Transaction 0x348e030e065b63c976c8a57caae511f16b9d9a546a2316155439d6baa202845d is not in the chain, after 120 seconds. ` Interleaving them by a couple of seconds works perfectly fine. Is there a setting or something basic I am missing?

rranjan3 (Tue, 24 Mar 2020 07:06:13 GMT):
I see this error when I try to make multiple simultaneously request(using web3.py) to a Besu client(v1.3.9) using the same account- `Transaction 0x348e030e065b63c976c8a57caae511f16b9d9a546a2316155439d6baa202845d is not in the chain, after 120 seconds. ` Interleaving them by a couple of seconds works perfectly fine. Is there a setting or something basic I am missing?

rranjan3 (Tue, 24 Mar 2020 07:06:13 GMT):
I see this error when I try to make multiple simultaneously request(using web3.py) to a Besu client(v1.3.9) using the same account- `Transaction 0x348e030e065b63c976c8a57caae511f16b9d9a546a2316155439d6baa202845d is not in the chain, after 120 seconds. ` Interleaving them by a couple of seconds works perfectly fine. Is there a setting or something basic I am missing? This is how the node starts(snippet from docker file)- ```image: hyperledger/besu:1.3.9 command: >- --data-path=/var/lib/besu --genesis-file=/var/lib/besu/genesis.json --rpc-http-enabled --rpc-http-host=0.0.0.0 --rpc-ws-enabled --rpc-ws-host=0.0.0.0 --discovery-enabled=false --p2p-host=0.0.0.0 --rpc-http-api=ETH,NET,WEB3,DEBUG,MINER,ADMIN,TXPOOL,CLIQUE --rpc-ws-api=ETH,NET,WEB3,DEBUG,MINER,ADMIN,TXPOOL,CLIQUE --rpc-http-cors-origins='*' --host-whitelist='*' --min-gas-price=0``

rranjan3 (Tue, 24 Mar 2020 07:06:13 GMT):
I see this error when I try to make multiple simultaneously request(using web3.py) to a Besu client(v1.3.9) using the same account- `Transaction 0x348e030e065b63c976c8a57caae511f16b9d9a546a2316155439d6baa202845d is not in the chain, after 120 seconds. ` Interleaving them by a couple of seconds works perfectly fine. Is there a setting or something basic I am missing? This is how the node starts(snippet from docker file)- ```image: hyperledger/besu:1.3.9 command: >- --data-path=/var/lib/besu --genesis-file=/var/lib/besu/genesis.json --rpc-http-enabled --rpc-http-host=0.0.0.0 --rpc-ws-enabled --rpc-ws-host=0.0.0.0 --discovery-enabled=false --p2p-host=0.0.0.0 --rpc-http-api=ETH,NET,WEB3,DEBUG,MINER,ADMIN,TXPOOL,CLIQUE --rpc-ws-api=ETH,NET,WEB3,DEBUG,MINER,ADMIN,TXPOOL,CLIQUE --rpc-http-cors-origins='*' --host-whitelist='*' --min-gas-price=0

dbdagr8 (Tue, 24 Mar 2020 07:10:01 GMT):
I tried with Curl API. It is quite fast and 100 transactions got completed in 100 secs. If only one transaction, it completes in 6-7 secs. With metamask and web3.eth.sendSignedTransaction, time is high.

cjhare (Tue, 24 Mar 2020 07:15:27 GMT):
Ah, you have mindful when measuring performance of PoA mechanisms, as they exhibit different behaviours to PoWs

cjhare (Tue, 24 Mar 2020 07:17:50 GMT):
With Clique, a block is produced at fixed intervals, irrespective of throughput ...by which I mean, if you submit a transaction just after a block is produced, your transaction will take ~14 secs (as that is when the next block is produced). Under a Pow mechanism with an extremely low difficulty, it would be pretty much instantly processed

dbdagr8 (Tue, 24 Mar 2020 07:21:42 GMT):
oh! Got your point.

julez (Tue, 24 Mar 2020 08:44:48 GMT):
Thank you, sadly the error remains. I also get this Error for every task: `> Task :nat:compileJava UP-TO-DATE Errors occurred while build effective model from C:\Users\bauerj1\.gradle\caches\modules-2\files-2.1\io.sundr\sundr-codegen\0.18.0\a2db6856adbfe6a2eaf355284feafe127e6602cb\sundr-codegen-0.18.0.pom: 'dependencies.dependency.systemPath' for com.sun:tools:jar must specify an absolute path but is /usr/lib/jvm/java-8-jdk/jre/../lib/tools.jar in io.sundr:sundr-codegen:0.18.0` Maybe it's connected to the error above.

julez (Tue, 24 Mar 2020 08:44:48 GMT):
Thank you, sadly the error remains. I also get this Error for every task: ``` > Task :nat:compileJava UP-TO-DATE Errors occurred while build effective model from C:\Users\bauerj1\.gradle\caches\modules-2\files-2.1\io.sundr\sundr-codegen\0.18.0\a2db6856adbfe6a2eaf355284feafe127e6602cb\sundr-codegen-0.18.0.pom: 'dependencies.dependency.systemPath' for com.sun:tools:jar must specify an absolute path but is /usr/lib/jvm/java-8-jdk/jre/../lib/tools.jar in io.sundr:sundr-codegen:0.18.0 ``` Maybe it's connected to the error above.

marlow (Tue, 24 Mar 2020 08:49:16 GMT):
Correct, I was able to get the transaction receipt. I didn't specify any nonces in the transactions params itself. Next time I encounter the error I will try to make a repro case, if you haven't already managed to do that

marlow (Tue, 24 Mar 2020 08:49:56 GMT):
This is an example call we use to make transactions: ``` const contractOptions = { data: `0x${binary}${constructorArgs}`, privateFrom: process.env.ORION_PUBLIC_KEY, privacyGroupId, privateKey: process.env.ORION_PRIVATE_KEY, }; const transactionHash = await this.web3.eea.sendRawTransaction( contractOptions, ); ```

faraggi (Tue, 24 Mar 2020 09:06:18 GMT):
An update on the EthonARM information: https://www.reddit.com/r/ethereum/comments/fo1p2b/ethereum_on_arm_nethermind_and_hyperledger_besu/

shemnon (Tue, 24 Mar 2020 15:09:37 GMT):
I think they are all being sent with the same nonce. Transactions with the same nonce will result in all but one of them never being mined.

srv.twry (Tue, 24 Mar 2020 16:27:45 GMT):
Has joined the channel.

rranjan3 (Tue, 24 Mar 2020 17:02:39 GMT):
Oh. Yes it is the case. Thanks @shemnon But trying to work around it, I cannot assign a random number to the nonce neither can I do away with it. How do I use multiple transaction generator then?

pedrocrvz (Tue, 24 Mar 2020 17:04:42 GMT):
Has joined the channel.

shemnon (Tue, 24 Mar 2020 17:05:58 GMT):
you need to keep a shared counter. If this is against multiple processes it becomes problematic. An alternative is to use a separate account per process.

pedrocrvz (Tue, 24 Mar 2020 17:18:34 GMT):
Worker threads do not seem to finish. Invalid transaction logs are looping.

rranjan3 (Tue, 24 Mar 2020 17:26:35 GMT):
Thanks :) How do we pull down the mining time though in Besu?

shemnon (Tue, 24 Mar 2020 17:29:40 GMT):
You mean block time? There are no APIs for that and it can vary based on mining algorithm. Ethash targets 15s and is not tunable IIRC, it is also not guessable as it is probabalistic. Clique and IBFT2 can be tuned in the genesis.json file to privide a different block time. `blockperiodseconds` in the `clique` or `ibft2` object of the genesis.json

magooster (Tue, 24 Mar 2020 18:08:43 GMT):
If I submit multiple private transactions to a node with an incrementing nonce I see the following error {"jsonrpc":"2.0","id":1,"error":{"code":-32006,"message":"Incorrect nonce"}}

magooster (Tue, 24 Mar 2020 18:08:57 GMT):
Besu logs show

magooster (Tue, 24 Mar 2020 18:09:37 GMT):
2020-03-24 17:45:10.850+00:00 | vert.x-worker-thread-9 | DEBUG | PrivateTransactionValidator | Validating private transaction fields of 0x12b07edd2178b0ed4c8357be4d260b52435e88598a6efa8925729fc9213bb5c2 2020-03-24 17:45:10.850+00:00 | vert.x-worker-thread-9 | DEBUG | PrivateTransactionValidator | Validating the signature of Private Transaction 0x12b07edd2178b0ed4c8357be4d260b52435e88598a6efa8925729fc9213bb5c2 2020-03-24 17:45:10.850+00:00 | vert.x-worker-thread-9 | DEBUG | PrivateTransactionValidator | Validating actual nonce 28, with expected nonce 28 2020-03-24 17:45:10.851+00:00 | vert.x-worker-thread-9 | DEBUG | PrivateTransactionValidator | Validating private transaction fields of 0xd9a3da8619e5e8bd688a7960f5debb734c3470c458eb1a7929e2d1910206883f 2020-03-24 17:45:10.851+00:00 | vert.x-worker-thread-9 | DEBUG | PrivateTransactionValidator | Validating the signature of Private Transaction 0xd9a3da8619e5e8bd688a7960f5debb734c3470c458eb1a7929e2d1910206883f 2020-03-24 17:45:10.851+00:00 | vert.x-worker-thread-9 | DEBUG | PrivateTransactionValidator | Validating actual nonce 0, with expected nonce 0 2020-03-24 17:45:10.852+00:00 | vert.x-worker-thread-3 | DEBUG | JsonRpcHttpService | JSON-RPC request -> eea_sendRawTransaction 2020-03-24 17:45:10.856+00:00 | vert.x-worker-thread-3 | DEBUG | PrivateTransactionValidator | Validating private transaction fields of 0x408bbf6795152a10930cbdb66d6640d611c598b6ce19386ba83be74275013c07 2020-03-24 17:45:10.856+00:00 | vert.x-worker-thread-3 | DEBUG | PrivateTransactionValidator | Validating the signature of Private Transaction 0x408bbf6795152a10930cbdb66d6640d611c598b6ce19386ba83be74275013c07 2020-03-24 17:45:10.856+00:00 | vert.x-worker-thread-3 | DEBUG | PrivateTransactionValidator | Validating actual nonce 29, with expected nonce 28 2020-03-24 17:45:10.856+00:00 | vert.x-worker-thread-3 | DEBUG | PrivateTransactionValidator | Private Transaction nonce 29, does not match sender account nonce 28.

magooster (Tue, 24 Mar 2020 18:12:42 GMT):
Each request is processed in a separate worker thread - so is checking of sender nonce vs account nonce thread safe?

benjamincburns (Tue, 24 Mar 2020 19:03:47 GMT):
Has joined the channel.

lucassaldanha (Tue, 24 Mar 2020 21:58:07 GMT):
Hi @magooster. May I ask what are you using to create the signed tx? EthSigner, Web3j, Websjs-eea? Also, have you checked if all previous txs have been processed successfully? I'm thinking that If there was a invalid tx in hte batch of txs, the account nonce wouldn't be incremented for that tx, so the following txs that you sent would need to take that into account (e.g. if tx 28 failed, the next tx shouldn't have nonce 29, it should be 28 "again").

magooster (Tue, 24 Mar 2020 21:58:22 GMT):
web3js-eea

magooster (Tue, 24 Mar 2020 22:00:42 GMT):
first tx works - get event emiited, second fails with invalid nonce

magooster (Tue, 24 Mar 2020 22:00:42 GMT):
Event Emited: 0x000000000000000000000000fe3b557e8fb62b89f4916b721be55ceb828dbd7300000000000000000000000000000000000000000000000000000000000003e8 Private Tx 0x3b1be86759b93e9815526a72752b2e963330993c868d319b7d2e9bfbfa11bce0 Marker Transaction 0xd7d7dfc4928bfc3ddc27ad903b3bc31009d4ee1e0520f1dc840a02a9b457825

magooster (Tue, 24 Mar 2020 22:04:28 GMT):
2020-03-24 22:01:57.394+00:00 | vert.x-worker-thread-5 | DEBUG | PrivateTransactionValidator | Validating private transaction fields of 0x3b1be86759b93e9815526a72752b2e963330993c868d319b7d2e9bfbfa11bce0 2020-03-24 22:01:57.394+00:00 | vert.x-worker-thread-5 | DEBUG | PrivateTransactionValidator | Validating the signature of Private Transaction 0x3b1be86759b93e9815526a72752b2e963330993c868d319b7d2e9bfbfa11bce0 2020-03-24 22:01:57.394+00:00 | vert.x-worker-thread-5 | DEBUG | PrivateTransactionValidator | Validating actual nonce 38, with expected nonce 38 2020-03-24 22:01:57.395+00:00

magooster (Tue, 24 Mar 2020 22:04:53 GMT):
2nd tx with nonce 39

magooster (Tue, 24 Mar 2020 22:05:19 GMT):
2020-03-24 22:01:57.400+00:00 | vert.x-worker-thread-6 | DEBUG | PrivateTransactionValidator | Validating private transaction fields of 0xaef2c2c2d5ed799b954bec88d9990e89afaba4564acae8aa3629c7beed23f0c2 2020-03-24 22:01:57.400+00:00 | vert.x-worker-thread-6 | DEBUG | PrivateTransactionValidator | Validating the signature of Private Transaction 0xaef2c2c2d5ed799b954bec88d9990e89afaba4564acae8aa3629c7beed23f0c2 2020-03-24 22:01:57.400+00:00 | vert.x-worker-thread-6 | DEBUG | PrivateTransactionValidator | Validating actual nonce 39, with expected nonce 38

magooster (Tue, 24 Mar 2020 22:09:20 GMT):
PrivateTransactionValidator has a check for matching account and transaction nonce...

magooster (Tue, 24 Mar 2020 22:21:38 GMT):
Given that all requests are processed using executeBlocking and hence a worker thread - how is account nonce synchronised across them?

lucassaldanha (Tue, 24 Mar 2020 22:45:43 GMT):
The account nonce validation happens in two different places. One is when accepting a tx via JSON-RPC (adding the tx to the pool). The other place is when tx are processed included in a block (during mining). The check done at the JSON-RPC layer is done against the latest nonce value for the account. This is a read-only validation, it won't affect the account nonce. The only place that the account nonce is affected is when the transaction is being processed and added to a block. And we have all the necessary arrangements to ensure thread safety at that point. What version of Besu are you using? I wonder if your case might've been solved by https://github.com/hyperledger/besu/pull/557

lucassaldanha (Tue, 24 Mar 2020 22:46:04 GMT):
The account nonce validation happens in two different places. One is when accepting a tx via JSON-RPC (adding the tx to the pool). The other place is when tx are processed included in a block (during mining). The check done at the JSON-RPC layer is done against the latest nonce value for the account. This is a read-only validation, it won't affect the account nonce. The only place that the account nonce is affected is when the transaction is being processed and added to a block. And we have all the necessary arrangements to ensure thread safety at that point. What version of Besu are you using? I wonder if your case might've been solved by https://github.com/hyperledger/besu/pull/557

madelinemurray (Tue, 24 Mar 2020 23:36:21 GMT):
Thanks @marlow. We haven't managed to reproduce yet it - if you could make a repro case that would be great. What volume of transactions are you sending?

madelinemurray (Tue, 24 Mar 2020 23:46:58 GMT):
What versions of Besu and Orion are you using?

magooster (Wed, 25 Mar 2020 07:25:02 GMT):
I was using a snapshot based off 1.4.2 but might not have that fix, let me rebuild and check. Looks exactly like the issue however.

magooster (Wed, 25 Mar 2020 08:35:15 GMT):
Whilst the fix allows multiple private txs to be sent 'concurrently' - this then manifests in a problem with the privacy marker transaction (when using a fixed signing key)

magooster (Wed, 25 Mar 2020 08:36:10 GMT):
All relates to the privacy marker transaction nonce

magooster (Wed, 25 Mar 2020 08:37:08 GMT):
which ultimately determines order of transactions

magooster (Wed, 25 Mar 2020 08:38:09 GMT):
can get duplicate nonces or even out of order with respect to private transaction nonce.

magooster (Wed, 25 Mar 2020 08:38:40 GMT):
Easy to replicate just fire two private transactions in quick succession...

magooster (Wed, 25 Mar 2020 08:44:26 GMT):
I adding some logging for the generated PMT nonce and see this for example...

magooster (Wed, 25 Mar 2020 08:44:29 GMT):
2020-03-25 08:41:42.570+00:00 | vert.x-worker-thread-16 | DEBUG | EeaSendRawTransaction | Privacy Marker Transaction nonce 7755 2020-03-25 08:41:42.570+00:00 | vert.x-worker-thread-17 | DEBUG | EeaSendRawTransaction | Privacy Marker Transaction nonce 7755

magooster (Wed, 25 Mar 2020 08:46:29 GMT):
Happy to raise github issue with all the details

magooster (Wed, 25 Mar 2020 10:39:08 GMT):
raised https://github.com/hyperledger/besu/issues/571

madelinemurray (Wed, 25 Mar 2020 20:06:13 GMT):
Thanks for the extra detail and raising the issue. We're looking into it.

SuzanaMaranhao (Wed, 25 Mar 2020 20:33:40 GMT):
Has joined the channel.

SuzanaMaranhao (Wed, 25 Mar 2020 20:33:42 GMT):
A very common way to create complex queries involving ethereum events in dapps is compose in three steps: (1) to read all events, (2) to store them in a database and (3) to query the database itself making the necessary joins. I am wondering if it is possible to have a better solution using Hyperledger besu node #besu. I do not want to maintain a separate database to this.

atoulme (Thu, 26 Mar 2020 00:46:05 GMT):
hey folks starting to work on eth65, which requires access to the transaction pool.

atoulme (Thu, 26 Mar 2020 00:46:50 GMT):
Right now I am rewiring the code so PendingTransactions is going to be available to the EthProtocolManager. Do you think TransactionPool should be used instead?

marlow (Thu, 26 Mar 2020 06:41:59 GMT):
Haven't been able to reproduce yet either. The error also only occasionally passed and was not always there. Was using hyperledger/besu:1.4 and pegasyseng/orion:1.5. I switched my setup from an earlier kubectl version to the latest helm chart.

marlow (Thu, 26 Mar 2020 06:41:59 GMT):
Haven't been able to reproduce yet either. The error also only occasionally passed and was not always there. Was using `hyperledger/besu:1.4` and `pegasyseng/orion:1.5`. I switched my setup from an earlier kubectl version to the latest helm chart.

marlow (Thu, 26 Mar 2020 06:43:50 GMT):
Also came across some other bug/enchancement that I can reproduce. I described it in https://github.com/hyperledger/besu/issues/572

yehia67 (Thu, 26 Mar 2020 13:58:06 GMT):
Has joined the channel.

yehia67 (Thu, 26 Mar 2020 14:14:58 GMT):
Hello everyone. I am trying to create a besu private network using IBFT2 on AWS VPC. I follow this tutorial https://pegasys.tech/setting-up-hyperledger-besu-in-aws/ I have 2 instances on private subnets and 2 others on public subnets. One of my private instances is the bootnode. I run it using this command for bootnode `besu-1.3.6/bin/besu --data-path=data --genesis-file=./genesis.json --rpc-http-enabled --rpc-http-api=IBFT --rpc-http-host=0.0.0.0 --host-whitelist="*" --rpc-http-cors-origins="all" --metrics-enabled --metrics-host=0.0.0.0 --metrics-port=9545 --p2p-host=< Private ip> & ` then I run this command on each instance ` besu-1.3.6/bin/besu --data-path=data --genesis-file=./genesis.json --node-private-key-file=/opt/besu/keys/key --bootnodes=enode://@:30303 --rpc-http-enabled --rpc-http-host=0.0.0.0 --host-whitelist="*" --rpc-http-api=ETH,NET,IBFT --rpc-http-cors-origins="all" --metrics-enabled --metrics-host=0.0.0.0 --metrics-port=9545 --p2p-host= &` Once all of them run they can't find other peers I don't Know why and It keep giving me this message forever. `2020-03-26 13:51:55.658+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, wait for peers. 2020-03-26 13:52:00.659+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, wait for peers. 2020-03-26 13:52:05.660+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, wait for peers. 2020-03-26 13:52:10.660+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, wait for peers. 2020-03-26 13:52:15.661+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, wait for peers. 2020-03-26 13:52:20.662+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, wait for peers. 2020-03-26 13:52:25.663+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, wait for peers. 2020-03-26 13:52:30.663+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, wait for peers. 2020-03-26 13:52:35.664+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, wait for peers. 2020-03-26 13:52:40.665+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, wait for peers. 2020-03-26 13:52:45.666+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, wait for peers. 2020-03-26 13:52:50.666+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, wait for peers. 2020-03-26 13:52:55.667+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, wait for peers. 2020-03-26 13:53:00.668+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, wait for peers. 2020-03-26 13:53:05.668+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, wait for peers.` Could anyone tell me please what the problem could be? Thanks In Advance.

mwagner (Thu, 26 Mar 2020 14:20:44 GMT):
Has joined the channel.

faraggi (Thu, 26 Mar 2020 14:38:25 GMT):
*BESU IS ACTIVE STATUS* This morning the Hyperledger TSC voted and approved Besu to go to active status in Hyperledger.

faraggi (Thu, 26 Mar 2020 14:38:34 GMT):
:mega:

bobsummerwill (Thu, 26 Mar 2020 14:46:23 GMT):
Awesome! Well deserved. Just joined the call late. Very happy the status has finally been granted :-)

shemnon (Thu, 26 Mar 2020 15:39:03 GMT):
Not terribly familiar with that code, but I think TransactionPool should be used instead. PendingTransactions looks to be optimized for block production whereas TransactionPool is more optimized for the P2P side of the processing. So for Eth/65 TransactionPool is likely what you really need.

magooster (Thu, 26 Mar 2020 16:15:02 GMT):
Isn't this due to the way web3.eea.sendRawTransaction generates the tx nonce

magooster (Thu, 26 Mar 2020 16:16:03 GMT):
It use web3.priv.getTransactionCount, so if you send mulitple transactions in succession they will use the same nonce

magooster (Thu, 26 Mar 2020 16:17:30 GMT):
It uses web3.priv.getTransactionCount call, so if you generate multiple txs in quick succession they will use the same nonce

magooster (Thu, 26 Mar 2020 16:18:34 GMT):
Whilst they pass pre validation check, they fail during block processing

magooster (Thu, 26 Mar 2020 16:18:34 GMT):
Whilst they pass pre validation check, they fail during block processing (One will be processed, the others sharing the nonce will fail with a nonce too low error)

VipinB (Thu, 26 Mar 2020 17:04:31 GMT):
Great news for you guys!

knagware9 (Thu, 26 Mar 2020 17:18:08 GMT):
Great!!

lucassaldanha (Thu, 26 Mar 2020 18:47:11 GMT):
My assumption was that web3js-eea was keeping a local cache of the nonce. So after sending the first tx, it would stop asking for the next nonce and using the next "expected" nonce. I'll check with the web3js-eea team if this is the case.

antonispoulakis (Thu, 26 Mar 2020 18:55:10 GMT):
Hi guys, We're using Besu(version 1.4.1) with gas price = 0 and there is a strange behaviour regarding gas limit. We are using estimateGasPrice from web3 to decide the gas limit for the transactions but still, some transactions occasionally run out of gas. To get around that we were multiplying the estimated gas by 1.1 which was fine for some time until transactions started reverting again due to gas. We started multiplying by 2 but some transactions will still run out of gas. Could there be any particular reason why this happens? Is there a side effect on setting the gas limit to a really high value?

SuzanaMaranhao (Thu, 26 Mar 2020 19:20:05 GMT):
I have now understood that I can read Besu info about nodes: https://github.com/hyperledger/besu/blob/master/ethereum/api/src/main/resources/schema.graphqls. Are the events of smart contracts included in the "logs"? Are there any detailed documentation?

SuzanaMaranhao (Thu, 26 Mar 2020 19:29:49 GMT):
For example, how should I interpret the data, that is encoded as bytes? For example, is it a concatenation of the name and the args of the event?

Daniela_Barbosa (Thu, 26 Mar 2020 19:51:13 GMT):
Has joined the channel.

magooster (Thu, 26 Mar 2020 21:58:12 GMT):
No the web3.eea.sendRawTransaction - calls web3.priv.getTransactionCount for each request to get the nonce (you can override in the options supplied to the web3.eea.sendRawTransaction request.

lucassaldanha (Thu, 26 Mar 2020 21:58:39 GMT):
Thanks! I'm gonna follow up with them.

lucassaldanha (Thu, 26 Mar 2020 21:59:03 GMT):
But you are right. In this scenario, one would need to keep track of the nonces instead of relying on the getTxCount responses.

lucassaldanha (Thu, 26 Mar 2020 21:59:48 GMT):
I believe if could keep some kind of local cache of the nonce in the library, it would make this easier for this use case of sending multiple txs in sequence.

magooster (Thu, 26 Mar 2020 21:59:54 GMT):
I discovered this then ran into the future nonce issue

magooster (Thu, 26 Mar 2020 22:03:16 GMT):
https://github.com/hyperledger/besu/pull/557

madelinemurray (Thu, 26 Mar 2020 23:13:01 GMT):
We have this doc on events and logs - https://besu.hyperledger.org/en/stable/Concepts/Events-and-Logs/

madelinemurray (Fri, 27 Mar 2020 03:56:55 GMT):
🎉 Hyperledger Besu 1.4.2 is out 🎉 We’ve added more parity-style tracing (`trace_block`) and enhanced the `syncing` query and `eth_syncing` JSON-RPC API Get it at https://github.com/hyperledger/besu/releases/1.4.2

rranjan3 (Fri, 27 Mar 2020 06:18:21 GMT):
Deploying my contracts with truffle, at time I get stuck here - ```Starting migrations... ====================== > Network name: 'besu-test' > Network id: 12345 > Block gas limit: 0x2fefd800 1_initial_migration.js ====================== Replacing 'Migrations' ---------------------- > transaction hash: 0x775ad8656a161552ae7d16d7709d3788cf3e527c3a395e811acaf5080d7a1d02 > Blocks: 0 Seconds: 4 ``` Retries help me out of this. But I am not able to get what causes this.

rranjan3 (Fri, 27 Mar 2020 06:18:21 GMT):
Deploying my contracts with truffle(truffle migrate --network besu-test), at time I get stuck here - ```Starting migrations... ====================== > Network name: 'besu-test' > Network id: 12345 > Block gas limit: 0x2fefd800 1_initial_migration.js ====================== Replacing 'Migrations' ---------------------- > transaction hash: 0x775ad8656a161552ae7d16d7709d3788cf3e527c3a395e811acaf5080d7a1d02 > Blocks: 0 Seconds: 4 ``` Retries help me out of this. But I am not able to get what causes this.

dbdagr8 (Fri, 27 Mar 2020 12:00:32 GMT):
@cjhare Can you suggest some good tool to stress test my besu network?

arunog (Fri, 27 Mar 2020 17:31:27 GMT):
Hello everyone, I'm testing hyperledger besu with kubernetes using this helm: "https://github.com/PegaSysEng/besu-kubernetes/tree/master/helm/ibft2-with-privacy/besu". I provisioned new node outside k8s cluster, and my intention is to connect this node with nodes in k8s. I've just seen this example of ingress "https://github.com/PegaSysEng/besu-kubernetes/blob/master/helm/ingress/ingress-rules-besu.yaml", but only works for the RPC calls and monitoring dashboards.. Are there any example with TCP 8545, and UDP 30303? Other question, to enable peer discovery, is it only necessary 30303 UDP port open for inbound connections? Or also TCP? Thanks in advance

arunog (Fri, 27 Mar 2020 17:31:27 GMT):
Hello everyone, I'm testing hyperledger besu with kubernetes using this helm: "https://github.com/PegaSysEng/besu-kubernetes/tree/master/helm/ibft2-with-privacy/besu". I provisioned new node outside k8s cluster, and my intention is to connect this node with nodes in k8s. I've just seen this example of ingress "https://github.com/PegaSysEng/besu-kubernetes/blob/master/helm/ingress/ingress-rules-besu.yaml", but only works for the RPC calls and monitoring dashboards.. Are there any example with TCP 8545, and UDP 30303? Other question, to enable peer discovery, is it only necessary 30303 UDP port open for inbound connections? Or also TCP? Because when I try to create a ingress or loadbalancer service with both protocols appears the next error: Thanks in advance

arunog (Fri, 27 Mar 2020 17:31:27 GMT):
Hello everyone, I'm testing hyperledger besu with kubernetes using this helm: "https://github.com/PegaSysEng/besu-kubernetes/tree/master/helm/ibft2-with-privacy/besu". I provisioned new node outside k8s cluster, and my intention is to connect this node with nodes in k8s. I've just seen this example of ingress "https://github.com/PegaSysEng/besu-kubernetes/blob/master/helm/ingress/ingress-rules-besu.yaml", but only works for the RPC calls and monitoring dashboards.. Are there any example with TCP 8545, and UDP 30303? Other question, to enable peer discovery, is it only necessary 30303 UDP port open for inbound connections? Or also TCP? Because when I try to create a ingress or loadbalancer service with both protocols appears the next error: "Error: release besu failed: Service "besu-validator1" is invalid: spec.ports: Invalid value: []core.ServicePort{core.ServicePort{Name:"json-rpc", Protocol:"TCP", Port:8545, TargetPort:intstr.IntOrString{Type:1, IntVal:0, StrVal:"json-rpc"}, NodePort:0}, core.ServicePort{Name:"ws", Protocol:"TCP", Port:8546, TargetPort:intstr.IntOrString{Type:1, IntVal:0, StrVal:"ws"}, NodePort:0}, core.ServicePort{Name:"graphql", Protocol:"TCP", Port:8547, TargetPort:intstr.IntOrString{Type:1, IntVal:0, StrVal:"graphql"}, NodePort:0}, core.ServicePort{Name:"rlpx", Protocol:"TCP", Port:30303, TargetPort:intstr.IntOrString{Type:1, IntVal:0, StrVal:"rlpx"}, NodePort:0}, core.ServicePort{Name:"discovery", Protocol:"UDP", Port:30303, TargetPort:intstr.IntOrString{Type:1, IntVal:0, StrVal:"discovery"}, NodePort:0}}: cannot create an external load balancer with mix protocols" Thanks in advance

arunog (Fri, 27 Mar 2020 17:31:27 GMT):
Hello everyone, I'm testing hyperledger besu with kubernetes using this helm: "https://github.com/PegaSysEng/besu-kubernetes/tree/master/helm/ibft2-with-privacy/besu". I provisioned new k8s cluster, and my intention is to connect both. I've just seen this example of ingress "https://github.com/PegaSysEng/besu-kubernetes/blob/master/helm/ingress/ingress-rules-besu.yaml", but only works for the RPC calls and monitoring dashboards.. Are there any example with TCP 8545, and UDP 30303? Other question, to enable peer discovery, is it only necessary 30303 UDP port open for inbound connections? Or also TCP? Because when I try to create a ingress or loadbalancer service with both protocols appears the next error: "Error: release besu failed: Service "besu-validator1" is invalid: spec.ports: Invalid value: []core.ServicePort{core.ServicePort{Name:"json-rpc", Protocol:"TCP", Port:8545, TargetPort:intstr.IntOrString{Type:1, IntVal:0, StrVal:"json-rpc"}, NodePort:0}, core.ServicePort{Name:"ws", Protocol:"TCP", Port:8546, TargetPort:intstr.IntOrString{Type:1, IntVal:0, StrVal:"ws"}, NodePort:0}, core.ServicePort{Name:"graphql", Protocol:"TCP", Port:8547, TargetPort:intstr.IntOrString{Type:1, IntVal:0, StrVal:"graphql"}, NodePort:0}, core.ServicePort{Name:"rlpx", Protocol:"TCP", Port:30303, TargetPort:intstr.IntOrString{Type:1, IntVal:0, StrVal:"rlpx"}, NodePort:0}, core.ServicePort{Name:"discovery", Protocol:"UDP", Port:30303, TargetPort:intstr.IntOrString{Type:1, IntVal:0, StrVal:"discovery"}, NodePort:0}}: cannot create an external load balancer with mix protocols" Thanks in advance

cjhare (Sun, 29 Mar 2020 23:35:14 GMT):
@dbdagr8 I believe we use HyperLedger Caliper for some of the load testing, but @shemnon might be able to shed further light on that (or provide the correct information) :relaxed:

madelinemurray (Mon, 30 Mar 2020 01:52:59 GMT):
:mega: We've identified a critical issue for privacy users with private transactions created using Hyperledger Besu v1.3.4 or earlier. If you have a network with private transaction created using v1.3.4 or earlier, please read the following and take the appropriate steps: https://wiki.hyperledger.org/display/BESU/Critical+Issue+for+Privacy+Users As always, the PegaSys tam is happy to answer any questions or help with any issues you have. :mega:

madelinemurray (Mon, 30 Mar 2020 01:52:59 GMT):
:mega: We've identified a critical issue for privacy users with private transactions created using Hyperledger Besu v1.3.4 or earlier. If you have a network with private transaction created using v1.3.4 or earlier, please read the following and take the appropriate steps: https://wiki.hyperledger.org/display/BESU/Critical+Issue+for+Privacy+Users As always, the PegaSys team is happy to answer any questions or help with any issues you have. :mega:

lucassaldanha (Mon, 30 Mar 2020 02:32:05 GMT):
Hi Suzana, the easiest way would be using a library like web3js or web3j. They will take care of decoding the data. If you want to do it yourself, I've found some articles online that can help (e.g. https://codeburst.io/deep-dive-into-ethereum-logs-a8d2047c7371).

amealwithbasil (Mon, 30 Mar 2020 03:04:34 GMT):
Has joined the channel.

amealwithbasil (Mon, 30 Mar 2020 03:04:35 GMT):
Hi, does Besu support private transactions on mainnet, and if it does, how does that work? Does each participant run an Orion node to handle the privacy?

shemnon (Mon, 30 Mar 2020 05:09:06 GMT):
Besu does not support Restricted Private Transactions (per the EEA spec, the kind that use orion) on Mainnet or public Testnet networks. Besu does support Unrestricted Private transactions done via smart contracts, such as those using the AZTEC protocol.

shemnon (Mon, 30 Mar 2020 05:15:08 GMT):
Besu Contributor Call tomorrow, 1 April APAC 30 Mar AMER - https://wiki.hyperledger.org/display/BESU/2020-04-01+Besu+Contributor+Call

shemnon (Mon, 30 Mar 2020 05:15:08 GMT):
Besu Contributor Call tomorrow, ~~1 April~~ 31 March APAC 30 Mar AMER - https://wiki.hyperledger.org/display/BESU/2020-03-31+Besu+Contributor+Call

shemnon (Mon, 30 Mar 2020 05:15:18 GMT):
Feel free to suggest or add agenda items

lucassaldanha (Mon, 30 Mar 2020 05:19:45 GMT):
Just to clarify. We have added in 1.4.0 experimental support to restricted private transactions on networks with non-finality (e.g. PoW - Mainnet). The basic mechanism is that only participants of a private transaction will receive the private transaction payload in Orion and the PMT (privacy marker transaction) will be part of the public chain as any other public transaction.

lucassaldanha (Mon, 30 Mar 2020 05:22:58 GMT):
https://github.com/hyperledger/besu/blob/master/CHANGELOG.md#early-access-features-1

sbs2001 (Mon, 30 Mar 2020 10:45:52 GMT):
Has joined the channel.

lshim (Mon, 30 Mar 2020 13:34:47 GMT):
Has joined the channel.

lshim (Mon, 30 Mar 2020 14:19:00 GMT):
 Luke Shim 7:07am    Hi. If i were to setup a dapp on a public ethereum  network using Besu I assume that this would be PoW but programmable in Java? But how would i create a dapp in a private ethereum network using PoA and could transactions on a private network connect to the public ethereum network? I.e. if there is a token created on a private Besu network could it be transferred to the public Ethereum network?

lucassaldanha (Mon, 30 Mar 2020 19:37:00 GMT):
My understanding is that you are referring to private networks as a network with private txs. In this context, private transactions are only visible by participants of a privacy group. There is no way to transfer tokens from a privacy group to the public network (at least not in a way that makes sense). :)

lucassaldanha (Mon, 30 Mar 2020 19:37:00 GMT):
My understanding is that you are referring to private networks as a network with private txs. In this context, private transactions are only visible by participants of a privacy group. There is no way to transfer tokens from a privacy group to the public network.

magooster (Mon, 30 Mar 2020 20:31:54 GMT):
For an IBFt2 based network is it possible to change the blockperiod after the chain has been up for a while (Can I just update genesis on each validator node)

trent.mohay (Mon, 30 Mar 2020 21:04:21 GMT):
@magooster at the moment, the answer is no, but its not quite that simple. If you increased the period in the genesis file (say from 2 --> 5), blocks which were created with <5 second interval would appear to be invalid to nodes newly syncing the chain. If you reduced the period (in all genesis files on the network) - I _suspect_ it would work, but it seems a little haphazard. Finally - IBFT2 supports an additional section in its genesis file called "transitions" - its designed to allow a network to replace the network's validators at a given block-height - i.e. it allows the IBFT2 protocol to be 'forked' at a given block. At the moment, "transitions" do not support changing the block-period, but it could be updated to provide such a capability.

trent.mohay (Mon, 30 Mar 2020 21:04:21 GMT):
@magooster at the moment, the answer is no, but its not quite that simple. If you increased the period in the genesis file (say from 2 --> 5), existing blocks which were created with <5 second interval would appear to be invalid to nodes newly syncing the chain (provided they were using the new genesis file). If you reduced the period (in all genesis files on the network) - I _suspect_ it would work, but it seems a little haphazard. Finally - IBFT2 supports an additional section in its genesis file called "transitions" - its designed to allow a network to replace the network's validators at a given block-height - i.e. it allows the IBFT2 protocol to be 'forked' at a given block. At the moment, "transitions" do not support changing the block-period, but it could be updated to provide such a capability.

magooster (Mon, 30 Mar 2020 21:11:33 GMT):
thanks

shemnon (Tue, 31 Mar 2020 00:28:23 GMT):
Contributor call in 30 minutes. My mistake on the header, I forgot march has 31 days.

shemnon (Tue, 31 Mar 2020 00:29:30 GMT):
https://consensys.zoom.us/j/524697595

lshim (Tue, 31 Mar 2020 01:51:31 GMT):
But, Besu uses Java and can run on a public Ethereum network as well?

lucassaldanha (Tue, 31 Mar 2020 01:51:44 GMT):
Correct.

lshim (Tue, 31 Mar 2020 02:02:57 GMT):
so with public network - advantage is to code in Java; with a private network - advantage is scalability using PoA? But, then why not just use Hyperledger Fabri instead for private network?

lucassaldanha (Tue, 31 Mar 2020 02:04:34 GMT):
Hi! I believe you are mixing a few concepts. I have replied to your message in the Besu mail list. In the future, it would be good if you could stick to one channel for your questions to avoid duplication. https://lists.hyperledger.org/g/besu/topic/besu_public_vs_private/72652911

tezansahu (Wed, 01 Apr 2020 21:15:18 GMT):
Hi! I am trying to deploy Besu on Kubernetes. I followed the steps mentioned here: https://github.com/PegaSysEng/besu-kubernetes/tree/master/kubectl/ibft2-with-privacy Now, I know the ClusterIP of the besu-node. I am unable to connect to the node usinh HTTP Provider of Web3py. Can someone help?

joshuafernandes (Wed, 01 Apr 2020 22:36:17 GMT):
Hello @tezansahu could you give us a little more info on your setup please? Where is this deployed and where are you connecting to the cluster-ip from (i.e within the cluster/ locally/ host)?

tezansahu (Thu, 02 Apr 2020 02:30:11 GMT):
Ok...so I have deployed besu-node on an AWS EC2 instance with kubernetes running on it. Since I have used kubectl, I have a ClusterIP for this node. Now, I tried to deploy another microservice which used web3py & kubernetes python SDK (to dynamically discover the ClusterIP of the besu-node). The ClusterIP is being discovered properly...but when I try w3 = Web3(Web3.HTTPProvider("http://" + besu_node_ip + ":8545"), from withiin the microservice, it does not connect to Besu. Moreover, I can still send raw JSON RPC requests from the microservice to the same besu_node_ip successfully, but can't connect using web3py. Please let me know if there is a way out in using web3py...or I have to go ahead with simple JSON RPC requests.

joshuafernandes (Thu, 02 Apr 2020 03:53:34 GMT):
Thanks for that. Is this via minikube or similar? From what you describe this doesn't appear to be an issue relating to connecting to the node ie if you can still send reqs to it and it responds, the connection is fine. You probably need to raise this issue on the web3py forums. I would suggest two things to get a little more info: 1. log the value of 'besu_node_ip' so you know what it is being resolved to 2. If this microservice is in the same namespace, you can use the env var directly i.e os.environ['BESU_NODE_SERVICE_HOST']. If you ssh into your pod and run `env` you should see the service hosts available there

tezansahu (Thu, 02 Apr 2020 03:55:11 GMT):
No...not by minikube

tezansahu (Thu, 02 Apr 2020 03:55:31 GMT):
Yeah...I tried logginf the value...and it shows the correct value

joshuafernandes (Thu, 02 Apr 2020 03:56:52 GMT):
:thumbsup: I'd suggest raising this with web3py then as the next step. There appears to be no reason why you can't connect to the node becuase its fine with normal reqs

tezansahu (Thu, 02 Apr 2020 04:10:41 GMT):
Ok

nikolas (Thu, 02 Apr 2020 11:47:54 GMT):
hi, I am using the sample poa network and exposed the websocket port to subscribe to events. I am trying to subscribe to smart-contract events, but I get back an "Invalid request" error. I am using the golang ethclient of go-ethereum package. Any hints please? My filter only looks for the deployed contract address, accepts everything else. Any hints please?

arunog (Thu, 02 Apr 2020 21:09:37 GMT):
Finally I have been able to connect nodes in aks with a docker node in another vm. What I could not, is to connect two nodes in different aks. Is there any configuration example to be able to do it? I have seen the --nat-method = KUBERNETES option, but I think it is not working.

arunog (Thu, 02 Apr 2020 21:09:37 GMT):
Finally I have been able to connect nodes in aks with a docker node in another vm. What I could not, is to connect two nodes in different aks. Is there any configuration example to be able to do it? I have seen the --nat-method = KUBERNETES option, but I think it is not working. 2020-04-03 19:01:09.559+00:00 | main | INFO | KubernetesNatManager | Starting kubernetes NAT manager. 2020-04-03 19:01:09.573+00:00 | main | WARN | KubernetesNatManager | Failed update information using Kubernetes client SDK. java.lang.IllegalStateException: Cannot locate Kubernetes config file. at org.hyperledger.besu.nat.kubernetes.KubernetesNatManager.update(KubernetesNatManager.java:75) [besu-nat-1.4.2.jar:1.4.2] at org.hyperledger.besu.nat.kubernetes.KubernetesNatManager.doStart(KubernetesNatManager.java:64) [besu-nat-1.4.2.jar:1.4.2] at org.hyperledger.besu.nat.core.AbstractNatManager.start(AbstractNatManager.java:89) [besu-nat-1.4.2.jar:1.4.2] at org.hyperledger.besu.nat.NatService.start(NatService.java:88) [besu-nat-1.4.2.jar:1.4.2] at org.hyperledger.besu.Runner.start(Runner.java:98) [besu-1.4.2.jar:1.4.2] at org.hyperledger.besu.cli.BesuCommand.synchronize(BesuCommand.java:1753) [besu-1.4.2.jar:1.4.2] at org.hyperledger.besu.cli.BesuCommand.startSynchronization(BesuCommand.java:1040) [besu-1.4.2.jar:1.4.2] at org.hyperledger.besu.cli.BesuCommand.run(BesuCommand.java:926) [besu-1.4.2.jar:1.4.2] at picocli.CommandLine.executeUserObject(CommandLine.java:1769) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine.access$900(CommandLine.java:145) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine$RunLast.handle(CommandLine.java:2141) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine$RunLast.handle(CommandLine.java:2108) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine$AbstractParseResultHandler.handleParseResult(CommandLine.java:1968) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine.parseWithHandlers(CommandLine.java:2322) [picocli-4.1.4.jar:4.1.4] at org.hyperledger.besu.cli.util.ConfigOptionSearchAndRunHandler.handle(ConfigOptionSearchAndRunHandler.java:61) [besu-1.4.2.jar:1.4.2] at org.hyperledger.besu.cli.util.ConfigOptionSearchAndRunHandler.handle(ConfigOptionSearchAndRunHandler.java:31) [besu-1.4.2.jar:1.4.2] at picocli.CommandLine$AbstractParseResultHandler.handleParseResult(CommandLine.java:1968) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine.parseWithHandlers(CommandLine.java:2322) [picocli-4.1.4.jar:4.1.4] at org.hyperledger.besu.cli.BesuCommand.parse(BesuCommand.java:1036) [besu-1.4.2.jar:1.4.2] at org.hyperledger.besu.cli.BesuCommand.parse(BesuCommand.java:911) [besu-1.4.2.jar:1.4.2] at org.hyperledger.besu.Besu.main(Besu.java:49) [besu-1.4.2.jar:1.4.2]

shemnon (Thu, 02 Apr 2020 21:29:23 GMT):
Do any RPC methods work? What are the CLI flags / config file options?

nikolas (Thu, 02 Apr 2020 21:30:42 GMT):
hi shemnon I am using the default docker-compose_poa file. I have currently added all the extra interfaces in the options to be sure.

nikolas (Thu, 02 Apr 2020 22:07:32 GMT):
Has joined the channel.

shemnon (Thu, 02 Apr 2020 22:30:42 GMT):
Can you provide a link? I don't have all the locations memorized.

shemnon (Thu, 02 Apr 2020 22:31:16 GMT):
Also, do any of the other APIs work? It is a connection problem?

nikolas (Fri, 03 Apr 2020 08:02:17 GMT):
the other apis seem work, there seems to be no connection problem. I get an "invalid request" response. I am using this https://github.com/PegaSysEng/besu-sample-networks, the docker-compose_poa as a target. What I try to do is subscribe with the ws port, which I have exposed to my localhost and the connection to it is successful, the request not.

adovale (Fri, 03 Apr 2020 10:55:22 GMT):
Has joined the channel.

adovale (Fri, 03 Apr 2020 10:55:23 GMT):
Hello, Where can i get data about Hyperledger Besu performance? I am currently researching different EEA clients and would be great to know more about Besu. Thank you very much in advance

faraggi (Fri, 03 Apr 2020 13:33:31 GMT):
There is a project doing Benchmarking for Besu and other Hyperldger projects. Check out https://www.hyperledger.org/projects/caliper I don't believe they have official results out yet. What kind of performance data are you looking for and how precise does it need to be?

nikolas (Fri, 03 Apr 2020 14:21:46 GMT):
Hi, are there any samples of event subscription to besu via websocket?

nikolas (Fri, 03 Apr 2020 14:22:00 GMT):
I try to make it work with the golang eth client, but get some issues

nikolas (Fri, 03 Apr 2020 14:32:54 GMT):
I am trying to subscribe to smart-contract events, but I get back an "Invalid request" error

adovale (Fri, 03 Apr 2020 14:36:36 GMT):
Hi faraggi, thank you for your answer. To be honest, any information related to transactions per seconds (TPS) in a Besu network would be great. But if you ask me, the ideal would be to know, for a IBFT network, how many private transactions per second (with Orion) can the network process, given that each transaction has, at leats, 3 participants.

adovale (Fri, 03 Apr 2020 14:36:36 GMT):
Hi faraggi, thank you for your answer. To be honest, any information related to transactions per seconds (TPS) in a Besu network would be great. But if you ask me, the ideal would be to know, for a IBFT network, how many private transactions per second (with Orion) can the network process, given that each transaction has, at least, 3 participants.

adovale (Fri, 03 Apr 2020 14:36:36 GMT):
Hi faraggi, thank you for your answer. To be honest, any information related to transactions per seconds (TPS) in a Besu network would be great. But if you ask me, the ideal would be to know, for a IBFT network, how many private transactions per second (with Orion) can the network process, given that each transaction involves, at least, 3 different nodes.

adovale (Fri, 03 Apr 2020 14:36:36 GMT):
Hi faraggi, thank you for your answer. To be honest, any information related to transactions per seconds (TPS) in a Besu network would be great. But the ideal would be to know, for a IBFT network, how many private transactions per second (with Orion) can the network process, given that each transaction involves, at least, 3 different nodes.

atoulme (Fri, 03 Apr 2020 17:24:13 GMT):
In the doc here, I see the --bootnodes option takes a bootnode directly from CLI: https://besu.hyperledger.org/en/stable/HowTo/Find-and-Connect/Bootnodes/#specify-a-bootnode

atoulme (Fri, 03 Apr 2020 17:24:29 GMT):
1. Can I specify multiple bootnodes? If yes, is a comma the separator?

atoulme (Fri, 03 Apr 2020 17:24:45 GMT):
2. Can I give a text file instead? See https://github.com/poanetwork/poa-chain-spec/blob/dai/bootnodes.txt for inspiration.

atoulme (Fri, 03 Apr 2020 17:27:08 GMT):
on 1. this page gives an answer: https://besu.hyperledger.org/en/stable/HowTo/Deploy/Bootnodes/

brunillopu.75 (Sat, 04 Apr 2020 07:30:32 GMT):
Has joined the channel.

brunillopu.75 (Sat, 04 Apr 2020 07:30:33 GMT):
Hi All, we've this issue: Error Go --> Error: Transaction was not mined within 50 blocks, please make sure your transaction was properly sent. Be aware that it might still be mined! Any suggesiton?

sumaids (Sat, 04 Apr 2020 10:44:49 GMT):
Has joined the channel.

sumaids (Sat, 04 Apr 2020 10:44:51 GMT):
#besu

shemnon (Sat, 04 Apr 2020 18:01:52 GMT):
Private network? Mainnet network? If it was mainnet there is a chance the network is congested and the gas payment was too low to be mined in 50 blocks. This happens on occasion.

sanjay_sharma87 (Sun, 05 Apr 2020 17:39:30 GMT):
Has joined the channel.

madelinemurray (Sun, 05 Apr 2020 20:03:50 GMT):
hi @nikolas - the documentation includes some examples for Besu: https://besu.hyperledger.org/en/stable/HowTo/Interact/APIs/RPC-PubSub/

shemnon (Sun, 05 Apr 2020 20:07:09 GMT):
We don't support a bootnodes file yet. You can add such data to a config.toml

shemnon (Sun, 05 Apr 2020 20:07:48 GMT):
You can specify the option multiple times, and you can separate bootnodes with commas, you can even do both at the same time. Here's the picocli definition - https://github.com/hyperledger/besu/blob/0e9add5ab60d238b76e8eefa96e2cbd5cfe33292/besu/src/main/java/org/hyperledger/besu/cli/BesuCommand.java#L259

nikolas (Sun, 05 Apr 2020 20:11:10 GMT):
Hi, thanks for jumping in to help. I am using teh eth go client and try to subscribe, but doesn't work. With ganache-cli seems to work fine. is there some incompatibility?

lucassaldanha (Sun, 05 Apr 2020 21:46:16 GMT):
Hi @nikolas could you be more specific about what client you are using to connect via websockets to Besu? A link to the website and the version being used would help! :)

nikolas (Sun, 05 Apr 2020 21:51:08 GMT):
I am using github.com/ethereum/go-ethereum/ethclient

nikolas (Sun, 05 Apr 2020 21:51:40 GMT):
i try to go the same way it would work with a geth client, but i get an "invalid request" response.

nikolas (Sun, 05 Apr 2020 21:52:18 GMT):
so what I tried now is, I implemented my own websocket client and it works

nikolas (Sun, 05 Apr 2020 21:52:41 GMT):
but... well... don't wanna do that really

nikolas (Sun, 05 Apr 2020 21:53:58 GMT):
FYI in am on v1.9.12 on the go eht client. and seems it is not compatible

nikolas (Sun, 05 Apr 2020 21:54:24 GMT):
...or I am am missing something ridiculous! :D

lucassaldanha (Sun, 05 Apr 2020 21:56:14 GMT):
I'm not sure if this client is meant to work with any Ethereum client (or if it is focused on Geth). Unfortunately, the API specs aren't set on stone and some implementations may differ. I'd recommend you trying out Web3js (javascript) or Web3j (java) that are implementations that I know try to be compatible with as many Ethereum clients are possible. Feel free to open a GitHub issue for this and we'll try to take a look at it.

nikolas (Sun, 05 Apr 2020 21:56:53 GMT):
u mean open a ticket on besu or the client side?

lucassaldanha (Sun, 05 Apr 2020 22:00:43 GMT):
On Besu side. However, I gotta say that in terms of priorities, we focus on ensuring compatibility with libraries that are targeted to a variety of Ethereum clients (e.g. Web3js and Web3j). If this is a bug on our side, we'll be more than happy to fix it. However, if this is just a implementation divergence, we might not prioritize it as much). Out of curiosity, have you tried using this geth client with Other Ethereum client implementations (e.g. Parity or Nethermind)?

nikolas (Sun, 05 Apr 2020 22:05:33 GMT):
...well since the rest of the thing is implemented on golang, I would like to make it work and not to implement another stand-alone service in java or js just to be able to make event subscriptions. I ll try to dig deeper and gather as much info as I can to report.

lucassaldanha (Sun, 05 Apr 2020 22:05:49 GMT):
Thanks!

nikolas (Mon, 06 Apr 2020 11:14:58 GMT):
FYI: https://github.com/hyperledger/besu/issues/654 please let me know if additional info is required.

faraggi (Mon, 06 Apr 2020 11:17:58 GMT):
I've been building a list of potential technical content ideas for Besu. I'd like to get the community's feedback on what content can be written and would be useful for everyone. If anybody has any suggestions, leave a comment here or in PM and I'll add it to our list.

brunillopu.75 (Mon, 06 Apr 2020 12:29:52 GMT):
Yes. This is the case. Source input stream is too fast. Thanks.

brunillopu.75 (Mon, 06 Apr 2020 12:29:52 GMT):
Yes. This is the case. Source input stream is too fast. IBFT Private Network.

koshik.raj (Mon, 06 Apr 2020 13:23:16 GMT):
Has joined the channel.

shemnon (Mon, 06 Apr 2020 16:06:32 GMT):
When doing performance measurements on an ethereum network you need to make sure the gas limit can support the desired TPS. If I am understanding you right the blockchain is gas limited and transactions are not getting cleared from the mem pool or are never getting added.

shemnon (Mon, 06 Apr 2020 16:07:08 GMT):
For performance tests we use absurdly high values like 400 Million gas for 2 second blocks. At that level the performance test is to see what the constraints of the block validators are.

Louvivien (Mon, 06 Apr 2020 18:03:11 GMT):
Has joined the channel.

Louvivien (Mon, 06 Apr 2020 18:03:12 GMT):
Hello, I have this issue when trying to migrate with Truffle a smartcontract on a Besu - Rinkeby network with enough wei on my Rinkeby address : ``"Migrations" could not deploy due to insufficient funds * Account: 0x20cEE93C127d8F35F54f56e0d28D14219Fe23919 * Balance: 0 wei * Message: sender doesn't have enough funds to send tx. The upfront cost is: 372936000000000 and the sender's account only has: 0 * Try: + Using an adequately funded account``` ``` + If you are using a local Geth node, verify that your `node is synced.`

Louvivien (Mon, 06 Apr 2020 18:05:42 GMT):
Hello, I have this issue when trying to migrate with Truffle a smartcontract on a Besu - Rinkeby network with enough wei on my Rinkeby address : ``` "Migrations" could not deploy due to insufficient funds * Account: 0x20cEE93C127d8F35F54f56e0d28D14219Fe23919 * Balance: 0 wei * Message: sender doesn't have enough funds to send tx. The upfront cost is: 372936000000000 and the sender's account only has: 0 * Try: + Using an adequately funded account + If you are using a local Geth node, verify that your `node is synced.` ``` Do you know why it doesn't seem to get my account balance right ? Thanks

Louvivien (Mon, 06 Apr 2020 18:05:42 GMT):
Hello, I have this issue when trying to migrate with Truffle a smartcontract on a Besu - Rinkeby network with enough wei on my Rinkeby address https://rinkeby.etherscan.io/address/0x20cEE93C127d8F35F54f56e0d28D14219Fe23919 : ``` "Migrations" could not deploy due to insufficient funds * Account: 0x20cEE93C127d8F35F54f56e0d28D14219Fe23919 * Balance: 0 wei * Message: sender doesn't have enough funds to send tx. The upfront cost is: 372936000000000 and the sender's account only has: 0 * Try: + Using an adequately funded account + If you are using a local Geth node, verify that your `node is synced.` ``` Do you know why it doesn't seem to get my account balance right ?

Louvivien (Mon, 06 Apr 2020 18:09:47 GMT):
this is how i start the network ``` "sudo docker run -p 8545:8545 -p 30303:30303 --mount type=bind,source=/tmp/besu/ropsten,target=/var/lib/besu hyperledger/besu:latest --rpc-ws-enabled --rpc-http-enabled --rpc-http-cors-origins='all' --host-whitelist='*' --network=ropsten --data-path=/var/lib/besu" ```

magooster (Mon, 06 Apr 2020 22:48:07 GMT):
Just raised https://github.com/hyperledger/besu/issues/662 - JsonRPCHttpService can silently fail to start

hmijail (Tue, 07 Apr 2020 03:15:40 GMT):
I'm having trouble with using MerklePatriciaTrie.entriesFrom() with a trie . Looks like it's because it's hardwired to work with Map, instead of using the that the rest of the interface assumes. Can anyone confirm whether this is a bug or purposeful?

hmijail (Tue, 07 Apr 2020 03:15:40 GMT):
I'm having trouble with using MerklePatriciaTrie.entriesFrom() with a trie . Looks like it's because it's hardwired to work with Map, instead of using the that the rest of the interface assumes. Can anyone confirm whether this is a bug or purposeful?

RealDeanZhao (Tue, 07 Apr 2020 09:46:09 GMT):
Hi team, the account nonce is a sequential number, so how to send transactions for one account concurrently?

RealDeanZhao (Tue, 07 Apr 2020 09:46:09 GMT):
Hi team, the account nonce is a sequential number, so how to send multiple transactions for one account concurrently?

RealDeanZhao (Tue, 07 Apr 2020 09:49:42 GMT):
Is it possible to add the feature for a private network to use a random nonce string instead of the sequential number like hyperledger sawtooth?

yehia67 (Tue, 07 Apr 2020 11:34:35 GMT):
Hello everyone, I have a question about deploying hyperledger besu for production. I am planning to use ibft2 consensus algorithm what is the best way to deploy on an AWS instance? I am familiar with besu-sample-networks. Is it a good idea to use it on deployments? If not what I should modify to make it better? Or what alternatives are available for now?

yehia67 (Tue, 07 Apr 2020 11:34:35 GMT):
It is a live production network. The project will have a mobile app available on play store for everyone. So I need my blockchain to be stable and scalable(as much as I can). I had already created an instance on AWS and used this docker container https://github.com/PegaSysEng/besu-sample-networks Unfortunately, It wasn't stable it work for some time then stop. I think it doesn't work because the container creates only one bootnode and three other nodes. If I modified the container to create two bootnodes and six other nodes will it be a good solution? If not what are the possible alternatives?

yehia67 (Tue, 07 Apr 2020 11:34:35 GMT):
the link of my issue: https://github.com/hyperledger/besu/issues/681

faraggi (Tue, 07 Apr 2020 13:05:30 GMT):
I'm pretty sure I've gotten that error in the past as well. If you have the logs, I think a issue would be valuable.

faraggi (Tue, 07 Apr 2020 13:06:01 GMT):
Thanks magooster, will keep an eye on that bug and let you know if we have udpates.

faraggi (Tue, 07 Apr 2020 13:07:21 GMT):
I'm thinking the issue here is the network not being synced yet. Was that the case?

faraggi (Tue, 07 Apr 2020 13:12:03 GMT):
TO send concurrent transactions with same account, it needs to pre-determine nonces. All TXs can lay in the TX pool until minded. The nonce is pretty much ingrained all over in the besu architecture. I don't think this will be possible.

hmijail (Tue, 07 Apr 2020 13:13:36 GMT):
this is while modifying Besu for Eth1.x experiments. No idea how to get this during normal usage.

faraggi (Tue, 07 Apr 2020 13:18:40 GMT):
Thats a tricky question. Way too many unknowns in order to answer your question thoroughly. The main one being; what do you mean by "production"? companies, and users accessing the network? on a live production network? The deployment options will depend on what you're accustomed to and know how to use already. Besu has ansible, kubernetes and docker files to help with deployment. Otherwise, you can simply install or build Besu on your instances and deploy 'manually'. Making it better really depends on what you mean by that. If you elaborate a bit, I can provide advice. Take all advice of this type with a grain of salt.

yehia67 (Tue, 07 Apr 2020 13:37:52 GMT):
@faraggi do you think besu-sample-networks is a good solution generally or I should use something else?

faraggi (Tue, 07 Apr 2020 13:43:17 GMT):
Those are great sample networks. Use them as examples, but make your own production networks and configs. One simple example of why using these 'as is' in prod are the private keys are publicly available in the repo.

Louvivien (Tue, 07 Apr 2020 13:54:57 GMT):

Screen Shot 2020-04-07 at 15.54.12.png

Louvivien (Tue, 07 Apr 2020 13:55:23 GMT):
yes, do you know why it does not sync ?

shemnon (Tue, 07 Apr 2020 15:07:03 GMT):
Looks like it was just a type that didn't get parameterized. Feel free to post a PR.

evg.bondareva (Tue, 07 Apr 2020 15:40:21 GMT):
Has joined the channel.

faraggi (Tue, 07 Apr 2020 16:00:50 GMT):
That part of the sync process can take a few minutes. Sometimes feels like forever. Let it run for at least 5min. If it still doesn't sync, it must come form the network config and how you've setup your infra Is each of those terminal windows a different node? are they all hosted on the same local computer?

Louvivien (Tue, 07 Apr 2020 17:06:50 GMT):
- I have launch a docker besu rinkeby network only in the first tab, do I need another node ? - It is on my local computer yes - After more than one hour this is what I get :

Louvivien (Tue, 07 Apr 2020 17:07:19 GMT):

Screen Shot 2020-04-07 at 19.04.36.png

Louvivien (Tue, 07 Apr 2020 20:05:07 GMT):
and after hours : `2020-04-07 20:04:24.442+00:00 | EthScheduler-Timer-0 | INFO | FastSyncTargetManager | No sync target, wait for peers.`

ivanduartep (Tue, 07 Apr 2020 23:29:25 GMT):
Has joined the channel.

ivanduartep (Tue, 07 Apr 2020 23:29:26 GMT):
Hey guys Im trying to interact with a contract on ropsten using the Hyperledger Besu client is that’s possible ?

lucassaldanha (Wed, 08 Apr 2020 02:38:00 GMT):
Yes, it is! https://besu.hyperledger.org/en/latest/HowTo/Get-Started/Starting-node/#run-a-node-on-ropsten-testnet

YoussefAlaa (Wed, 08 Apr 2020 09:56:05 GMT):
Has joined the channel.

YoussefAlaa (Wed, 08 Apr 2020 09:56:07 GMT):
Hello everyone, I have a problem withing besu-sample-network and looking for a solution, I've raised a question here https://ethereum.stackexchange.com/questions/80838/mining-stops-after-some-time-in-my-hyperledger-besu-private-blockchain

yehia67 (Wed, 08 Apr 2020 13:38:44 GMT):
okay Thank you @faraggi

yehia67 (Wed, 08 Apr 2020 13:39:49 GMT):
I will make my own production network

yehia67 (Wed, 08 Apr 2020 13:43:07 GMT):

Screenshot from 2020-04-08 15-41-32.png

yehia67 (Wed, 08 Apr 2020 13:43:44 GMT):
the link of my issue: https://github.com/hyperledger/besu/issues/681

faraggi (Wed, 08 Apr 2020 15:57:33 GMT):
Thanks yehia67! I'll look at the issue and bump it with the team. However, we usually take longer than 3hs to respond to issues :D

yehia67 (Wed, 08 Apr 2020 16:32:54 GMT):
No problem I will close it. I discovered the solution I should add bootnode command using this command option https://besu.hyperledger.org/en/stable/HowTo/Deploy/Bootnodes/

vanitas92 (Wed, 08 Apr 2020 19:12:49 GMT):
Has joined the channel.

atoulme (Thu, 09 Apr 2020 00:18:00 GMT):
hey folks, the default docker image for besu doesn't have a healthcheck. I see there is a /readiness endpoint that could be used for this. Is it appropriate to rely on it for a healthcheck?

atoulme (Thu, 09 Apr 2020 00:18:17 GMT):
Is there interest in having curl installed in the image by default to run health checks?

shemnon (Thu, 09 Apr 2020 00:23:30 GMT):
Would the `/liveness` endpoint suffice?

atoulme (Thu, 09 Apr 2020 00:24:43 GMT):
I mean, both work for me

shemnon (Thu, 09 Apr 2020 00:24:45 GMT):
liveness responds if the JVM is operable and vertx is servinf. readyness returns true only when in sync.

shemnon (Thu, 09 Apr 2020 00:25:10 GMT):
in sync and has peers I should say.

atoulme (Thu, 09 Apr 2020 00:25:11 GMT):
I see, so `/liveness` sounds better

atoulme (Thu, 09 Apr 2020 00:25:16 GMT):
right

atoulme (Thu, 09 Apr 2020 00:25:29 GMT):
So the issue is that curl is not installed on the official Dockerfile

atoulme (Thu, 09 Apr 2020 00:25:37 GMT):
health check endpoints run as CMD in docker

atoulme (Thu, 09 Apr 2020 00:26:05 GMT):
https://docs.docker.com/engine/reference/builder/#healthcheck

atoulme (Thu, 09 Apr 2020 00:26:22 GMT):
so 1. Is it ok to change the Dockerfile to install curl?

atoulme (Thu, 09 Apr 2020 00:26:38 GMT):
2. Is it ok to add a HEALTHCHECK instruction to the official Dockerfile?

shemnon (Thu, 09 Apr 2020 00:27:08 GMT):
Tag @EdJoJob or @joshuafernandes for a review, they have stronger opinions in that area.

EdJoJob (Thu, 09 Apr 2020 00:28:22 GMT):
From my POV, yes and yes. I would be happy to see such a healthcheck landing

atoulme (Thu, 09 Apr 2020 00:29:32 GMT):
you got it

joshuafernandes (Thu, 09 Apr 2020 01:03:07 GMT):
same here :thumbsup:

atoulme (Thu, 09 Apr 2020 01:20:38 GMT):
is `/liveness` working even if --rpc-http-enabled is not specified?

atoulme (Thu, 09 Apr 2020 01:20:42 GMT):
I'll check the code.

atoulme (Thu, 09 Apr 2020 01:21:01 GMT):
I just added an example to the splunk ethereum connector leveraging Besu: https://github.com/splunk/splunk-connect-for-ethereum/tree/master/examples/besu

atoulme (Thu, 09 Apr 2020 01:21:28 GMT):
A simple one-node scenario. Splunk takes all the log, block, metrics data and ingests it.

ajsutton (Thu, 09 Apr 2020 01:21:43 GMT):
I'd expect `/liveness` to be disabled if the HTTP APIs are disabled.

atoulme (Thu, 09 Apr 2020 01:22:20 GMT):
hmm I'm seeing this too.

atoulme (Thu, 09 Apr 2020 01:23:02 GMT):
@ajsutton should `/liveness` be enabled even if JSON-RPC HTTP APIs are disabled?

atoulme (Thu, 09 Apr 2020 01:23:58 GMT):
after all, it's not a JSONRPC endpoint.

ajsutton (Thu, 09 Apr 2020 01:24:08 GMT):
Yeah the idea is that the HTTP port is closed by default. And usually there's no real point in checking a HTTP endpoint is alive if nothing else is listening there.

ajsutton (Thu, 09 Apr 2020 01:24:36 GMT):
This makes for an interesting use case though...

ajsutton (Thu, 09 Apr 2020 01:26:34 GMT):
If you don't have HTTP enabled though, what does liveness mean? You could check that the P2P port is open maybe.

atoulme (Thu, 09 Apr 2020 01:34:22 GMT):
sigh

atoulme (Thu, 09 Apr 2020 01:34:53 GMT):
let me see the logic for liveness

atoulme (Thu, 09 Apr 2020 01:35:57 GMT):
I see, there is no logic. The P2P port is not the safest option as it can be overridden.

atoulme (Thu, 09 Apr 2020 01:37:58 GMT):
interesting. So either you commit to have `/liveness` always served, on a separate fixed port from JSON-RPC, only on localhost, or need to use a different approach.

ajsutton (Thu, 09 Apr 2020 01:38:52 GMT):
One option would be to have a separate `--enabled-liveness` check which is defaulted to on in docker via an env var in the docker file (and it could only listen on locahost I think).

atoulme (Thu, 09 Apr 2020 01:39:08 GMT):
right

atoulme (Thu, 09 Apr 2020 01:39:23 GMT):
not a huge endeavor

atoulme (Thu, 09 Apr 2020 01:39:38 GMT):
and we should keep liveness on JSON-RPC anyway

ajsutton (Thu, 09 Apr 2020 01:39:45 GMT):
Just need to remember that for most people having `/liveness` be part of JSON-RPC is really useful. If `/liveness` works then JSON-RPC works. We don't want to lose that by always moving it to it's own server.

atoulme (Thu, 09 Apr 2020 01:39:57 GMT):
so mount the health service in both places

atoulme (Thu, 09 Apr 2020 01:39:59 GMT):
sure thing

atoulme (Thu, 09 Apr 2020 01:40:19 GMT):
this is a perfect problem to look at 20 minutes away from dinner

atoulme (Thu, 09 Apr 2020 01:41:19 GMT):
alright, I'll work on that

ajsutton (Thu, 09 Apr 2020 01:42:26 GMT):
ooo, the other option is that besu writes out a ports file which you could use to find the p2p port.

RealDeanZhao (Thu, 09 Apr 2020 06:33:34 GMT):
```final EthFilter ethFilter = new EthFilter( DefaultBlockParameterName.EARLIEST, DefaultBlockParameterName.LATEST, "0xf57001f4e592E7a2bc44DE01b0858686d6d65027"); final Disposable sub = web3j.ethGetLogs(ethFilter).flowable().subscribe( x -> System.out.println(x.getLogs().size()), Throwable::printStackTrace );``` Hi Team, I cannot subscribe the event with besu 1.3.7. I tried both http and ws service using web3j. For websocket, the exception is: org.java_websocket.exceptions.WebsocketNotConnectedException . For http, the exception is SocketTimeoutException

RealDeanZhao (Thu, 09 Apr 2020 06:39:17 GMT):
```d-thread-checker | WARN | BlockedThreadChecker | Thread Thread[vert.x-worker-thread-8,5,main]=Thread[vert.x-worker-thread-8,5,main] has been blocked for 111931 ms, time limit is 60000 ms io.vertx.core.VertxException: Thread blocked at org.rocksdb.RocksDB.get(Native Method) ~[rocksdbjni-6.2.4.jar:?] at org.rocksdb.RocksDB.get(RocksDB.java:1721) ~[rocksdbjni-6.2.4.jar:?] at org.hyperledger.besu.plugin.services.storage.rocksdb.segmented.RocksDBColumnarKeyValueStorage.get(RocksDBColumnarKeyValueStorage.java:153) ~[besu-plugin-rocksdb-1.3.7.jar:1.3.7] at org.hyperledger.besu.plugin.services.storage.rocksdb.segmented.RocksDBColumnarKeyValueStorage.get(RocksDBColumnarKeyValueStorage.java:60) ~[besu-plugin-rocksdb-1.3.7.jar:1.3.7] at org.hyperledger.besu.services.kvstore.SegmentedKeyValueStorageAdapter.get(SegmentedKeyValueStorageAdapter.java:50) ~[besu-kvstore-1.3.7.jar:1.3.7] at org.hyperledger.besu.ethereum.storage.keyvalue.KeyValueStoragePrefixedKeyBlockchainStorage.get(KeyValueStoragePrefixedKeyBlockchainStorage.java:123) ~[besu-core-1.3.7.jar:1.3.7] at org.hyperledger.besu.ethereum.storage.keyvalue.KeyValueStoragePrefixedKeyBlockchainStorage.getBlockHeader(KeyValueStoragePrefixedKeyBlockchainStorage.java:78) ~[besu-core-1.3.7.jar:1.3.7] at org.hyperledger.besu.ethereum.chain.DefaultBlockchain$$Lambda$518/0x000000084046f040.apply(Unknown Source) ~[?:?] at java.util.Optional.flatMap(Optional.java:294) ~[?:?] at org.hyperledger.besu.ethereum.chain.DefaultBlockchain.getBlockHeader(DefaultBlockchain.java:176) ~[besu-core-1.3.7.jar:1.3.7] at org.hyperledger.besu.ethereum.api.query.BlockchainQueries$$Lambda$666/0x00000008404eb840.apply(Unknown Source) ~[?:?] at java.util.stream.LongPipeline$1$1.accept(LongPipeline.java:177) ~[?:?] at java.util.stream.Streams$RangeLongSpliterator.tryAdvance(Streams.java:207) ~[?:?] at java.util.stream.LongPipeline.forEachWithCancel(LongPipeline.java:161) ~[?:?] at java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:502) ~[?:?] at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:488) ~[?:?] at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474) ~[?:?] at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:913) ~[?:?] at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:?] at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:578) ~[?:?] at org.hyperledger.besu.ethereum.api.query.BlockchainQueries.matchingLogsUncached(BlockchainQueries.java:553) ~[besu-api-1.3.7.jar:1.3.7] at org.hyperledger.besu.ethereum.api.query.BlockchainQueries.lambda$matchingLogs$18(BlockchainQueries.java:532) ~[besu-api-1.3.7.jar:1.3.7] at org.hyperledger.besu.ethereum.api.query.BlockchainQueries$$Lambda$665/0x00000008404ea440.get(Unknown Source) ~[?:?] at java.util.Optional.orElseGet(Optional.java:369) ~[?:?] at org.hyperledger.besu.ethereum.api.query.BlockchainQueries.matchingLogs(BlockchainQueries.java:530) ~[besu-api-1.3.7.jar:1.3.7] at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthGetLogs.response(EthGetLogs.java:62) ~[besu-api-1.3.7.jar:1.3.7] at org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService.process(JsonRpcHttpService.java:497) ~[besu-api-1.3.7.jar:1.3.7] at org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService.lambda$handleJsonSingleRequest$6(JsonRpcHttpService.java:375) ~[besu-api-1.3.7.jar:1.3.7] at org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService$$Lambda$653/0x00000008404a4040.handle(Unknown Source) ~[?:?] at io.vertx.core.impl.ContextImpl.lambda$executeBlocking$2(ContextImpl.java:316) ~[vertx-core-3.8.0.jar:3.8.0] at io.vertx.core.impl.ContextImpl$$Lambda$622/0x000000084049d840.run(Unknown Source) ~[?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[?:?] at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) ~[netty-common-4.1.34.Final.jar:4.1.34.Final] at java.lang.Thread.run(Thread.java:834) ~[?:?]``` Logs from besu node

RealDeanZhao (Thu, 09 Apr 2020 07:07:59 GMT):
I have solved the above issue: the block range in the filter is too wide, increase the from block will help.

yehia67 (Thu, 09 Apr 2020 13:37:28 GMT):
ibft2 dosen't stop mining when I use `curl -X POST --data '{"jsonrpc":"2.0","method":miner_stop","params":[],"id":1}' http://127.0.0.1:8545 ` anyone know why?

timbeiko (Thu, 09 Apr 2020 19:47:14 GMT):
:besu: We just released a new version of Besu, 1.4.3 :besu: It now supports the eth/65 protocol and exposes re-orgs and transaction revert reasons via our Plugin API. You can get it here: https://github.com/hyperledger/besu/releases/tag/1.4.3

ajsutton (Thu, 09 Apr 2020 22:18:20 GMT):
For PoA systems like Clique and IBFT, besu will automatically mine whenever it is one of the validators. Basically whether you're a block creator or not is built into the protocol whereas with PoW it's an optional extra duty .

atoulme (Thu, 09 Apr 2020 22:57:03 GMT):
does it always do that?

ajsutton (Fri, 10 Apr 2020 00:37:05 GMT):
Yes I think so. In the data directory. It deletes the file when it shuts down normally.

ajsutton (Fri, 10 Apr 2020 00:38:01 GMT):
So checking if the process is running and that file is written would be a pretty good liveness Check actually. It’s very careful to ensure the file is only written after all the ports are open since that’s what our acceptance tests depend on.

reddy (Fri, 10 Apr 2020 00:49:36 GMT):

Clipboard - April 10, 2020 9:49 AM

reddy (Fri, 10 Apr 2020 00:50:05 GMT):

Clipboard - April 10, 2020 9:49 AM

reddy (Fri, 10 Apr 2020 00:52:33 GMT):
It returns error when generating websocket jwt token

reddy (Fri, 10 Apr 2020 00:53:17 GMT):
http jwt token generation is ok.

reddy (Fri, 10 Apr 2020 00:56:24 GMT):
I'm using besu 1.4.2

atoulme (Fri, 10 Apr 2020 01:53:08 GMT):
yeah that sounds good, I'd just use that

atoulme (Fri, 10 Apr 2020 01:53:32 GMT):
what if the process crashed? Is the file deleted early on on startup?

shemnon (Fri, 10 Apr 2020 01:53:37 GMT):
curl dosen't play well with websockets. try wscat - https://github.com/websockets/wscat

ajsutton (Fri, 10 Apr 2020 01:54:22 GMT):
Hmm not sure. If it doesn’t it would be easy to add.

atoulme (Fri, 10 Apr 2020 01:54:54 GMT):
I'll check, this is much easier to implement.

atoulme (Fri, 10 Apr 2020 02:05:30 GMT):
oh I forgot one thing, dataDir can be changed.

ajsutton (Fri, 10 Apr 2020 02:06:36 GMT):
Hmm true. That’s more challenging.

atoulme (Fri, 10 Apr 2020 02:13:18 GMT):
ok. Well in that spirit we could maybe write a pointer file at the request of the user based on an additional setting

atoulme (Fri, 10 Apr 2020 02:13:54 GMT):
an additional config key that gives a path where to write the file, and the file acts as a PID file. May be useful for linux services too.

reddy (Fri, 10 Apr 2020 02:24:43 GMT):
https://besu.hyperledger.org/en/stable/HowTo/Interact/APIs/Authentication/

reddy (Fri, 10 Apr 2020 02:25:02 GMT):

Clipboard - April 10, 2020 11:24 AM

shemnon (Fri, 10 Apr 2020 02:26:00 GMT):
I wasn't aware of that documentation. That's one for @NicolasMassart

reddy (Fri, 10 Apr 2020 02:28:53 GMT):
the following tests doesn't work for me

reddy (Fri, 10 Apr 2020 02:29:10 GMT):

Clipboard - April 10, 2020 11:29 AM

reddy (Fri, 10 Apr 2020 02:30:01 GMT):
Could you tell me how to generate websocket JWT token ?

NicolasMassart (Fri, 10 Apr 2020 10:17:16 GMT):
Hi, this page is indeed one that we are planning to rework to make it clearer. Let me come back to you soon with an answer. I have to ask colleagues.

Jemal (Fri, 10 Apr 2020 13:30:48 GMT):
Hi guys, i am opening several connections (up to 10,000) to Besu node using Http connection. It works fine when the number of connections is low but gives me socket connection closed error when the number is large. Is there a limit to the number of open http connections i can make to Besu node?

Jemal (Fri, 10 Apr 2020 13:58:41 GMT):
my network is a local private network running on ubuntu 18.04 Virtual machine

MumtahinHabib (Fri, 10 Apr 2020 16:01:29 GMT):
Has joined the channel.

faraggi (Fri, 10 Apr 2020 16:22:06 GMT):
This is more of a vertx problem than a besu problem, because we use vertx. 10k open sockets is a very big number, representing 1/3 of the possible available ports. It can be tuned - https://stackoverflow.com/questions/58361727/multiple-concurrent-connections-with-vertx Are you opening up 10k connections just to benchmark? Architecture wise we would recommend multiple RPC nodes in that case or connecting via websockets.

magooster (Fri, 10 Apr 2020 16:39:19 GMT):
The login endpoint is accessed over http

magooster (Fri, 10 Apr 2020 16:44:27 GMT):
You can then the token returned to connect with wscat as follows

magooster (Fri, 10 Apr 2020 16:45:24 GMT):
wscat -c ws://: -H 'Authorization: Bearer '

magooster (Fri, 10 Apr 2020 16:46:29 GMT):
ath the prompt you can then make rpc calls such as

magooster (Fri, 10 Apr 2020 16:46:55 GMT):
{"jsonrpc":"2.0","method":"web3_clientVersion","params":[],"id":53}

rickkce (Fri, 10 Apr 2020 18:10:00 GMT):
Has joined the channel.

rickkce (Fri, 10 Apr 2020 18:10:02 GMT):
Hello guys, the German government is supporting open-source projects similar to the summer of code from google. For that, I would like to work on Hyperledger. The start will be July. I need a mentor and an idea for content I can contribute to the open-source project. I'm an experienced fullstack dev, worked with Etherum and have a knowledge of other Blockchains. Is there anyone that can help me find a topic I could work on? Highly appreciate you help

Jemal (Fri, 10 Apr 2020 19:34:44 GMT):
@faraggi thanks for the reply. Yes I am doing that for bench marking purpose. The network size is actually round 20-60 nodes. But all of the nodes and client apps are running on one ubuntu Virtual machine with 16 CPU cores and 120 GB RAM. I start to receive socket time out and "transaction receive was not generated after 600 seconds for transaction" once the number of open sockets reaches around 2000. You mentioned connecting via websockets. Do websockets allow more connection than than HttP?

Jemal (Fri, 10 Apr 2020 19:34:44 GMT):
@faraggi thanks for the reply. Yes I am doing that for bench marking purpose. The network size is actually round 20-60 nodes. i believe that is enough number to open up to 10k sockets at a time. But all of the nodes and client app are running on one ubuntu Virtual machine with 16 CPU cores and 120 GB RAM. I start to receive socket time out exception once the number of open sockets reaches around 2000. I am using Web3j API to connect to the nodes. Below is how i create the sockets. You mentioned connecting via websockets. Do websockets allow more connection than than HttP? Web3j socket=Web3j.build(new HttpService("http://localhost:8545),1000, Async.defaultExecutorService() );

shemnon (Fri, 10 Apr 2020 20:35:59 GMT):
Websockets allow the connection to stay open, so the overhead of opening and closing goes down and the calls can be multiplexed.

shemnon (Fri, 10 Apr 2020 20:38:23 GMT):
For the socket handling 16 cores between 20-60 nodes could be the root of the problem. 120gb memory is enough for 30 nodes (4gb each) per our recommended setup but a 16 core machine should be topping out at 8 nodes.

AshutoshKumar7 (Sat, 11 Apr 2020 02:56:11 GMT):
Has joined the channel.

Jemal (Sat, 11 Apr 2020 05:23:33 GMT):
@faraggi thank you. I tried it by reducing the number of nodes to 8. But the problem persists. I guess it is not CPU issue. I will try with webscokets and let you know

Jemal (Sat, 11 Apr 2020 05:23:33 GMT):
@shemnon and @faraggi thank you. I tried it by reducing the number of nodes to 8. But the problem persists. I guess it is not CPU issue. I will try with webscokets and let you know

Bobur (Mon, 13 Apr 2020 00:45:40 GMT):
Hello guys I have a question regarding Swarm storage. Is there any plan in the road map to support Swarm in Besu in near future? Thank you!

Bobur (Mon, 13 Apr 2020 00:45:40 GMT):
Hello guys I have a question regarding Swarm storage. Is there any plan in the road map to support Swarm in Besu in near future? And, is there any ipc file in besu like geth client? Thank you!

MrPhenom (Mon, 13 Apr 2020 08:51:11 GMT):
Has joined the channel.

shemnon (Mon, 13 Apr 2020 15:21:39 GMT):
Besu Contributor Call Tomorrow - https://wiki.hyperledger.org/display/BESU/2020-04-14+Besu+Contributor+Call - EMEA friendly times

lucassaldanha (Mon, 13 Apr 2020 21:33:35 GMT):
Hi Bobur! I don't know if there are plans to support Swarm in the near future. I'll let someone else answer this one. About IPC files, I'm assuming you are asking about using IPC to interact with JSON-RPC API. At the moment Besu only supports JSON-RPC through HTTP. It doesn't have IPC support yet.

Bobur (Tue, 14 Apr 2020 00:10:37 GMT):
Thank you @lucassaldanha for your reply. Appreciated

NikosFotiadis (Tue, 14 Apr 2020 05:42:23 GMT):
Hi guys, We have been using hyperledger/besu:1.4.2 for some time now and I have noticed that sending a transaction with lower nonce does not return the error I was expecting. Instead I don't get an error at all. It seems like there is not response at all. I have looked at the logs while sending the transaction but I did not find anything that seemed related. Any idea why this would happed or is I should be looking for something specific in the logs?

faraggi (Tue, 14 Apr 2020 08:41:42 GMT):
:mega: Besu Contributor Call Today - https://wiki.hyperledger.org/display/BESU/2020-04-14+Besu+Contributor+Call - EMEA friendly times (T-7hs) 8am Tuesday (3 Mar) Los Angeles 11 am Tuesday (3 Mar) New York 3pm Tuesday (3 Mar) UTC 4 pm Tuesday (3 Mar) Paris/Berlin 1 am Wednesday (4 Mar) Brisbane :mega:

faraggi (Tue, 14 Apr 2020 08:41:42 GMT):
:mega: Besu Contributor Call Today - https://wiki.hyperledger.org/display/BESU/2020-04-14+Besu+Contributor+Call - EMEA friendly times (T-7hs) 8am Tuesday (13 Mar) Los Angeles 11 am Tuesday (13 Mar) New York 3pm Tuesday (13 Mar) UTC 4 pm Tuesday (13 Mar) Paris/Berlin 1 am Wednesday (14 Mar) Brisbane :mega:

faraggi (Tue, 14 Apr 2020 08:41:42 GMT):
:mega: Besu Contributor Call Today - https://wiki.hyperledger.org/display/BESU/2020-04-14+Besu+Contributor+Call - EMEA friendly times (T-7hs) 8am Tuesday (13 Mar) Los Angeles 11 am Tuesday (13 Mar) New York 3pm Tuesday (13 Mar) UTC 5 pm Tuesday (13 Mar) Paris/Berlin 1 am Wednesday (14 Mar) Brisbane :mega:

faraggi (Tue, 14 Apr 2020 08:41:42 GMT):
:mega: Besu Contributor Call Today - https://wiki.hyperledger.org/display/BESU/2020-04-14+Besu+Contributor+Call - EMEA friendly times (T-7hs) 8am Tuesday (13 Mar) Los Angeles 11 am Tuesday (13 Mar) New York 3 pm Tuesday (13 Mar) UTC 5 pm Tuesday (13 Mar) Paris/Berlin 1 am Wednesday (14 Mar) Brisbane :mega:

faraggi (Tue, 14 Apr 2020 08:41:42 GMT):
:mega: Besu Contributor Call Today - https://wiki.hyperledger.org/display/BESU/2020-04-14+Besu+Contributor+Call - EMEA friendly times (T-7hs) 8am Tuesday (14 Mar) Los Angeles 11 am Tuesday (14 Mar) New York 3 pm Tuesday (14 Mar) UTC 5 pm Tuesday (14 Mar) Paris/Berlin 1 am Wednesday (15 Mar) Brisbane :mega:

faraggi (Tue, 14 Apr 2020 08:41:42 GMT):
:mega: Besu Contributor Call Today - https://wiki.hyperledger.org/display/BESU/2020-04-14+Besu+Contributor+Call - EMEA friendly times (T-7hs) 8am Tuesday (14 Apr) Los Angeles 11 am Tuesday (14 Apr) New York 3 pm Tuesday (14 Apr) UTC 5 pm Tuesday (14 Apr) Paris/Berlin 1 am Wednesday (15 Apr) Brisbane :mega:

faraggi (Tue, 14 Apr 2020 08:42:26 GMT):
Nikos, if you'd like, you can show up to our contributor call today and ask the maintainer's the question directly. (link above)

faraggi (Tue, 14 Apr 2020 08:43:28 GMT):
I've gone ahead and added your question in case you can't make and you can watch the recording.

rohitgupta027 (Tue, 14 Apr 2020 10:40:38 GMT):
Has joined the channel.

rohitgupta027 (Tue, 14 Apr 2020 10:49:26 GMT):
Hi guys, I have deployed the `besu-kubernetes` on minikube with a setup of 1 Node service and 4 validators (as default config) which is working fine. Now I want to run another node as a validator on my local terminal and connect to the minikube cluster. So to achieve that I have exposed the TCP service`besu-validator1` as defined in https://minikube.sigs.k8s.io/docs/tutorials/nginx_tcp_udp_ingress/ After following all the steps if I do telnet on tcp port 30303 I get below message as `Connection closed by foreign host.` after ~15sec

rohitgupta027 (Tue, 14 Apr 2020 10:49:26 GMT):
Hi guys, I have deployed the `besu-kubernetes` on minikube with a setup of 1 Node service and 4 validators (as default config) which is working fine. Now I want to run another node as a validator on my local terminal and connect to the minikube cluster. So to achieve that I have exposed the TCP service`besu-validator1` as defined in https://minikube.sigs.k8s.io/docs/tutorials/nginx_tcp_udp_ingress/ After following all the steps if I do telnet on tcp port 30303 I get below message as `Connection closed by foreign host.` after ~15sec `~telnet $(minikube ip) 30303 Trying 192.168.99.107... Connected to 192.168.99.107. Escape character is '^]'. Connection closed by foreign host.~`

rohitgupta027 (Tue, 14 Apr 2020 10:49:26 GMT):
Hi guys, I have deployed the `besu-kubernetes` on minikube with a setup of 1 Node service and 4 validators (as default config) which is working fine. Now I want to run another node as a validator on my local terminal and connect to the minikube cluster. So to achieve that I have exposed the TCP service`besu-validator1` as defined in https://minikube.sigs.k8s.io/docs/tutorials/nginx_tcp_udp_ingress/ After following all the steps if I do telnet on tcp port 30303 I get below message as `Connection closed by foreign host.` after ~15sec ``` telnet $(minikube ip) 30303 Trying 192.168.99.107... Connected to 192.168.99.107. Escape character is '^]'. Connection closed by foreign host. ``` nc -vz $(minikube ip) 30303 Connection to 192.168.99.107 port 30303 [tcp/*] succeeded! However if I run besu node from my terminal it is not able to find its peer 2020-04-14 12:36:03.236+02:00 | vert.x-eventloop-thread-1 | WARN | PeerDiscoveryAgent | Sending to peer DiscoveryPeer{status=bonding, enode=enode://@:30303, firstDiscovered=1586860536837, lastContacted=1586860553109, lastSeen=0} failed, packet: java.net.NoRouteToHostException: No route to host at sun.nio.ch.DatagramChannelImpl.send0(Native Method) ~[?:?] at sun.nio.ch.DatagramChannelImpl.sendFromNativeBuffer(DatagramChannelImpl.java:860) ~[?:?]

rohitgupta027 (Tue, 14 Apr 2020 10:49:26 GMT):
Hi guys, I have deployed the `besu-kubernetes` on minikube with a setup of 1 Node service and 4 validators (as default config) which is working fine. Now I want to run another node as a validator on my local terminal and connect to the minikube cluster. So to achieve that I have exposed the TCP service`besu-validator1` as defined in https://minikube.sigs.k8s.io/docs/tutorials/nginx_tcp_udp_ingress/ After following all the steps if I do telnet on tcp port 30303 I get below message as `Connection closed by foreign host.` after ~15sec ``` telnet $(minikube ip) 30303 Trying 192.168.99.107... Connected to 192.168.99.107. Escape character is '^]'. Connection closed by foreign host. ``` ``` nc -vz $(minikube ip) 30303 Connection to 192.168.99.107 port 30303 [tcp/*] succeeded! ``` However if I run besu node from my terminal it is not able to find its peer ``` 2020-04-14 12:36:03.236+02:00 | vert.x-eventloop-thread-1 | WARN | PeerDiscoveryAgent | Sending to peer DiscoveryPeer{status=bonding, enode=enode://@:30303, firstDiscovered=1586860536837, lastContacted=1586860553109, lastSeen=0} failed, packet: java.net.NoRouteToHostException: No route to host at sun.nio.ch.DatagramChannelImpl.send0(Native Method) ~[?:?] at sun.nio.ch.DatagramChannelImpl.sendFromNativeBuffer(DatagramChannelImpl.java:860) ~[?:?] ```

rohitgupta027 (Tue, 14 Apr 2020 10:49:26 GMT):
Hi guys, I have deployed the `besu-kubernetes` on minikube with a setup of 1 Node service and 4 validators (as default config) which is working fine. Now I want to run another node as a validator on my local terminal and connect to the minikube cluster. So to achieve that I have exposed the TCP service`besu-validator1` as defined in https://minikube.sigs.k8s.io/docs/tutorials/nginx_tcp_udp_ingress/ After following all the steps if I do telnet on tcp port 30303 I get below message as `Connection closed by foreign host.` after ~15sec ``` telnet $(minikube ip) 30303 Trying 192.168.99.107... Connected to 192.168.99.107. Escape character is '^]'. Connection closed by foreign host. ``` ``` nc -vz $(minikube ip) 30303 Connection to 192.168.99.107 port 30303 [tcp/*] succeeded! ``` However if I run besu node from my terminal it is not able to find its peers, I got below logs by setting logging as TRACE and ``` 2020-04-14 12:36:03.236+02:00 | vert.x-eventloop-thread-1 | WARN | PeerDiscoveryAgent | Sending to peer DiscoveryPeer{status=bonding, enode=enode://@:30303, firstDiscovered=1586860536837, lastContacted=1586860553109, lastSeen=0} failed, packet: java.net.NoRouteToHostException: No route to host at sun.nio.ch.DatagramChannelImpl.send0(Native Method) ~[?:?] at sun.nio.ch.DatagramChannelImpl.sendFromNativeBuffer(DatagramChannelImpl.java:860) ~[?:?] ``` Can you help me whats wrong going here?

rohitgupta027 (Tue, 14 Apr 2020 10:49:26 GMT):
Hi guys, I have deployed the `besu-kubernetes` on minikube with a setup of 1 Node service and 4 validators (as default config) which is working fine. Now I want to run another node as a validator on my local terminal and connect to the minikube cluster. So to achieve that I have exposed the TCP service`besu-validator1` as defined in https://minikube.sigs.k8s.io/docs/tutorials/nginx_tcp_udp_ingress/ After following all the steps if I do telnet on tcp port 30303 I get below message as `Connection closed by foreign host.` after ~15sec ``` telnet $(minikube ip) 30303 Trying 192.168.99.107... Connected to 192.168.99.107. Escape character is '^]'. Connection closed by foreign host. ``` ``` nc -vz $(minikube ip) 30303 Connection to 192.168.99.107 port 30303 [tcp/*] succeeded! ``` However if I run besu node from my terminal it is not able to find its peers, I got below logs by setting logging as TRACE and using this command: `besu --config-file=./config.toml --bootnodes=enode://@:30303 --data-path=data ` ``` 2020-04-14 12:36:03.236+02:00 | vert.x-eventloop-thread-1 | WARN | PeerDiscoveryAgent | Sending to peer DiscoveryPeer{status=bonding, enode=enode://@:30303, firstDiscovered=1586860536837, lastContacted=1586860553109, lastSeen=0} failed, packet: java.net.NoRouteToHostException: No route to host at sun.nio.ch.DatagramChannelImpl.send0(Native Method) ~[?:?] at sun.nio.ch.DatagramChannelImpl.sendFromNativeBuffer(DatagramChannelImpl.java:860) ~[?:?] ``` Can you help me whats wrong going here?

rohitgupta027 (Tue, 14 Apr 2020 10:49:26 GMT):
Hi guys, I have deployed the `besu-kubernetes` on minikube with a setup of 1 Node service and 4 validators (as default config) which is working fine. Now I want to run another node as a validator on my local terminal and connect to the minikube cluster. So to achieve that I have exposed the TCP service`besu-validator1` as defined in https://minikube.sigs.k8s.io/docs/tutorials/nginx_tcp_udp_ingress/ After following all the steps if I do telnet on tcp port 30303 I get below message as `Connection closed by foreign host.` after ~15sec ``` telnet $(minikube ip) 30303 Trying 192.168.99.107... Connected to 192.168.99.107. Escape character is '^]'. Connection closed by foreign host. ``` ``` nc -vz $(minikube ip) 30303 Connection to 192.168.99.107 port 30303 [tcp/*] succeeded! ``` However if I run besu node from my terminal it is not able to find its peers, I got below logs by setting logging as TRACE and using this command: `besu --config-file=./config.toml --bootnodes=enode://@:30303 --data-path=data ` Error message: ``` 2020-04-14 12:36:03.236+02:00 | vert.x-eventloop-thread-1 | WARN | PeerDiscoveryAgent | Sending to peer DiscoveryPeer{status=bonding, enode=enode://@:30303, firstDiscovered=1586860536837, lastContacted=1586860553109, lastSeen=0} failed, packet: java.net.NoRouteToHostException: No route to host at sun.nio.ch.DatagramChannelImpl.send0(Native Method) ~[?:?] at sun.nio.ch.DatagramChannelImpl.sendFromNativeBuffer(DatagramChannelImpl.java:860) ~[?:?] ``` Can you help me whats wrong going here?

rohitgupta027 (Tue, 14 Apr 2020 10:49:26 GMT):
Hi guys, I have deployed the `besu-kubernetes` on minikube with a setup of 1 Node service and 4 validators (as default config) which is working fine. Now I want to run another node as a validator on my local terminal and connect to the minikube cluster. So to achieve that I have exposed the TCP service`besu-validator1` as defined in https://minikube.sigs.k8s.io/docs/tutorials/nginx_tcp_udp_ingress/ After following all the steps if I do telnet on tcp port 30303 I get below message as `Connection closed by foreign host.` after ~15sec ``` telnet $(minikube ip) 30303 Trying 192.168.99.107... Connected to 192.168.99.107. Escape character is '^]'. Connection closed by foreign host. ``` ``` nc -vz $(minikube ip) 30303 Connection to 192.168.99.107 port 30303 [tcp/*] succeeded! ``` However if I run besu node from my terminal it is not able to find its peers, I got below logs by setting logging as TRACE and using this command: `besu --config-file=./config.toml --bootnodes=enode://@:30303 --data-path=data ` Warning message: ``` 2020-04-14 12:36:03.236+02:00 | vert.x-eventloop-thread-1 | WARN | PeerDiscoveryAgent | Sending to peer DiscoveryPeer{status=bonding, enode=enode://@:30303, firstDiscovered=1586860536837, lastContacted=1586860553109, lastSeen=0} failed, packet: java.net.NoRouteToHostException: No route to host at sun.nio.ch.DatagramChannelImpl.send0(Native Method) ~[?:?] at sun.nio.ch.DatagramChannelImpl.sendFromNativeBuffer(DatagramChannelImpl.java:860) ~[?:?] ...... at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:905) [netty-common-4.1.34.Final.jar:4.1.34.Final] at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) [netty-common-4.1.34.Final.jar:4.1.34.Final] at java.lang.Thread.run(Thread.java:832) [?:?] 2020-04-14 12:36:06.849+02:00 | vert.x-eventloop-thread-1 | DEBUG | PeerDiscoveryController | Peer table refresh triggered by timer expiry 2020-04-14 12:36:06.849+02:00 | pool-10-thread-1 | TRACE | DefaultP2PNetwork | Initiating connections to discovered peers. 2020-04-14 12:36:06.851+02:00 | vert.x-eventloop-thread-1 | DEBUG | RecursivePeerRefreshState | Start peer search. 2020-04-14 12:36:06.852+02:00 | vert.x-eventloop-thread-1 | DEBUG | RecursivePeerRefreshState | Skipping bonding round because no candidates are available 2020-04-14 12:36:06.852+02:00 | vert.x-eventloop-thread-1 | DEBUG | RecursivePeerRefreshState | Iterative peer search complete. 0 peers processed over 1 rounds. 2020-04-14 12:36:06.869+02:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, wait for peers. 2020-04-14 12:36:06.869+02:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. ``` Can you help me whats wrong going here?

rohitgupta027 (Tue, 14 Apr 2020 10:49:26 GMT):
Hi guys, I have deployed the `besu-kubernetes` on minikube with a setup of 1 Node service and 4 validators (as default config) which is working fine. Now I want to run another node as a validator on my local terminal and connect to the minikube cluster. So to achieve that I have exposed the TCP service`besu-validator1` as defined in https://minikube.sigs.k8s.io/docs/tutorials/nginx_tcp_udp_ingress/ After following all the steps if I do telnet on tcp port 30303 I get below message as `Connection closed by foreign host.` after ~15sec ``` telnet $(minikube ip) 30303 Trying 192.168.99.107... Connected to 192.168.99.107. Escape character is '^]'. Connection closed by foreign host. ``` ``` nc -vz $(minikube ip) 30303 Connection to 192.168.99.107 port 30303 [tcp/*] succeeded! ``` However if I run besu node from my terminal it is not able to find its peers, I got below logs by setting logging as TRACE and using this command: `besu --config-file=./config.toml --bootnodes=enode://@:30303 --data-path=data ` Warning message: ``` 2020-04-14 12:36:03.236+02:00 | vert.x-eventloop-thread-1 | WARN | PeerDiscoveryAgent | Sending to peer DiscoveryPeer{status=bonding, enode=enode://@:30303, firstDiscovered=1586860536837, lastContacted=1586860553109, lastSeen=0} failed, packet: java.net.NoRouteToHostException: No route to host at sun.nio.ch.DatagramChannelImpl.send0(Native Method) ~[?:?] at sun.nio.ch.DatagramChannelImpl.sendFromNativeBuffer(DatagramChannelImpl.java:860) ~[?:?] ...... at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:905) [netty-common-4.1.34.Final.jar:4.1.34.Final] at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) [netty-common-4.1.34.Final.jar:4.1.34.Final] at java.lang.Thread.run(Thread.java:832) [?:?] 2020-04-14 12:36:06.849+02:00 | vert.x-eventloop-thread-1 | DEBUG | PeerDiscoveryController | Peer table refresh triggered by timer expiry 2020-04-14 12:36:06.849+02:00 | pool-10-thread-1 | TRACE | DefaultP2PNetwork | Initiating connections to discovered peers. 2020-04-14 12:36:06.851+02:00 | vert.x-eventloop-thread-1 | DEBUG | RecursivePeerRefreshState | Start peer search. 2020-04-14 12:36:06.852+02:00 | vert.x-eventloop-thread-1 | DEBUG | RecursivePeerRefreshState | Skipping bonding round because no candidates are available 2020-04-14 12:36:06.852+02:00 | vert.x-eventloop-thread-1 | DEBUG | RecursivePeerRefreshState | Iterative peer search complete. 0 peers processed over 1 rounds. 2020-04-14 12:36:06.869+02:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, wait for peers. 2020-04-14 12:36:06.869+02:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. ``` Can anyone help me identifying what's wrong going here?

Helder_jn_Pinto (Tue, 14 Apr 2020 11:06:13 GMT):
Has joined the channel.

Helder_jn_Pinto (Tue, 14 Apr 2020 11:06:15 GMT):
hi, exist any timout for web3.contract get all events ? i used this but when pass like 1 minute the process terminate, i don't know if is besu terminate this connection or web3.

Helder_jn_Pinto (Tue, 14 Apr 2020 11:06:30 GMT):
anyone can help with this ?

faraggi (Tue, 14 Apr 2020 13:44:27 GMT):
:mega: Besu Contributor Call Today - https://wiki.hyperledger.org/display/BESU/2020-04-14+Besu+Contributor+Call - EMEA friendly times (T-1h15) 8am Tuesday (14 Apr) Los Angeles 11 am Tuesday (14 Apr) New York 3 pm Tuesday (14 Apr) UTC 5 pm Tuesday (14 Apr) Paris/Berlin 1 am Wednesday (15 Apr) Brisbane :mega:

abdelhamidbakhta (Tue, 14 Apr 2020 15:45:31 GMT):
Hey. Can you please add a high level scenario ? Basically the different calls you do and the responses you get. That would be useful

soyama-dclab (Wed, 15 Apr 2020 05:28:22 GMT):
Has joined the channel.

NikosFotiadis (Wed, 15 Apr 2020 09:32:55 GMT):
@faraggi Thanks, I could not make it to the call but I wll take a look since it is recorded.

NikosFotiadis (Wed, 15 Apr 2020 09:33:34 GMT):
@abdelhamidbakhta Thanks, I will do that and get back to you

faraggi (Wed, 15 Apr 2020 10:20:20 GMT):
Make sure to take a look because it was discussed, although lightly because we had little background info. Video is here: https://wiki.hyperledger.org/display/BESU/2020-04-14+Contributor+Call

faraggi (Wed, 15 Apr 2020 10:20:20 GMT):
Make sure to take a look because it was discussed, although lightly because we had little background info. Video and notes are here: https://wiki.hyperledger.org/display/BESU/2020-04-14+Contributor+Call

faraggi (Wed, 15 Apr 2020 10:21:09 GMT):
Hello everyone! The Besu maintainer team is looking for feedback from people from the community- that means you! :) Please help us by filling our this 5 min survey: https://forms.gle/waKvWjMsyeEyVX716

soyama-dclab (Thu, 16 Apr 2020 06:58:16 GMT):
Hi, I have a question about Truffle test with Besu. I already deployed contracts using `truffle migrate`. It worked well.
 https://besu.hyperledger.org/en/stable/HowTo/Develop-Dapps/Truffle/
https://besu.hyperledger.org/en/stable/HowTo/Configure/FreeGas/
 After that, I ran the test (`truffle test`), and got the following error messages. 
# Truffle ```Error: Transaction has been reverted by the EVM.

``` # Besu ``` node1 | 2020-04-14 10:48:37.279+00:00 | vert.x-worker-thread-10 | ERROR | JsonRpcHttpService | Error processing JSON-RPC requestBody node1 | java.util.NoSuchElementException: No value present node1 | at java.util.Optional.get(Optional.java:148) ~[?:?] node1 | at org.hyperledger.besu.ethereum.mainnet.ValidationResult.getInvalidReason(ValidationResult.java:40) ~[besu-core-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.errorResponse(EthEstimateGas.java:103) ~[besu-api-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.lambda$gasEstimateResponse$0(EthEstimateGas.java:93) ~[besu-api-1.4.3.jar:1.4.3] node1 | at java.util.Optional.map(Optional.java:265) ~[?:?] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.response(EthEstimateGas.java:67) ~[besu-api-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService.process(JsonRpcHttpService.java:589) ~[besu-api-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService.lambda$handleJsonSingleRequest$9(JsonRpcHttpService.java:463) ~[besu-api-1.4.3.jar:1.4.3] node1 | at io.vertx.core.impl.ContextImpl.lambda$executeBlocking$2(ContextImpl.java:316) ~[vertx-core-3.8.5.jar:3.8.5] node1 | at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?] node1 | at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?] node1 | at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) [netty-common-4.1.42.Final.jar:4.1.42.Final] node1 | at java.lang.Thread.run(Thread.java:834) [?:?]

 ``` Could anyone help me?

soyama-dclab (Thu, 16 Apr 2020 06:58:16 GMT):
Hi, I have a question about Truffle test with Besu. I already deployed contracts using `truffle migrate`. It worked well.
 https://besu.hyperledger.org/en/stable/HowTo/Develop-Dapps/Truffle/
https://besu.hyperledger.org/en/stable/HowTo/Configure/FreeGas/
 After that, I ran the test (`truffle test`), and got the following error messages. 
# Truffle ``` Error: Transaction has been reverted by the EVM.

 ``` # Besu ``` node1 | 2020-04-14 10:48:37.279+00:00 | vert.x-worker-thread-10 | ERROR | JsonRpcHttpService | Error processing JSON-RPC requestBody node1 | java.util.NoSuchElementException: No value present node1 | at java.util.Optional.get(Optional.java:148) ~[?:?] node1 | at org.hyperledger.besu.ethereum.mainnet.ValidationResult.getInvalidReason(ValidationResult.java:40) ~[besu-core-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.errorResponse(EthEstimateGas.java:103) ~[besu-api-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.lambda$gasEstimateResponse$0(EthEstimateGas.java:93) ~[besu-api-1.4.3.jar:1.4.3] node1 | at java.util.Optional.map(Optional.java:265) ~[?:?] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.response(EthEstimateGas.java:67) ~[besu-api-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService.process(JsonRpcHttpService.java:589) ~[besu-api-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService.lambda$handleJsonSingleRequest$9(JsonRpcHttpService.java:463) ~[besu-api-1.4.3.jar:1.4.3] node1 | at io.vertx.core.impl.ContextImpl.lambda$executeBlocking$2(ContextImpl.java:316) ~[vertx-core-3.8.5.jar:3.8.5] node1 | at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?] node1 | at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?] node1 | at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) [netty-common-4.1.42.Final.jar:4.1.42.Final] node1 | at java.lang.Thread.run(Thread.java:834) [?:?]

 ``` Could anyone help me?

soyama-dclab (Thu, 16 Apr 2020 06:58:16 GMT):
Hi, I have a question about Truffle test with Besu. I already deployed contracts using `truffle migrate`. It worked well.
 https://besu.hyperledger.org/en/stable/HowTo/Develop-Dapps/Truffle/
https://besu.hyperledger.org/en/stable/HowTo/Configure/FreeGas/
 After that, I ran the test (`truffle test`), and got the following error messages. 
[Truffle] ``` Error: Transaction has been reverted by the EVM.

 ``` [Besu] ``` node1 | 2020-04-14 10:48:37.279+00:00 | vert.x-worker-thread-10 | ERROR | JsonRpcHttpService | Error processing JSON-RPC requestBody node1 | java.util.NoSuchElementException: No value present node1 | at java.util.Optional.get(Optional.java:148) ~[?:?] node1 | at org.hyperledger.besu.ethereum.mainnet.ValidationResult.getInvalidReason(ValidationResult.java:40) ~[besu-core-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.errorResponse(EthEstimateGas.java:103) ~[besu-api-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.lambda$gasEstimateResponse$0(EthEstimateGas.java:93) ~[besu-api-1.4.3.jar:1.4.3] node1 | at java.util.Optional.map(Optional.java:265) ~[?:?] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.response(EthEstimateGas.java:67) ~[besu-api-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService.process(JsonRpcHttpService.java:589) ~[besu-api-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService.lambda$handleJsonSingleRequest$9(JsonRpcHttpService.java:463) ~[besu-api-1.4.3.jar:1.4.3] node1 | at io.vertx.core.impl.ContextImpl.lambda$executeBlocking$2(ContextImpl.java:316) ~[vertx-core-3.8.5.jar:3.8.5] node1 | at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?] node1 | at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?] node1 | at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) [netty-common-4.1.42.Final.jar:4.1.42.Final] node1 | at java.lang.Thread.run(Thread.java:834) [?:?]

 ``` Could anyone help me?

soyama-dclab (Thu, 16 Apr 2020 07:00:48 GMT):
Hi, I have a question about Truffle test with Besu. I already deployed contracts using `truffle migrate`. It worked well.
 https://besu.hyperledger.org/en/stable/HowTo/Develop-Dapps/Truffle/
https://besu.hyperledger.org/en/stable/HowTo/Configure/FreeGas/
 After that, I ran the test (`truffle test`), and got the following error messages. 
[Truffle] ``` Error: Transaction has been reverted by the EVM.

 ``` [Besu] ``` node1 | 2020-04-14 10:48:37.279+00:00 | vert.x-worker-thread-10 | ERROR | JsonRpcHttpService | Error processing JSON-RPC requestBody node1 | java.util.NoSuchElementException: No value present node1 | at java.util.Optional.get(Optional.java:148) ~[?:?] node1 | at org.hyperledger.besu.ethereum.mainnet.ValidationResult.getInvalidReason(ValidationResult.java:40) ~[besu-core-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.errorResponse(EthEstimateGas.java:103) ~[besu-api-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.lambda$gasEstimateResponse$0(EthEstimateGas.java:93) ~[besu-api-1.4.3.jar:1.4.3] node1 | at java.util.Optional.map(Optional.java:265) ~[?:?] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.response(EthEstimateGas.java:67) ~[besu-api-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService.process(JsonRpcHttpService.java:589) ~[besu-api-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService.lambda$handleJsonSingleRequest$9(JsonRpcHttpService.java:463) ~[besu-api-1.4.3.jar:1.4.3] node1 | at io.vertx.core.impl.ContextImpl.lambda$executeBlocking$2(ContextImpl.java:316) ~[vertx-core-3.8.5.jar:3.8.5] node1 | at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?] node1 | at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?] node1 | at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) [netty-common-4.1.42.Final.jar:4.1.42.Final] node1 | at java.lang.Thread.run(Thread.java:834) [?:?]

 ``` Could anyone help me?

soyama-dclab (Thu, 16 Apr 2020 07:00:48 GMT):
Hi, I have a question about Truffle test with Besu. I already deployed contracts using `truffle migrate`. It worked well.
 https://besu.hyperledger.org/en/stable/HowTo/Develop-Dapps/Truffle/
https://besu.hyperledger.org/en/stable/HowTo/Configure/FreeGas/
 After that, I ran the test (`truffle test`), and got the following error messages. 
[Truffle] ``` Error: Transaction has been reverted by the EVM.

 ```

soyama-dclab (Thu, 16 Apr 2020 07:00:48 GMT):
Hi, I have a question about Truffle test with Besu. I already deployed contracts using `truffle migrate`. It worked well.
 https://besu.hyperledger.org/en/stable/HowTo/Develop-Dapps/Truffle/
https://besu.hyperledger.org/en/stable/HowTo/Configure/FreeGas/
 After that, I ran the test (`truffle test`), and got the following error messages. 
[Truffle] `Error: Transaction has been reverted by the EVM.

`

soyama-dclab (Thu, 16 Apr 2020 07:00:48 GMT):
Hi, I have a question about Truffle test with Besu. I already deployed contracts using `truffle migrate`. It worked well.
 https://besu.hyperledger.org/en/stable/HowTo/Develop-Dapps/Truffle/
https://besu.hyperledger.org/en/stable/HowTo/Configure/FreeGas/
 After that, I ran the test (`truffle test`), and got the following error messages. 
[Truffle] `Error: Transaction has been reverted by the EVM.

` [Besu] ``` node1 | 2020-04-14 10:48:37.279+00:00 | vert.x-worker-thread-10 | ERROR | JsonRpcHttpService | Error processing JSON-RPC requestBody node1 | java.util.NoSuchElementException: No value present node1 | at java.util.Optional.get(Optional.java:148) ~[?:?] node1 | at org.hyperledger.besu.ethereum.mainnet.ValidationResult.getInvalidReason(ValidationResult.java:40) ~[besu-core-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.errorResponse(EthEstimateGas.java:103) ~[besu-api-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.lambda$gasEstimateResponse$0(EthEstimateGas.java:93) ~[besu-api-1.4.3.jar:1.4.3] node1 | at java.util.Optional.map(Optional.java:265) ~[?:?] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.response(EthEstimateGas.java:67) ~[besu-api-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService.process(JsonRpcHttpService.java:589) ~[besu-api-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService.lambda$handleJsonSingleRequest$9(JsonRpcHttpService.java:463) ~[besu-api-1.4.3.jar:1.4.3] node1 | at io.vertx.core.impl.ContextImpl.lambda$executeBlocking$2(ContextImpl.java:316) ~[vertx-core-3.8.5.jar:3.8.5] node1 | at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?] node1 | at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?] node1 | at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) [netty-common-4.1.42.Final.jar:4.1.42.Final] node1 | at java.lang.Thread.run(Thread.java:834) [?:?]

 ``` Could anyone help me?

soyama-dclab (Thu, 16 Apr 2020 07:00:48 GMT):
Hi, I have a question about Truffle test with Besu. I already deployed contracts using `truffle migrate`. It worked well.
 https://besu.hyperledger.org/en/stable/HowTo/Develop-Dapps/Truffle/
https://besu.hyperledger.org/en/stable/HowTo/Configure/FreeGas/
 After that, I ran the test (`truffle test`), and got the following error messages. 
[Truffle] `Error: Transaction has been reverted by the EVM.

` [Besu] ```bash node1 | 2020-04-14 10:48:37.279+00:00 | vert.x-worker-thread-10 | ERROR | JsonRpcHttpService | Error processing JSON-RPC requestBody node1 | java.util.NoSuchElementException: No value present node1 | at java.util.Optional.get(Optional.java:148) ~[?:?] node1 | at org.hyperledger.besu.ethereum.mainnet.ValidationResult.getInvalidReason(ValidationResult.java:40) ~[besu-core-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.errorResponse(EthEstimateGas.java:103) ~[besu-api-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.lambda$gasEstimateResponse$0(EthEstimateGas.java:93) ~[besu-api-1.4.3.jar:1.4.3] node1 | at java.util.Optional.map(Optional.java:265) ~[?:?] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.response(EthEstimateGas.java:67) ~[besu-api-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService.process(JsonRpcHttpService.java:589) ~[besu-api-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService.lambda$handleJsonSingleRequest$9(JsonRpcHttpService.java:463) ~[besu-api-1.4.3.jar:1.4.3] node1 | at io.vertx.core.impl.ContextImpl.lambda$executeBlocking$2(ContextImpl.java:316) ~[vertx-core-3.8.5.jar:3.8.5] node1 | at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?] node1 | at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?] node1 | at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) [netty-common-4.1.42.Final.jar:4.1.42.Final] node1 | at java.lang.Thread.run(Thread.java:834) [?:?]

 ``` Could anyone help me?

soyama-dclab (Thu, 16 Apr 2020 07:00:48 GMT):
Hi, I have a question about Truffle test with Besu. I already deployed contracts using `truffle migrate`. It worked well.
 https://besu.hyperledger.org/en/stable/HowTo/Develop-Dapps/Truffle/
https://besu.hyperledger.org/en/stable/HowTo/Configure/FreeGas/
 After that, I ran the test (`truffle test`), and got the following error messages. 
[Truffle] `Error: Transaction has been reverted by the EVM.

` [Besu] ` node1 | 2020-04-14 10:48:37.279+00:00 | vert.x-worker-thread-10 | ERROR | JsonRpcHttpService | Error processing JSON-RPC requestBody node1 | java.util.NoSuchElementException: No value present node1 | at java.util.Optional.get(Optional.java:148) ~[?:?] node1 | at org.hyperledger.besu.ethereum.mainnet.ValidationResult.getInvalidReason(ValidationResult.java:40) ~[besu-core-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.errorResponse(EthEstimateGas.java:103) ~[besu-api-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.lambda$gasEstimateResponse$0(EthEstimateGas.java:93) ~[besu-api-1.4.3.jar:1.4.3] node1 | at java.util.Optional.map(Optional.java:265) ~[?:?] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.response(EthEstimateGas.java:67) ~[besu-api-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService.process(JsonRpcHttpService.java:589) ~[besu-api-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService.lambda$handleJsonSingleRequest$9(JsonRpcHttpService.java:463) ~[besu-api-1.4.3.jar:1.4.3] node1 | at io.vertx.core.impl.ContextImpl.lambda$executeBlocking$2(ContextImpl.java:316) ~[vertx-core-3.8.5.jar:3.8.5] node1 | at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?] node1 | at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?] node1 | at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) [netty-common-4.1.42.Final.jar:4.1.42.Final] node1 | at java.lang.Thread.run(Thread.java:834) [?:?]

 ` Could anyone help me?

soyama-dclab (Thu, 16 Apr 2020 07:00:48 GMT):
Hi, I have a question about Truffle test with Besu. I already deployed contracts using `truffle migrate`. It worked well.
 https://besu.hyperledger.org/en/stable/HowTo/Develop-Dapps/Truffle/
https://besu.hyperledger.org/en/stable/HowTo/Configure/FreeGas/
 After that, I ran the test (`truffle test`), and got the following error messages. 
[Truffle] `Error: Transaction has been reverted by the EVM.

` [Besu] ``` node1 | 2020-04-14 10:48:37.279+00:00 | vert.x-worker-thread-10 | ERROR | JsonRpcHttpService | Error processing JSON-RPC requestBody node1 | java.util.NoSuchElementException: No value present node1 | at java.util.Optional.get(Optional.java:148) ~[?:?] node1 | at org.hyperledger.besu.ethereum.mainnet.ValidationResult.getInvalidReason(ValidationResult.java:40) ~[besu-core-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.errorResponse(EthEstimateGas.java:103) ~[besu-api-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.lambda$gasEstimateResponse$0(EthEstimateGas.java:93) ~[besu-api-1.4.3.jar:1.4.3] node1 | at java.util.Optional.map(Optional.java:265) ~[?:?] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.response(EthEstimateGas.java:67) ~[besu-api-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService.process(JsonRpcHttpService.java:589) ~[besu-api-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService.lambda$handleJsonSingleRequest$9(JsonRpcHttpService.java:463) ~[besu-api-1.4.3.jar:1.4.3] node1 | at io.vertx.core.impl.ContextImpl.lambda$executeBlocking$2(ContextImpl.java:316) ~[vertx-core-3.8.5.jar:3.8.5] node1 | at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?] node1 | at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?] node1 | at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) [netty-common-4.1.42.Final.jar:4.1.42.Final] node1 | at java.lang.Thread.run(Thread.java:834) [?:?]

 ``` Could anyone help me?

yehia67 (Thu, 16 Apr 2020 09:45:21 GMT):
Hello everyone, If I have a private Blockchain using BESU and IBFT2 consensus algorithm. Composed of 8 nodes 2 of them are bootnodes. How many transaction could they make per day approximately?

ppoliani (Thu, 16 Apr 2020 10:25:31 GMT):
@abdelhamidbakhta I've been experiencing this issue as well. Having worked with other Ethereum based clients, the expected behaviour is: 1. If the nonce is lower than the current nonce, this is a violation of the Ethereum protocol rules so you should get an instant error with the following message (ususally): `nonce too low` 2. If the nonce is the same and the transaction has not yet been included in a block the error is `replacement transaction underpriced` 3. Now is the transaction nonce is higher than the current account nonce then it results in a nonce gap and the transaction is stack in the tx pool. I would expect to get error 1 or 2 if one tries to send a two transactions concurrently.

ppoliani (Thu, 16 Apr 2020 11:38:03 GMT):
To give a bit more background, following is the two tx that I sent: ``` { nonce: '0x15c8', gasPrice: '0x0', gasLimit: '0x24ada', to: '0xDA35f4cb13a6ea0144469b23C0fE2F025bD4663B', value: '0x0', data: '0x0' } { nonce: '0x15c8', gasPrice: '0x0', gasLimit: '0x24ada', to: '0xDA35f4cb13a6ea0144469b23C0fE2F025bD4663B', value: '0x0' data:'0x0' } ```

ppoliani (Thu, 16 Apr 2020 11:38:27 GMT):
I do get a response for the first one but not the second one

ppoliani (Thu, 16 Apr 2020 11:39:18 GMT):
I checked the besu tx pool as well and it's empty ``` { "jsonrpc" : "2.0", "id" : 1729, "result" : [ ] } ```

ppoliani (Thu, 16 Apr 2020 11:39:18 GMT):
I checked the besu tx pool as well and it's empty ``` { "jsonrpc" : "2.0", "id" : 1111, "result" : [ ] } ```

ppoliani (Thu, 16 Apr 2020 11:39:59 GMT):
The expected behaviour is to receive `replacement transaction underpriced` error

ppoliani (Thu, 16 Apr 2020 11:40:54 GMT):
I wonder id the fact that I use a fee free network causes this behaviour

ppoliani (Thu, 16 Apr 2020 11:41:42 GMT):
as you can see `gasPrice` is 0 so I wonder if that's make besu believe that it's not an underpriced transaction. I'm just geussing here

niliakis (Thu, 16 Apr 2020 11:44:51 GMT):
Hii, Cound it possible to setup a private network with privacy enabled, but not all besu nodes are connected to an orion node? Also, could it possible to deploy a contract seen by all and just make private transaction to that contract?

ppoliani (Thu, 16 Apr 2020 11:58:39 GMT):
Digging a bit into the raw http request I can see that the response I get is 400 which is currently omitted by the web4 http provider I use

ppoliani (Thu, 16 Apr 2020 11:59:15 GMT):
I don't think a 400 bad request with an empty text is a very helpful response. There is not much information to know how to deal with the error

faraggi (Thu, 16 Apr 2020 12:41:20 GMT):
This will depend on your network topology, transaction types and contents and more. We have third party benchmarking coming up soon. Just as an approximate number; in general, 100-300TPS will be attained normally without much trouble.

faraggi (Thu, 16 Apr 2020 12:45:14 GMT):
1) Yes, this is possible. 2) nope but just in case: @lucassaldanha @StefanPingel

pinges (Thu, 16 Apr 2020 13:06:47 GMT):
The answer to the first question is definitely yes. Nodes without an Orion would not be able to make or receive private transactions. I'm not sure I understand the second question. If you need a contract that can be seen by all nodes, even nodes without an Orion, then this needs to be in the public chain. All nodes can make public transactions to a public contract, but this. You cannot make private transactions to a public contract. One thing that is possible is to read from the public world state when executing a private transaction, but the public state cannot be changed by private transactions. Let me know if I misunderstood your question.

niliakis (Thu, 16 Apr 2020 13:53:30 GMT):
Yes, that is exactly what I was asking. Thank you!

Najah (Thu, 16 Apr 2020 14:18:52 GMT):
Has joined the channel.

madelinemurray (Fri, 17 Apr 2020 00:46:02 GMT):
There's been an issue identified with the 1.4.3 - details have been added to the changelog. https://github.com/hyperledger/besu/blob/master/CHANGELOG.md#143

madelinemurray (Fri, 17 Apr 2020 00:46:02 GMT):
There's been an issue identified with the 1.4.3 release - details have been added to the changelog. https://github.com/hyperledger/besu/blob/master/CHANGELOG.md#143

roderik (Fri, 17 Apr 2020 17:22:41 GMT):
I've been experimenting with the IBFT voting rpc endpoints but i'm hitting some weird things. I have a network with 4 validators and 1 non validator. I add 4 nodes, non validation. they join my network and sync up, blocks are still being mined. I now run, in one go (so semi concurrent and at the same time), on all existing validators the ibft_proposevalidatorvote with the 4 new nodes and all mining stops. Do nodes need to be restarted to change their mining status? Or am I missing something else?

Piyush.Sharma (Fri, 17 Apr 2020 19:02:19 GMT):
Hello Faraggi! Thanks for your suggestion . I will start doing now. As I didn't have great experience in open source contribution thats why its abit difficult to me. But I will definitely try.

trent.mohay (Sat, 18 Apr 2020 08:00:47 GMT):
@roderik When a node is voted in as a validator, it immediately becomes part of the "validation pool" - so no, a restart is required. To turn a node into a validator, >=50% of the existing validators must have “cast a vote” for the new node.
A validator casts a vote by producing a block with a “Endore Node-X” in the block-header’s extra data. A block can only contain a single vote. Thus, if you have 4 validators, at least 2 blocks must be produced before a new node becomes part of the validator-pool (i.e. 2 votes must exist on the chain). Therefore, there is always a lag between injecting your vote via the Json RPC, and a new validator joining the pool.
 So - assuming you submitted all 4 “in-votes” to all 4 validators, it would be ~10 blocks before all of the validators are part of the validation-pool. Last piece of background - IBFT2 requires ceil(2n/3) validators to come together (aka communicate a la PBFT) to produce a block. Thus, if you’re validator pool has 8 in it, 6 of them must communicate in order for the chain to progress. So what can go wrong?
 * The vote contained the wrong Ethereum address - thus the validator pool is now larger, but the required node is effectively not running/communicating 
* IBFT requires all validators to have at least 1 direct link to another validator, otherwise it cannot route IBFT2 packets to the other validators (it uses a gossip network).

 With all that in mind, my advice is:
 1. If you can, trace back over your chain to determine where votes were cast, and who is now in the Validator pool - are these the numbers you expected? Do they line up with the nodes you started?
2. Turn on Trace logging on all nodes, and see what other comms problems you can glean
3. Use your validator nodes as boot nodes, this guarantees Validator communications will be successful.

trent.mohay (Sat, 18 Apr 2020 08:00:47 GMT):
@roderik When a node is voted in as a validator, it immediately becomes part of the "validation pool" - so no, a restart is required. To turn a node into a validator, >=50% of the existing validators must have “cast a vote” for the new node.
A validator casts a vote by producing a block with a “Endore Node-X” in the block-header’s extra data. A block can only contain a single vote. Thus, if you have 4 validators, at least 2 blocks must be produced before a new node becomes part of the validator-pool (i.e. 2 votes must exist on the chain). Therefore, there is always a lag between injecting your vote via the Json RPC, and a new validator joining the pool.
 So - assuming you submitted all 4 “in-votes” to all 4 validators, it would be ~10 blocks before all of the validators are part of the validation-pool. Last piece of background - IBFT2 requires ceil(2n/3) validators to come together (aka communicate a la PBFT) to produce a block. Thus, if you’re validator pool has 8 in it, 6 of them must communicate in order for the chain to progress. So what can go wrong?
 * The vote contained the wrong Ethereum address - thus the validator pool is now larger, but the required node is effectively not running/communicating 
* IBFT requires all validators to have at least 1 direct link to another validator, otherwise it cannot route IBFT2 packets to the other validators (it uses a gossip network).

 With all that in mind, my advice is:
 1. If you can, trace back over your chain to determine where votes were cast, and who is now in the Validator pool - are these the numbers you expected? Do they line up with the nodes you started? 
2. Turn on Trace logging on all nodes, and see what other comms problems you can glean
 3. Use your validator nodes as boot nodes, this guarantees Validator communications will be successful.

roderik (Sat, 18 Apr 2020 09:22:30 GMT):
@trent.mohay Potentially the validator connection is an issue, my groups of 4 validators are only connected to their bootnode and to any bootnodes previously deployed. so the first set (active validators) are only connected to each other and their bootnode, the second set gets deployed and connect to each other, their bootnode and the bootnode of the first set. Looking at peers i see that the first set has 4 peers, the second set 5, the first bootnode 9, the second bootnode 5. So my two sets of 4 nodes are only connected over their bootnode.

roderik (Sat, 18 Apr 2020 09:23:53 GMT):
I wanted to create some sort of "star" architecture (each group is in a different k8s cluster, exposing the ports of each node is not trivial)

keckt (Sat, 18 Apr 2020 10:55:36 GMT):
Has joined the channel.

keckt (Sat, 18 Apr 2020 17:57:08 GMT):
Why does the "besu-sample-networks" code does not have a passwords line in the orion.conf file ?

keckt (Sat, 18 Apr 2020 17:57:08 GMT):
Why does the "besu-sample-networks" code does not have a passwords line in the orion.conf file ? And then, how can we generate new nodekeys to create additional nodes to the deployment, without using a passwordFile

trent.mohay (Sat, 18 Apr 2020 23:46:21 GMT):
Unfortunately, unless each validator can directly connect to another validator, its effectively "orphaned" - every node in the network will know that it is a validator, however it will be unable to participate in the block creation process as it can send

trent.mohay (Sat, 18 Apr 2020 23:46:21 GMT):
IBFT2 has a "sidechannel" for protocol specific packets (Propose, Prepare, Commit) which are used to propose and agree upon a block. To minimise network traffic, these packets are only sent to other validators. Validators are responsible for forwarding received IBFT2 packets to other connected validators (gossip network), this means that not all validators need to be connected to all other validators - only one. Unfortunately, unless each validator has a least 1 connection to another validator, its effectively "orphaned" - every node in the network will know that it is a validator (as this information is stored in the blockheader), however the node will be unable to participate in the block creation process - too many orphans and you halt the network. I don't have a good answer for how to handle you k8s cluster, but, at the moment, the issue above is a hard-requirement for an IBFT2 network.

NewAlexandria (Sun, 19 Apr 2020 01:29:39 GMT):
Has joined the channel.

hmijail (Mon, 20 Apr 2020 06:11:55 GMT):
When Besu starts in UPNP mode, it tries to detect the external IP address. In my case it is failing because of a double router situation: it finds the IP after the second router. For this case, other P2P applications provide an option so the user can override the external IP to be announced; but I don't see such an option in Besu. Is the external IP important in this case? Or do other nodes just piggyback on the connection that my Besu starts?

faraggi (Mon, 20 Apr 2020 10:15:34 GMT):
Orion doesn't _need_ a password to be run. You can generate the pub/priv keys without a password and run it without specifying that in the config file. I don't recommend doing this for production networks. To generate the password-less keys, just hit enter when asking for a password when running `orion -g nodeKeys`

keckt (Mon, 20 Apr 2020 12:12:15 GMT):
noted, thank you. My goal is to use the besu-sample-networks repo and modify it in order to create a couple of additional multi tenant nodes. I assume that I can just follow the tutorials on setting up a multitenant node, and I generate all the tenant keys like you indicated above, and no passwordFile ?

faraggi (Mon, 20 Apr 2020 12:20:45 GMT):
Yeah, that sounds about right. report back here if you bump into problems.

rohitgupta027 (Mon, 20 Apr 2020 12:25:14 GMT):
I have besu cluster running on Kubernetes using `besu-kubernetes` repo. I unable to connect an external node to the cluster. I have expose the UDP service from cluster but currently TCP and UDP is not supported by kubernetes. Any pointers on connecting external node to Kubernetes cluster for private permissioned network setup.

faraggi (Mon, 20 Apr 2020 12:28:30 GMT):
You can start without UPNP, set it to Manual and advertise whatever IP you want. https://besu.hyperledger.org/en/stable/HowTo/Find-and-Connect/Specifying-NAT/#manual

faraggi (Mon, 20 Apr 2020 12:43:10 GMT):
Hi @rohitgupta027 , were you able to verify that you had connectivity as suggested here? https://github.com/PegaSysEng/besu-kubernetes/issues/49

rohitgupta027 (Mon, 20 Apr 2020 12:51:28 GMT):
Hi @faraggi I have raised that issue myself but suggested solution was not desired.

rohitgupta027 (Mon, 20 Apr 2020 13:07:22 GMT):
Also after exposing the loadbalance to UDP service of `besu-validator1` which is bootnode as well. I am able to find the peers from external node which is sending packets to all node but connection is not establishing, Is it because TCP service is not exposed on loadbalancer? Sending packet to cluster logs: `<<< Sending PING packet to peer 0xc0ebab5********** (enode://

rohitgupta027 (Mon, 20 Apr 2020 13:07:22 GMT):
@faraggi Also after exposing the loadbalance to UDP service of `besu-validator1` which is bootnode as well. I am able to find the peers from external node which is sending packets to all node but connection is not establishing, Is it because TCP service is not exposed on loadbalancer? Sending packet to cluster logs: `<<< Sending PING packet to peer 0xc0ebab5********** (enode://

atoulme (Mon, 20 Apr 2020 16:11:14 GMT):
there is no known fix for double nat situations.

atoulme (Mon, 20 Apr 2020 16:11:42 GMT):
https://kb.netgear.com/30186/What-is-Double-NAT

atoulme (Mon, 20 Apr 2020 16:11:50 GMT):
google double nat, it's good stuff.

atoulme (Mon, 20 Apr 2020 16:22:36 GMT):
Anybody available to review https://github.com/hyperledger/besu/pull/725 ? It's a simple change, I swear.

Jemal (Mon, 20 Apr 2020 17:48:21 GMT):
Hi guys, I am trying to implement an application that requires multiple parties to sign a transaction offline before sending it to the Blockchain. Does besu support multi signature transaction ?

atoulme (Mon, 20 Apr 2020 17:56:09 GMT):
that would happen before besu sees the transaction. Look for ethsigner.

Jemal (Mon, 20 Apr 2020 19:52:23 GMT):
@atoulme Thank you. I had a look at EthSigner. But could not be sure if it provides what i am looking for. When i saied mutisignature transaction, I was referring to a transaction that is signed by multiple independent private keys belonging to different public keys. Does EthSigner supports that or it only allows signing a transaction using multiple private keys that belong to the same public key (address)?

Jemal (Mon, 20 Apr 2020 19:52:23 GMT):
@atoulme Thank you. I had a look at EthSigner. But could not be sure if it provides what i am looking for. When i said mutisignature transaction, I was referring to a transaction that is signed by multiple independent private keys belonging to different public keys. Does EthSigner supports that or it only allows signing a transaction using multiple private keys that belong to the same public key (address)?

joshuafernandes (Mon, 20 Apr 2020 21:54:58 GMT):
Hello @rohitgupta027 from what you've described, your loadbalancer provides a route from your external node (lets call this 'ext') to your validator/bootnode (lets call this 'vb'). So when you start 'ext' you specify 'vb' as the bootnode and that works

joshuafernandes (Mon, 20 Apr 2020 21:55:57 GMT):
After that, 'vb' sends a list of peers [v2, v3, v4, n1, n2.....] which 'ext' must try and connect to

joshuafernandes (Mon, 20 Apr 2020 21:57:17 GMT):
How does your current setup route those? i.e 'ext' will see the ip addresses of [v2, v3....] but has no knowledge of how to connect to them

atoulme (Mon, 20 Apr 2020 21:58:15 GMT):
you would have to look at it, but one thing for sure, you would want the transaction to be signed prior to having it being sent to besu

joshuafernandes (Mon, 20 Apr 2020 21:59:13 GMT):
Hence the suggestion of the vpn in the k8s issue, where 'ext' knows how to route to 'bv' but also [v1, v2, n1 ....] basically any nodes you create in the future. Hope this helps

madelinemurray (Mon, 20 Apr 2020 22:35:18 GMT):
@Jemal - the EthSigner gitter is best place for EthSigner questions - https://gitter.im/PegaSysEng/EthSigner

Jemal (Tue, 21 Apr 2020 04:46:20 GMT):
@madelinemurray and atoulme okay thanks. I will ask my questions there

Jemal (Tue, 21 Apr 2020 04:46:20 GMT):
@madelinemurray and atoulme okay thanks. I will ask my questions there, https://gitter.im/PegaSysEng/EthSigner

JayJong (Tue, 21 Apr 2020 06:54:52 GMT):
Has joined the channel.

PeiChia (Tue, 21 Apr 2020 08:35:02 GMT):
Has joined the channel.

PeiChia (Tue, 21 Apr 2020 08:35:04 GMT):
Hi, everyone, I have a network now, The configuration is as follows: PC1: validator1 ~ validator4, PC2: node, PC3: node. Now, I want to convert PC2 node to validator through ibft voting. I did use `ibft_proposeValidatorVote` on validator1 ~ validator4, And using `ibft_getValidatorsByBlockNumber` to query, I have seen PC2 node's validator address. But, when I check the log of validator1 ~ validator4, the PC2 node does not rotate blocks The message is as follows: `pool-10-thread-1 | INFO | MessageValidator | Invalid Proposal message, block did not pass validation.` I'm sure all four of my validators have voted. Am I missing something?

rohitgupta027 (Tue, 21 Apr 2020 09:50:07 GMT):
Hello @joshuafernandes It does help to understand why it is not working. Based on what you mentioned above can you recommend any solution, the ones which I see are below 1. If I expose all the peers [v2,v3,v4,n1,n2....] IP to public ip then 'ext' knows how to connect to public IP 2. Right now k8n limitation is that you cannot expose a service with mix-protocol - UDP & TCP in our case. Thats why I have enabled the loadbalancer to UDP port where peer discovery is working but for listening TCP still not working. Not sure if you have experienced something similar. 3. For private permission network, is k8n not an ideal candidate as VPN to k8n is not an ideal solution. Not sure if thats a good idea but we can have a short call/Skype as well.

rohitgupta027 (Tue, 21 Apr 2020 09:50:07 GMT):
Hello @joshuafernandes It does help to understand why it is not working. Based on what you mentioned above can you recommend any solution, the ones which I see are below 1. If I expose all the peers [v2,v3,v4,n1,n2....] IP to public ip then 'ext' knows how to connect to public IP 2. Right now k8n limitation is that you cannot expose a service with mix-protocol - UDP & TCP in our case. Thats why I have enabled the loadbalancer to UDP port where peer discovery is working but for listening TCP still not working. Not sure if you have experienced something similar. 3. For private permission network, is k8n not an ideal candidate as VPN to k8n is not an ideal solution for us as we want external partners to host their node and connect to our cluster using enode://@:30303. Not sure if that's possible but we can have a short call/Skype as well.

SimonTemple (Tue, 21 Apr 2020 16:44:26 GMT):
Has joined the channel.

SimonTemple (Tue, 21 Apr 2020 16:44:29 GMT):
Hello... I'm following a simple tutorial to create a privacy group and I'm hitting an error [ERROR] [DefaultDispatcher-worker-2] 04-21-2020 15:20:41 n.c.o.h.s.v.HttpErrorHandler - null failed HttpError{error='PrivacyGroupNotFound'} net.consensys.orion.exception.OrionException: null at net.consensys.orion.http.handler.privacy.RetrievePrivacyGroupHandler.responseWithNotFoundError(RetrievePrivacyGroupHandler.java:89) ~[orion-1.5.2-SNAPSHOT.jar:1.5.2-SNAPSHOT] at net.consensys.orion.http.handler.privacy.RetrievePrivacyGroupHandler.lambda$handleRequest$0(RetrievePrivacyGroupHandler.java:70) ~[orion-1.5.2-SNAPSHOT.jar:1.5.2-SNAPSHOT] I'm using web3j to make the calls so I don't know wether this is an issue with the web3j code or Besu/Orion. Can someone help? Here's the information I have so far: git clone https://github.com/PegaSysEng/besu-quickstart.git run-privacy.sh Following: http://docs.web3j.io/privacy/ --------------------------------------------------------------------------------------------------- web3j: 4.5.17 besu: v1.4.3/linux-x86_64/oracle_openjdk-java-11 orion: 1.5.2-SNAPSHOT --------------------------------------------------------------------------------------------------- import org.web3j.tx.response.PollingPrivateTransactionReceiptProcessor import org.web3j.crypto.Wallet import org.web3j.utils.Base64String import org.web3j.crypto.Credentials import org.web3j.protocol.besu.Besu import org.web3j.protocol.http.HttpService def ALICE_ENCLAVE_KEY = Base64String.wrap('A1aVtMxLCUHmBVHXoZzzBgPbW/wj5axDpW9X8l91SGo=') def BOB_ENCLAVE_KEY = Base64String.wrap('Ko2bVqD+nNlNYL5EE7y3IdOnviftjiizpjRt+HTuFBs=') def nodeAlice = Besu.build(new HttpService("http://localhost:20000")) def credentialsAlice = Credentials.create("8f2a55949038a9610f50fb23b5883af3b4ecb3c3bb792cbcefbd1542c692be63") def aliceBobGroup = Base64String.wrap(Wallet.generateRandomBytes(32)) def createTxHash = nodeAlice.privOnChainCreatePrivacyGroup(aliceBobGroup, credentialsAlice, ALICE_ENCLAVE_KEY, Collections.singletonList(BOB_ENCLAVE_KEY)).send().getTransactionHash() --------------------------------------------------------------------------------------------------- org.web3j.protocol.exceptions.ClientConnectionException: Invalid response received: 400; { "jsonrpc" : "2.0", "id" : 31, "error" : { "code" : -50100, "message" : "Unable to decode the private signed raw transaction" } } --------------------------------------------------------------------------------------------------- $docker logs besu-quickstart_orion1_1 [ERROR] [DefaultDispatcher-worker-2] 04-21-2020 15:20:41 n.c.o.h.s.v.HttpErrorHandler - null failed HttpError{error='PrivacyGroupNotFound'} net.consensys.orion.exception.OrionException: null at net.consensys.orion.http.handler.privacy.RetrievePrivacyGroupHandler.responseWithNotFoundError(RetrievePrivacyGroupHandler.java:89) ~[orion-1.5.2-SNAPSHOT.jar:1.5.2-SNAPSHOT] at net.consensys.orion.http.handler.privacy.RetrievePrivacyGroupHandler.lambda$handleRequest$0(RetrievePrivacyGroupHandler.java:70) ~[orion-1.5.2-SNAPSHOT.jar:1.5.2-SNAPSHOT] at java.util.concurrent.CompletableFuture$UniAccept.tryFire(CompletableFuture.java:714) [?:?] at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:506) [?:?] at java.util.concurrent.CompletableFuture.complete(CompletableFuture.java:2073) [?:?] at org.apache.tuweni.concurrent.DefaultCompletableAsyncResult.complete(DefaultCompletableAsyncResult.java:45) [tuweni-concurrent-1.0.0.jar:1.0.0] at org.apache.tuweni.concurrent.coroutines.AsyncResultCoroutine.resumeWith(AsyncResult.kt:85) [tuweni-concurrent-coroutines-1.0.0.jar:1.0.0] at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46) [kotlin-stdlib-1.3.30.jar:1.3.30-release-171 (1.3.30)] at kotlinx.coroutines.DispatchedTask.run(Dispatched.kt:233) [kotlinx-coroutines-core-1.1.1.jar:?] at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:594) [kotlinx-coroutines-core-1.1.1.jar:?] at kotlinx.coroutines.scheduling.CoroutineScheduler.access$runSafely(CoroutineScheduler.kt:60) [kotlinx-coroutines-core-1.1.1.jar:?] at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:742) [kotlinx-coroutines-core-1.1.1.jar:?]

arunog (Tue, 21 Apr 2020 18:22:35 GMT):
Hello, same problems for me. I wrote few weeks ago. https://chat.hyperledger.org/channel/besu?msg=vXkG3KastJ26RrtYG

joshuafernandes (Tue, 21 Apr 2020 21:20:35 GMT):
Hello @rohitgupta027 @arunog I think

joshuafernandes (Tue, 21 Apr 2020 21:20:35 GMT):
Hello @rohitgupta027 @arunog I think you've got a couple of options based on what you're trying to do: 1. on k8s this could work but you will likely need an ingress for each node and the nodes use public interfaces - I think nginx does one that does tcp & udp? You get all the k8s benefits of management, storage via PVC's, design patterns etc but you've got this little bit more of management to do

joshuafernandes (Tue, 21 Apr 2020 21:20:35 GMT):
Hello @rohitgupta027 I think you've got a couple of options based on what you're trying to do: 1. on k8s this could work but you will likely need an ingress for each node and the nodes use public interfaces - I think nginx does one that does tcp & udp? You get all the k8s benefits of management, storage via PVC's, design patterns etc but you've got this little bit more of management to do 2. run independant nodes also on public interfaces You cant get around the fact that 'ext' still needs to talk to [vb, v1,v2,....n] and if they're all private nothing will work. So the way forward is to make them all public and apply permissioning to them

joshuafernandes (Tue, 21 Apr 2020 21:38:31 GMT):
Hello @arunog, haven't seen your message so apologise for that - the ingresses can be modified to suit your needs. ie you can add/change ports as required . The repo has examples only intended for users to customise to their needs. For discovery you need 30303 TCP & UDP. The initial p2p phase of discovery and finding peers is done via UDP, connecting to them for syncing is done via TCP. As with this problem to get nodes exposed to the public you have to expose both and probably require the same approach of an ingress per node - am not sure what your requirements are per say though so cant say for sure

rohitgupta027 (Wed, 22 Apr 2020 08:52:16 GMT):
Hello @joshuafernandes Thanks for you message. The point I am trying to press here is that there is no issue of exposing TCP and UDP on loadbalancer (ngnix) but k8n doesn't allow to create service for mix protocol. As you mentioned to @arunog as well that UDP is used for peer discovery and then TCP is used for syncing. Also there is no command line arguments for besu to point TCP and UDP on different ports/IP. As per enode specification `enode://@Ip:Port?discport=udpPort` besu doesn't allow to add discport on bootnodes command line. Nodes cannot exposed to public for both ports because of the limitation of k8n not allow mix protocol.

rohitgupta027 (Wed, 22 Apr 2020 08:52:16 GMT):
Hello @joshuafernandes Thanks for you message. The point I am trying to press here is that there is no issue of exposing TCP and UDP on loadbalancer (ngnix) but k8n doesn't allow to create service for mix protocol. As you mentioned to @arunog as well that UDP is used for peer discovery and then TCP is used for syncing. Also there is no command line arguments for besu to point TCP and UDP on different ports. As per enode specification `enode://@Ip:Port?discport=udpPort` besu doesn't allow to add discport on bootnodes command line. I have also tried to create 2 ingress , 1 for TCP and 1 for UDP but again the limitation is of not specifying different Ip's for TCP and UDP communication. Nodes cannot exposed to public for both ports because of the limitation of k8n not allow mix protocol.

ppoliani (Wed, 22 Apr 2020 10:18:12 GMT):
@rohitgupta027 Are you trying to setup and IBFT of Clique network? Also > I have expose the UDP service from cluster but currently TCP and UDP is not supported by kubernetes This is nit quite right. K8s does support TCP and UDP. You can do wither with a NodePort service or even Ingress itself. Also can you share the instructions you followed to setup the network? Are you sure your genesis file is correct e.g. have you made sure that things like `extraData` are set properly

rohitgupta027 (Wed, 22 Apr 2020 12:00:58 GMT):
@ppoliani I am trying to setup IBFT network. Yes I am using the same genesis file to connect 'ext' with 'cluster nodes'. `extra data` is specified as mentioned in besu documentations. k8n github open issue link (https://github.com/kubernetes/kubernetes/pull/75831), also I have with me Microsoft support team as well they also mentioned that creating loadbalancer with TCP & UDP is not an issue but k8n will not let create a service. Setup instruction: 1. Install `besu-kubernetes` on Azure with 4 validators and 1 node service 2. Create nginx ingress controller for 1 bootnode(validator1) UDP port (as combined with TCP gives error that cannot create mix protocol) 3. Create another nginx ingress for TCP port (validator1) 4. From my local machine start besu node with the configuration similar to cluster - with that the peers discovery works with UDP as TCP is on another public IP. There is no way to specify different ip's & ports for TCP and UDP connection. 4. As

ppoliani (Wed, 22 Apr 2020 12:14:52 GMT):
> Create nginx ingress controller for 1 bootnode(validator1) Can you share a bit more information about this. Do you mean an k8s `Ingress` object? if so what is the service it's pointing to? Is it a LoadBalancer or ClusterIP service. Could you share the manifest files so we can have a look? Also do the intra-cluster peers discover each other? Do you run a local Besu validator and if so has it been added to the list of validators for your netwrok?

magooster (Wed, 22 Apr 2020 14:46:58 GMT):
Just reid running besu 1.4.3 with eth/65 in a mixed Besu version network... am seeing this in the logs EthScheduler-Workers-132 | ERROR | Besu | Uncaught exception in thread "EthScheduler-Workers-132" java.lang.UnsupportedOperationException: Attempt to send unsupported message (8) via cap eth/63

rohitgupta027 (Wed, 22 Apr 2020 15:28:04 GMT):
Hello @joshuafernandes @ppoliani, Issue is fixed with the help of @arunog We only need ingress on UDP port after that we need to use `admin_addPeer` API to add external node enode address as a Peer.

ppoliani (Wed, 22 Apr 2020 15:28:53 GMT):
yes I was assuming that as well that's why I asked if you've added the peer to the list of validators

ppoliani (Wed, 22 Apr 2020 15:29:03 GMT):
good to hear that it works now :thumbsup:

rohitgupta027 (Wed, 22 Apr 2020 15:29:34 GMT):
Thanks :thumbup:

arunog (Wed, 22 Apr 2020 15:48:09 GMT):
hello @joshuafernandes @ppoliani, it works if the external nodes are in VMs (docker or binary), but I can't connect nodes in other k8s cluster.

SimonTemple (Wed, 22 Apr 2020 16:04:14 GMT):
I found another method nodeAlice.privCreatePrivacyGroup() that works! Not sure what the 'OnChain' variants provide, but my problem is now resolved.

Pablo22 (Wed, 22 Apr 2020 16:13:27 GMT):
Has joined the channel.

Pablo22 (Wed, 22 Apr 2020 16:19:07 GMT):
Hi, I have the same problem, with the same tutorial. I just copied the following script: https://besu.hyperledger.org/en/stable/scripts/transactions/create_value_raw_transaction.js And change addressFrom, addressTo and privKey. The error is: ****************************************** Value transaction sent, waiting for receipt. ****************************************** Error: Returned error: Invalid params I try with ganache and the trasaction works fine. Any idea? tx.serialize(); Is uncommented Thx!

Rabax55 (Wed, 22 Apr 2020 21:25:29 GMT):
Has joined the channel.

lucassaldanha (Thu, 23 Apr 2020 02:52:38 GMT):
Onchain privacy groups are a new feature that have been released in 1.4 You can learn more about them here: https://besu.hyperledger.org/en/stable/Concepts/Privacy/Onchain-PrivacyGroups/

lucassaldanha (Thu, 23 Apr 2020 02:52:38 GMT):
Onchain privacy groups is a new feature that have been released in 1.4 You can learn more about them here: https://besu.hyperledger.org/en/stable/Concepts/Privacy/Onchain-PrivacyGroups/

lucassaldanha (Thu, 23 Apr 2020 02:52:38 GMT):
Onchain privacy groups is a new feature that have been released in 1.4 You can learn more about it here: https://besu.hyperledger.org/en/stable/Concepts/Privacy/Onchain-PrivacyGroups/

dbdagr8 (Thu, 23 Apr 2020 03:52:06 GMT):
I resolved that using: ``` const customCommon = Common.default.forCustomChain( 'mainnet', { name: 'name', networkId: 123, chainId: 1981 }, 'petersburg' ); ``` and ``` ```

dbdagr8 (Thu, 23 Apr 2020 03:52:06 GMT):
I resolved that using: ``` const customCommon = Common.default.forCustomChain( 'mainnet', { name: 'name', networkId: 123, chainId: 1981 }, 'petersburg' ); ``` and ``` var tx = new ethTx.Transaction(txObject , {common: customCommon}); tx.sign(privKey); ```

hmijail (Thu, 23 Apr 2020 07:12:52 GMT):
I am thinking about running my own mainnet Besu node, to be able to run arbitrary queries, possibly modifying Besu to customize the data that is returned. I would have to either buy an external big fast drive for the DB (and suffer the laptop fan whine), or get some cloud VM - of which I have no experience. Does anyone know of some guide or cost estimation?

hmijail (Thu, 23 Apr 2020 07:15:09 GMT):
The plan is to fast-sync and prune keeping the last 4M blocks

madelinemurray (Thu, 23 Apr 2020 07:45:45 GMT):
hi @magooster - we have a known issue in v1.4.3 with eth/65 not being backwards compatible -> https://github.com/hyperledger/besu/blob/master/CHANGELOG.md#143 The technical release of 1.4.4 was done today and we're currently doing burn-in testing.

magooster (Thu, 23 Apr 2020 07:49:29 GMT):
Thanks this didn't show in the release notes

magooster (Thu, 23 Apr 2020 07:49:29 GMT):
Thanks this didn't show in the release notes https://github.com/hyperledger/besu/releases/tag/1.4.3

hmijail (Thu, 23 Apr 2020 07:52:12 GMT):
Also, does anyone know how doable it is to migrate the DB between Besu and Parity, given that both use RocksDB?

madelinemurray (Thu, 23 Apr 2020 07:54:07 GMT):
It was identified a few days after the release (April 17) and we updated the changelog/posted in here and besu-contributors when that happened.

faraggi (Thu, 23 Apr 2020 11:14:04 GMT):
Mainnet ETH for online VMs will cost you about $50/m+ A 1TB SSD for a laptop is about $150- not sure if external is fast enough- depends on the transfer interface.

tezansahu (Thu, 23 Apr 2020 11:54:07 GMT):
Hi, I deployed Besu on K8S (on an AWS EC2 instance) using kubectl following the instructions mentioned here: https://github.com/PegaSysEng/besu-kubernetes/tree/master/kubectl/ibft2. Now, the issue I am facing is that in case the EC2 volume is shut down (NOT terminated) & restarted, all information about previously deployed contracts, including the data stored in the smart contracts, etc. is lost. Given that AWS (or any server for that matter) has its downtimes, how should I tackle this issue when going into production?

theblockstalk (Thu, 23 Apr 2020 13:26:52 GMT):
Has joined the channel.

shemnon (Thu, 23 Apr 2020 13:59:59 GMT):
DB schemas are different, so no.

hmijail (Thu, 23 Apr 2020 15:22:06 GMT):
thank you

hmijail (Thu, 23 Apr 2020 15:29:07 GMT):
and do you think it´d be possible to create some simple script to convert them (with the Python bindings for example)? I'm assuming that what the applications store is at the end of the day a rather straight implementation of the Yellow Paper...

shemnon (Thu, 23 Apr 2020 15:29:52 GMT):
Not simple. It would require deep understanding of Parity's DB structure, which changes about once a year.

hmijail (Thu, 23 Apr 2020 15:33:05 GMT):
huh... ok, good to know. Thank you!

Pablo22 (Thu, 23 Apr 2020 16:01:56 GMT):
I found the problem. It was with the ethereumjs-tx version. If you install the version 1.3.7 without ^ or ~ works fine for me. Thx!!

Pablo22 (Thu, 23 Apr 2020 16:01:56 GMT):
I found the problem. It was with the ethereumjs-tx version. If you install the version 1.3.7 without ^ or ~ works fine for me. (NPM install ^2.1.2 version by default) Thx!!

cam-parra (Thu, 23 Apr 2020 16:09:40 GMT):
Has left the channel.

soyama-dclab (Fri, 24 Apr 2020 07:57:28 GMT):
hey guys, I’m trying to `truffle test` for Besu. 
This article helps `truffle migrate`. https://besu.hyperledger.org/en/stable/HowTo/Develop-Dapps/Truffle/ But `truffle test`(web3 send transaction) does not work in my environment. I got the following error messages. ```bash node1 | 2020-04-17 00:00:00.000+00:00 | vert.x-worker-thread-10 | ERROR | JsonRpcHttpService | Error processing JSON-RPC requestBody node1 | java.util.NoSuchElementException: No value present node1 | at java.util.Optional.get(Optional.java:148) ~[?:?] node1 | at org.hyperledger.besu.ethereum.mainnet.ValidationResult.getInvalidReason(ValidationResult.java:40) ~[besu-core-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.errorResponse(EthEstimateGas.java:103) ~[besu-api-1.4.3.jar:1.4.3] … ``` Does anyone know how to set some parameters?

soyama-dclab (Fri, 24 Apr 2020 07:57:28 GMT):
hey guys, I’m trying to `truffle test` for Besu. 
This article helps `truffle migrate`. https://besu.hyperledger.org/en/stable/HowTo/Develop-Dapps/Truffle/ But `truffle test`(web3 send transaction) does not work in my environment. I got the following error messages. ```bash node1 | 2020-04-24 00:00:00.000+00:00 | vert.x-worker-thread-10 | ERROR | JsonRpcHttpService | Error processing JSON-RPC requestBody node1 | java.util.NoSuchElementException: No value present node1 | at java.util.Optional.get(Optional.java:148) ~[?:?] node1 | at org.hyperledger.besu.ethereum.mainnet.ValidationResult.getInvalidReason(ValidationResult.java:40) ~[besu-core-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.errorResponse(EthEstimateGas.java:103) ~[besu-api-1.4.3.jar:1.4.3] … ``` Does anyone know how to set some parameters?

soyama-dclab (Fri, 24 Apr 2020 07:57:28 GMT):
hey guys, I’m trying to `truffle test` for Besu. 
This article helps `truffle migrate`. https://besu.hyperledger.org/en/stable/HowTo/Develop-Dapps/Truffle/ But `truffle test`(web3 1.x send transaction) does not work in my environment. I got the following error messages. ```bash node1 | 2020-04-24 00:00:00.000+00:00 | vert.x-worker-thread-10 | ERROR | JsonRpcHttpService | Error processing JSON-RPC requestBody node1 | java.util.NoSuchElementException: No value present node1 | at java.util.Optional.get(Optional.java:148) ~[?:?] node1 | at org.hyperledger.besu.ethereum.mainnet.ValidationResult.getInvalidReason(ValidationResult.java:40) ~[besu-core-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.errorResponse(EthEstimateGas.java:103) ~[besu-api-1.4.3.jar:1.4.3] … ``` Does anyone know how to set some parameters?

soyama-dclab (Fri, 24 Apr 2020 07:57:28 GMT):
hey guys, I’m trying to `truffle test` for Besu. 
This article helps `truffle migrate`. https://besu.hyperledger.org/en/stable/HowTo/Develop-Dapps/Truffle/ But `truffle test`(web3 1.x send transaction) does not work in my environment. `Error: Transaction has been reverted by the EVM` I got the following error messages. ```bash node1 | 2020-04-24 00:00:00.000+00:00 | vert.x-worker-thread-10 | ERROR | JsonRpcHttpService | Error processing JSON-RPC requestBody node1 | java.util.NoSuchElementException: No value present node1 | at java.util.Optional.get(Optional.java:148) ~[?:?] node1 | at org.hyperledger.besu.ethereum.mainnet.ValidationResult.getInvalidReason(ValidationResult.java:40) ~[besu-core-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.errorResponse(EthEstimateGas.java:103) ~[besu-api-1.4.3.jar:1.4.3] … ``` Does anyone know how to set some parameters?

soyama-dclab (Fri, 24 Apr 2020 07:57:28 GMT):
hey guys, I’m trying to `truffle test` for Besu. 
This article helps `truffle migrate`. https://besu.hyperledger.org/en/stable/HowTo/Develop-Dapps/Truffle/ But `truffle test`(web3 1.x send transaction) does not work in my environment. ```bash Error: Transaction has been reverted by the EVM: ... ``` I got the following error messages. ```bash node1 | 2020-04-24 00:00:00.000+00:00 | vert.x-worker-thread-10 | ERROR | JsonRpcHttpService | Error processing JSON-RPC requestBody node1 | java.util.NoSuchElementException: No value present node1 | at java.util.Optional.get(Optional.java:148) ~[?:?] node1 | at org.hyperledger.besu.ethereum.mainnet.ValidationResult.getInvalidReason(ValidationResult.java:40) ~[besu-core-1.4.3.jar:1.4.3] node1 | at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.errorResponse(EthEstimateGas.java:103) ~[besu-api-1.4.3.jar:1.4.3] … ``` Does anyone know how to set some parameters?

soyama-dclab (Fri, 24 Apr 2020 07:57:28 GMT):
hey guys, I’m trying to `truffle test` for Besu. 
This article helps `truffle migrate`. https://besu.hyperledger.org/en/stable/HowTo/Develop-Dapps/Truffle/ But `truffle test`(web3 1.x send transaction) does not work in my environment. ```bash Error: Transaction has been reverted by the EVM: ... ``` I got the following error messages. ```bash besu | 2020-04-24 00:00:00.000+00:00 | vert.x-worker-thread-10 | ERROR | JsonRpcHttpService | Error processing JSON-RPC requestBody besu | java.util.NoSuchElementException: No value present besu | at java.util.Optional.get(Optional.java:148) ~[?:?] besu | at org.hyperledger.besu.ethereum.mainnet.ValidationResult.getInvalidReason(ValidationResult.java:40) ~[besu-core-1.4.3.jar:1.4.3] besu | at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.errorResponse(EthEstimateGas.java:103) ~[besu-api-1.4.3.jar:1.4.3] … ``` Does anyone know how to set some parameters?

soyama-dclab (Fri, 24 Apr 2020 07:57:28 GMT):
hey guys, I’m trying to `truffle test` for Besu. 
This article helps `truffle migrate`. https://besu.hyperledger.org/en/stable/HowTo/Develop-Dapps/Truffle/ But `truffle test`(web3 1.x send transaction) does not work in my environment. ```bash Error: Transaction has been reverted by the EVM: ... ``` I got the following error messages. ```bash besu | 2020-04-24 00:00:00.000+00:00 | vert.x-worker-thread-10 | ERROR | JsonRpcHttpService | Error processing JSON-RPC requestBody besu | java.util.NoSuchElementException: No value present besu | at java.util.Optional.get(Optional.java:148) ~[?:?] besu | at org.hyperledger.besu.ethereum.mainnet.ValidationResult.getInvalidReason(ValidationResult.java:40) ~[besu-core-1.4.3.jar:1.4.3] besu | at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.errorResponse(EthEstimateGas.java:103) ~[besu-api-1.4.3.jar:1.4.3] … ``` Does anyone have some information?

soyama-dclab (Fri, 24 Apr 2020 07:57:28 GMT):
hey guys, I’m trying to `truffle test` for Besu. 
This article helps `truffle migrate`. https://besu.hyperledger.org/en/stable/HowTo/Develop-Dapps/Truffle/ But `truffle test`(web3 1.x send transaction) does not work in my environment. ```bash Error: Transaction has been reverted by the EVM: ... ``` (The test code works well for geth.) I got the following error messages. ```bash besu | 2020-04-24 00:00:00.000+00:00 | vert.x-worker-thread-10 | ERROR | JsonRpcHttpService | Error processing JSON-RPC requestBody besu | java.util.NoSuchElementException: No value present besu | at java.util.Optional.get(Optional.java:148) ~[?:?] besu | at org.hyperledger.besu.ethereum.mainnet.ValidationResult.getInvalidReason(ValidationResult.java:40) ~[besu-core-1.4.3.jar:1.4.3] besu | at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.errorResponse(EthEstimateGas.java:103) ~[besu-api-1.4.3.jar:1.4.3] … ``` Does anyone have some information?

soyama-dclab (Fri, 24 Apr 2020 07:57:28 GMT):
hey guys, I’m trying to `truffle test` for Besu. 
This article helps `truffle migrate`. https://besu.hyperledger.org/en/stable/HowTo/Develop-Dapps/Truffle/ But `truffle test`(web3 1.x send transaction) does not work in my environment. ```bash Error: Transaction has been reverted by the EVM: ... ``` (The test code works well for Geth.) I got the following error messages. ```bash besu | 2020-04-24 00:00:00.000+00:00 | vert.x-worker-thread-10 | ERROR | JsonRpcHttpService | Error processing JSON-RPC requestBody besu | java.util.NoSuchElementException: No value present besu | at java.util.Optional.get(Optional.java:148) ~[?:?] besu | at org.hyperledger.besu.ethereum.mainnet.ValidationResult.getInvalidReason(ValidationResult.java:40) ~[besu-core-1.4.3.jar:1.4.3] besu | at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.errorResponse(EthEstimateGas.java:103) ~[besu-api-1.4.3.jar:1.4.3] … ``` Does anyone have some information?

brotchain (Fri, 24 Apr 2020 10:34:56 GMT):
Has joined the channel.

amhiggin (Fri, 24 Apr 2020 12:48:03 GMT):
Has joined the channel.

amhiggin (Fri, 24 Apr 2020 12:48:04 GMT):
Hi, I'm wondering what is the latest stable release of Besu?

niliakis (Fri, 24 Apr 2020 16:06:21 GMT):
As far I know events and logs aren't implemented for now in private transactions , then why in the eventEmitter example inside the getPrivateTransactionReceipt function it is trying to read result.logs[0].data)?

atoulme (Fri, 24 Apr 2020 16:39:29 GMT):
1.4.4 was cut this week.

amhiggin (Fri, 24 Apr 2020 16:46:25 GMT):
Thanks @atoulme - I had seen that this is the latest release. Is this a stable release?

amhiggin (Fri, 24 Apr 2020 16:46:25 GMT):
Thanks @atoulme for the info. What would you say is the latest stable release given that 1.4.4 is not yet stable ? Can't find this info

atoulme (Fri, 24 Apr 2020 16:46:44 GMT):
it's undergoing testing right now.

atoulme (Fri, 24 Apr 2020 16:46:58 GMT):
https://chat.hyperledger.org/channel/besu-contributors?msg=NCsDaeK7muiqYt5kc

amhiggin (Fri, 24 Apr 2020 17:08:00 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=hzAyQLj7njDHamafK) Thanks for the info @atoulme . Is there somewhere that the latest stable release is indicated? Can't

amhiggin (Fri, 24 Apr 2020 17:08:16 GMT):
* Can't find this info

atoulme (Fri, 24 Apr 2020 17:09:38 GMT):
@EdJoJob might be better placed to know

amhiggin (Fri, 24 Apr 2020 17:11:31 GMT):
Thanks @atoulme. Hi @EdJoJob , would you know where the latest stable release is indicated? Can't seem to find this info

shemnon (Fri, 24 Apr 2020 18:08:07 GMT):
I would recommend 1.4.2 until we get the 1.4.4 tests complete.

madelinemurray (Sat, 25 Apr 2020 22:37:56 GMT):
hi @niliakis - logs and filters have been implemented for private contracts in v1.4.4 (currently being tested) https://github.com/hyperledger/besu/blob/master/CHANGELOG.md#144

chaals (Sun, 26 Apr 2020 02:23:10 GMT):
Has joined the channel.

chaals (Sun, 26 Apr 2020 02:23:17 GMT):
B0rken link ... I was looking at https://github.com/PegaSysEng/besu-sample-networks and I followed the link at the top to https://besu.hyperledger.org/en/stable/Tutorials/Quickstarts/Private-Network-Quickstart/ which is 404...

shemnon (Sun, 26 Apr 2020 04:20:02 GMT):
This looks like a bug, possibly introduced in 1.4.1. I've opened a bug to track this: https://github.com/hyperledger/besu/issues/787

RealDeanZhao (Sun, 26 Apr 2020 06:39:24 GMT):
Hi Team, i set up a 4-node ibft network and sent 300 transactions. It was very slow to process all the transactions.

RealDeanZhao (Sun, 26 Apr 2020 06:39:24 GMT):
Hi Team, i set up a 4-node ibft network and sent 300 transactions. It was very slow to process all the transactions. There is only one transaction in every block.

RealDeanZhao (Sun, 26 Apr 2020 06:39:24 GMT):
Hi Team, i set up a 4-node ibft network and sent 300 transactions. It was very slow to process all the transactions. There is only one transaction in every block. Could anyone help me with this performance issue?

RealDeanZhao (Sun, 26 Apr 2020 06:39:24 GMT):
Hi Team, i set up a 4-node ibft network and sent 300 transactions from 100 accounts. It was very slow to process all the transactions. There is only one transaction in every block. Could anyone help me with this performance issue?

RealDeanZhao (Sun, 26 Apr 2020 06:39:24 GMT):
Hi Team, i set up a 4-node ibft network and sent 300 transactions from 100 accounts. It took almost 10 minutes to process all the transactions. I checked the explorer and found there was only one transaction per block. Could anyone help me with this performance issue?

RealDeanZhao (Sun, 26 Apr 2020 06:39:48 GMT):

Clipboard - April 26, 2020 2:39 PM

ajsutton (Sun, 26 Apr 2020 09:32:00 GMT):
The most likely cause is that the transactions had a very large gas limit. A transaction can only be included in a block if it's gas *limit* plus the sum of gas *used* for transactions already in the block is less than the block gas limit. The comparison is done before the transaction is ever executed so the transaction may be excluded because of a large gas limit even if it would only have used a small amount of gas when it runs.

RealDeanZhao (Sun, 26 Apr 2020 09:33:28 GMT):
```final RawTransaction rtx = RawTransaction.createTransaction( txCount, BigInteger.ZERO, BigInteger.valueOf(9007199254740990L), contractAddress, encoded );``` I will try reduce the gaslimit.

RealDeanZhao (Sun, 26 Apr 2020 09:39:03 GMT):
Thanks a lot!!!!! It works.

RealDeanZhao (Sun, 26 Apr 2020 09:39:14 GMT):

Clipboard - April 26, 2020 5:39 PM

madelinemurray (Sun, 26 Apr 2020 22:45:29 GMT):
@NicolasMassart - should we have a redirect in place for this?

joshuafernandes (Mon, 27 Apr 2020 01:03:37 GMT):
Hello @arunog @rohitgupta027 good to hear that it works :thumbsup:

joshuafernandes (Mon, 27 Apr 2020 01:04:39 GMT):
What issues are you seeing when adding nodes from another cluster - I would have thought that the process would be the same more and you'd have to use the right endpoint ip of the joining node?

chaals (Mon, 27 Apr 2020 04:23:28 GMT):
Also, that 404 page gives a Jira link for filing issues - I thought it moved to Github. If so, the 404 page needs to be updated (maybe other response pages too)

amhiggin (Mon, 27 Apr 2020 08:24:09 GMT):
Thanks @shemnon

niliakis (Mon, 27 Apr 2020 16:19:51 GMT):
when I'm running the eventEmitter example in my nodes(running v1.4.4) I get the error: TypeError: Cannot read property 'data' of undefined at web3.priv.getTransactionReceipt.then.result (/home/nikos/Desktop/web3js-eea/example/eventEmitter.js:89:51)

NicolasMassart (Mon, 27 Apr 2020 19:13:42 GMT):
FOxed

NicolasMassart (Mon, 27 Apr 2020 19:13:42 GMT):
Fixed

shemnon (Mon, 27 Apr 2020 20:33:42 GMT):
Besu contributor call in about 5 1/2 hours (1am UTC) - https://consensys.zoom.us/j/524697595

madelinemurray (Tue, 28 Apr 2020 00:34:31 GMT):
:mega: We just released a new version of Besu, 1.4.4 :mega: 1.4.4 includes logs and filters for private contracts, EIP-2315, Splunk logging integration, and optional native library encryption. We've disabled `eth/65` support by default and performed additional testing on 1.4.4 to ensure the issues with 1.4.3 are no longer occurring. Changes and known issues are listed in the Changelong - https://github.com/hyperledger/besu/blob/master/CHANGELOG.md

K2LIS (Tue, 28 Apr 2020 20:46:00 GMT):
Has joined the channel.

chaals (Wed, 29 Apr 2020 05:02:14 GMT):
Thank you!

antoinedz (Thu, 30 Apr 2020 05:38:04 GMT):
Has joined the channel.

antoinedz (Thu, 30 Apr 2020 05:47:20 GMT):
Hello everyone! I would like to test a project using Private Transactions on a public network (Rinkeby for example, or Ropsten). I started a full node (VM on GCP, Docker image version 1.4) but the sync is very long and I can't enable FastSync or Pruning (because of Private Transactions). Is there a dump (for use with `besu import` for example) available somewhere that would allow me to speed up the sync?

antoinedz (Thu, 30 Apr 2020 06:08:36 GMT):
Also for your information, I published a plugin for the Alethio Lite block explorer that supports a Hyperledger Besu node with authentication enabled on JSON-RPC endpoints. This plugin manages the authentication on the web3 provider from the block explorer. See https://github.com/adetante/explorer-besu-plugin

lepar (Thu, 30 Apr 2020 12:22:00 GMT):
Has joined the channel.

lepar (Thu, 30 Apr 2020 12:22:01 GMT):
Hey guys, new to Besu here and I have 4 questions. It says Besu is a client for an Ethereum network. 1. Is it just like Mist? 2. Do I have to be running an Ethereum network for Besu to connect to? 3. Does Besu create an Ethereum network from within? 4. In the architecture page on the wiki, There are many components, does Besu englobe them all or just Dapp/Wallet item?

peter_somogyvari (Thu, 30 Apr 2020 19:30:38 GMT):
I dropped a PR just now. Happy to chat here about it as well not just the GH comments (in case anybody prefers one over the other). https://github.com/hyperledger/besu/pull/821

atoulme (Thu, 30 Apr 2020 23:57:22 GMT):
hello Peter, not sure what the intent of the contribution is. I think it might be best to have this out of the repository into your own. I also see a couple of efforts on this type of configuration: https://github.com/lucassaldanha/besu-three-nodes-example https://github.com/PegaSysEng/besu-sample-networks

peter_somogyvari (Fri, 01 May 2020 01:55:46 GMT):
@atoulme Thanks for the reply! I'm happy to host it in my own repository, but I will also need to publish it on DockerHub. Is this okay with the Besu team? I just want to make sure there's no issues with it afterwards if I go down that route.

atoulme (Fri, 01 May 2020 01:56:00 GMT):
fine by me

peter_somogyvari (Fri, 01 May 2020 01:59:12 GMT):
I'll close down the PR then. Thank you for the info.

atoulme (Fri, 01 May 2020 01:59:59 GMT):
no worries. Please come back with even more fixes, and thanks for helping!

peter_somogyvari (Fri, 01 May 2020 02:00:19 GMT):
You got it

arash009 (Fri, 01 May 2020 03:16:41 GMT):
Hi @antoinedz unfortunately not. Using the import function you would still need to process the blocks, so speed gain wouldnt been too dramatic. Hopefully if you running this on a testnet though the sync should be faster compared to Mainnet.

arash009 (Fri, 01 May 2020 03:25:10 GMT):
Hi @lepar . I will try and answer your questions: 1. No. Mist communicated with an ethereum client such as go-ethereum (geth). You can use Mist to communicate with Besu intead of go-ethereum. 2. Besu allows you to connect to an ethereum network. 3. You can use Besu to join an existing ethereum network such as mainnet, or establish your own private ethereum network. 4. All the components listed are what make up Besu. A Dapp/Wallet connects to Besu as its ethereum client to connect to the network. Please refer to the besu documentation for extensive information on various concepts: https://besu.hyperledger.org/

lepar (Sat, 02 May 2020 18:27:39 GMT):
@arash009 Hey man, thanks for the reply. I'm still a little confused but some things we cleared. So a Dapp/Wallet connects to Besu. Something that I'm still confused. Besu can create an Ethereum network OR connect it to an existing one, is that i?

ivicaa (Sun, 03 May 2020 11:46:12 GMT):
Hello there! A question on privacy group: as far as I understand, once created no further participants can be added. Right? So basically, it is not possible to let another party join later and sync the the existing private state?

yehia67 (Sun, 03 May 2020 20:20:32 GMT):
Hello everyone, I am trying to deploy k8s using minikube I use this repository https://github.com/PegaSysEng/besu-kubernetes/tree/master/kubectl/ibft2 . Everything goes well but now I want to deploy a smart contract... I am using truffle. I need to ssh the minikube to interact with the blockchain(curl requests to the API). What should I do to deploy a smart contract?

yehia67 (Sun, 03 May 2020 20:22:18 GMT):
Should Install truffle and clone the project repository inside minikube(after minikube ssh) to deploy the contract?

yehia67 (Sun, 03 May 2020 20:22:18 GMT):
Should I install truffle and clone the project repository inside minikube(after minikube ssh) to deploy the contract?

arash009 (Mon, 04 May 2020 02:21:49 GMT):
Correct. An Ethereum client is what makes up the network. You can either start your own, or join an existing one using Besu.

arash009 (Mon, 04 May 2020 02:24:26 GMT):
Yes that is correct for all versions up to Besu v1.4. From v1.4 however, Besu supports onchain privacy groups using smart contracts. Using this new functionality you can add/remove members from an existing group. Please note that this is still early access and under further development: https://besu.hyperledger.org/en/stable/Concepts/Privacy/Onchain-PrivacyGroups/

lepar (Mon, 04 May 2020 03:07:28 GMT):
Awesome, thanks for the info

Bobur (Mon, 04 May 2020 07:03:35 GMT):
Hello guys! Thank u all the support! I have little question regarding "multi-tenancy" So, I ran besu network with "privacy enabled" and "multi-tenancy-enabled" with Orion node as well. Everything seems working fine and mining new blocks. So I used jwt.io to generate token with privacyPublicKey=OrionPublic. The issue is that when i call to node with Bearer Authorization through Postman, the following error is coming. ``` { "jsonrpc": "2.0", "id": 1, "error": { "code": -40100, "message": "Unauthorized" } } ```

yenkuanlee (Mon, 04 May 2020 07:41:39 GMT):
Has joined the channel.

ivicaa (Mon, 04 May 2020 07:48:01 GMT):
Thanks for the answer @arash009 - unchain privacy groups sounds nice.. so with this feature, if I later add someone to the group, he will be able to sync all the private state of that privacy group?

ivicaa (Mon, 04 May 2020 07:48:01 GMT):
Thanks for the answer @arash009 - onchain privacy groups sounds nice.. so with this feature, if I later add someone to the group, he will be able to sync all the private state of that privacy group?

yehia67 (Mon, 04 May 2020 19:20:36 GMT):
Okay Thanks!

yehia67 (Mon, 04 May 2020 19:20:36 GMT):
@faraggi Okay Thanks!

madelinemurray (Mon, 04 May 2020 21:17:18 GMT):
@ivicaa - yes that's right. When a new member is added to the privacy group, all previous transactions in the group are pushed to the new member and sync'd so the new member has the private state of the group.

ivicaa (Mon, 04 May 2020 22:07:52 GMT):
If one more question is allowed: how heavy- or light-weighted are such onchain/offchain privacy groups? From hyperledger fabric state channels, we know that we can run into some combinatorial explosion. Can we run with Besu into same issues? Let's say, we have a network of N=100 banks, which can potentially have a connection to each other via nostro/vostro account. Would it be feasible to mange the vostro/nostro accounts with privacy groups?

jframe (Tue, 05 May 2020 03:21:50 GMT):
HI Bobur, There could a few reasons why you are getting an unauthorized error. If you are creating the JWT yourself then you must specify the corresponding public key to Besu using public key key file option either for rpc https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#rpc-http-authentication-jwt-public-key-file or websockets https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#rpc-ws-authentication-jwt-public-key-file. It could also be that your permissions in the JWT aren't correct. If the permissions aren't included then it defaults not allowing any RPC access. What are JWT claims do you have in your token? You must have permissions, exp and privacyPublicKey claims in the token you create https://besu.hyperledger.org/en/stable/HowTo/Interact/APIs/Authentication/#2-create-the-jwt

madelinemurray (Tue, 05 May 2020 03:28:30 GMT):
More questions are definitely allowed :-) There's two variables to consider: 1. Number of members in a group (when sending a tx it must be distributed to all members of the group) 2. Number of transactions in a group (when a new member is added to a group, all existing transactions in the group are pushed to the new member) So, 100 banks where each one has a private group with each other should be fine. It is probably better having 4950 privacy groups each with 2 members than having one privacy group with 100 members.

ivicaa (Tue, 05 May 2020 05:35:03 GMT):
As far as I understand, private transactions are distributed via orion. Do orion nodes of the same privacy group need a direct point-to-point connection to each other or can private messages be relayed via other orion nodes not directly participating in the private transactions?

ivicaa (Tue, 05 May 2020 05:35:03 GMT):
As far as I understand, private transactions are distributed via orion. Do orion nodes of the same privacy group need a direct point-to-point connection to each other or can private messages be safely relayed via other orion nodes not directly participating in the private transactions?

lucassaldanha (Tue, 05 May 2020 21:00:47 GMT):
Hi @ivicaa atm they need a point-to-point connection to each other. We can't really have non-participants relaying the messages 'cause that would break some of the EEA requirements around privacy.

lucassaldanha (Tue, 05 May 2020 21:01:31 GMT):
We could relay the msg between participants to reduce the load on the sender node (e.g. when you have a privacy group id with 100's of participans). But this is something that we haven't implemented.

ivicaa (Tue, 05 May 2020 21:03:14 GMT):
I see. Could the whisper protocol solve the problem of relaying? AFAIK that's the way EY baseline protocol for instance is targeting.

lucassaldanha (Tue, 05 May 2020 21:05:31 GMT):
Maybe. We have looked at a few options, but we'd like to have more users to get a feeling of the different requirements that might show up before committing to one approach.

lucassaldanha (Tue, 05 May 2020 21:06:03 GMT):
That's why it is awsome to hear back from you and others! :D

ivicaa (Tue, 05 May 2020 21:09:00 GMT):
I was asking this, because our current PoA network in finledger for instance is not designed in a way that every bank in the network has a direct connection to every other, so it could get difficult for us to install an orion network without having to redesign our topology.

ivicaa (Tue, 05 May 2020 21:09:37 GMT):
I know it's a very special case, and actually the redesign of the topology is feasible, however, just wanted to collect the infos on the possibilities.

ivicaa (Tue, 05 May 2020 21:09:37 GMT):
I know it's a very special case, and actually the redesign of the topology is feasible at our side, however, just wanted to collect the infos on the possibilities.

ivicaa (Tue, 05 May 2020 21:10:27 GMT):
Anyway, the orion node would have to be able to work in the DMZ

lucassaldanha (Tue, 05 May 2020 21:10:59 GMT):
Interesting, we'd love if you could provide more details on that. The Besu nodes won't need to be connected to each other, only the Orion nodes. I'm not sure if this makes any difference for you or not.

ivicaa (Tue, 05 May 2020 21:27:11 GMT):

Topology.jpg

ivicaa (Tue, 05 May 2020 21:27:50 GMT):
if you're interested in it... the diagram shows the current setup.. so to be able to have point to point connection the orion node would have to go to DMZ too..

ivicaa (Tue, 05 May 2020 21:28:39 GMT):
but it's not typical at least for us to also hold sensitive data in DMZ too.. not sure what everything orion node is storing.

ivicaa (Tue, 05 May 2020 21:28:39 GMT):
but it's not typical, at least for us, to also hold sensitive data in DMZ too.. not sure what everything orion node is storing.

ivicaa (Tue, 05 May 2020 21:31:48 GMT):
I am guessing now, but I think, an orion node has to go to intranet too, but than it needs some kind of a relay component in the DMZ, to make it accesible for point to point connection from the partner banks.

lucassaldanha (Tue, 05 May 2020 22:15:04 GMT):
Yeah, I think the way to go could be something like putting a proxy component in the DMZ relaying requests to the Orion instance. And also relaying requests from the Orion node to other Orion nodes through the same proxy. All Orion comms can be secured using TLS so the data should be safe in transit. And this could also benefit by using certificates to validate Orion requests from trusted parties (assuming you know before hand the Orion nodes in the network). As for the data, Orion also supports external relational db (Postgres or Oracle). So the data can live inside your intranet, it doesn't need to be exposed.

lucassaldanha (Tue, 05 May 2020 22:15:52 GMT):
This is a really interesting use case. If you decide to use Besu/Orion for it I'd be super keen to hear more about your progress.

ivicaa (Tue, 05 May 2020 22:22:32 GMT):
currently, we're in production with geth+clique. At the time that we started with the project there was no besu yet and also no professional enterprise-grade node provider.. however, with besu the gap is closing now. Good job so far!

lucassaldanha (Tue, 05 May 2020 22:25:36 GMT):

orion dmz.JPG

lucassaldanha (Tue, 05 May 2020 22:26:15 GMT):
This is how I see that we could use Orion in your setup. I forgot to add the lines to represent Orion <-> Besu comm.

lucassaldanha (Tue, 05 May 2020 22:26:27 GMT):
Thanks for bringing up this use case for us

ivicaa (Tue, 05 May 2020 22:26:45 GMT):
yep.. that's what I was also thinking of!

ivicaa (Tue, 05 May 2020 22:27:28 GMT):
for orion proxy.. is there something that could be used already, or would this be soem new component to be built?

lucassaldanha (Tue, 05 May 2020 22:28:29 GMT):
Orion has to be highly available. In our recommended production setup we have an example of using HAProxy as a LB in front of Orion. I guess this could be used to achieve this.

ivicaa (Tue, 05 May 2020 22:28:34 GMT):
it's also good that we have no connections going out of DMZ to some internal database.

ivicaa (Tue, 05 May 2020 22:28:50 GMT):
ah ok.. so the protocol is plain https?

lucassaldanha (Tue, 05 May 2020 22:29:02 GMT):
Yep

lucassaldanha (Tue, 05 May 2020 22:29:04 GMT):
https://docs.orion.pegasys.tech/en/stable/HowTo/High-Availability/

ivicaa (Tue, 05 May 2020 22:29:08 GMT):
in that case it should not be a problem to setup a reverse proxy

lucassaldanha (Tue, 05 May 2020 22:29:24 GMT):
Correct!

ivicaa (Tue, 05 May 2020 22:29:46 GMT):
and how's the besu node communicating with orion node? also https?

lucassaldanha (Tue, 05 May 2020 22:29:57 GMT):
Yes

lucassaldanha (Tue, 05 May 2020 22:30:30 GMT):
although, if they are both in the same "safe zone", it could be just http

ivicaa (Tue, 05 May 2020 22:30:32 GMT):
so.. i would have to have a connection from my api node to orion... sealer and relayer do not need it I guess

lucassaldanha (Tue, 05 May 2020 22:31:40 GMT):
Only nodes that are "members" can see the content of private txs. If your API node is the only one that needs access to the private txs than this would be enough.

lucassaldanha (Tue, 05 May 2020 22:32:18 GMT):
One option would be setting up more than one node with the same Orion key, so they are all "1 participant" from the network point of view

ivicaa (Tue, 05 May 2020 22:32:46 GMT):
ah I see.. so it's depending on the node key

lucassaldanha (Tue, 05 May 2020 22:33:01 GMT):
Not the Ethereum node key

lucassaldanha (Tue, 05 May 2020 22:33:05 GMT):
The Orion key :D

lucassaldanha (Tue, 05 May 2020 22:33:14 GMT):
(we have too many keys in Ethereum haha)

ivicaa (Tue, 05 May 2020 22:33:34 GMT):
I see.. is this key held externaly to the node?

lucassaldanha (Tue, 05 May 2020 22:33:35 GMT):
Participants for private txs are identified by their Orion public key

lucassaldanha (Tue, 05 May 2020 22:33:57 GMT):
The private key is owned by the Orion node

ivicaa (Tue, 05 May 2020 22:35:59 GMT):
there is one more point than troubling me... our api server component uses rpc/ws to access the node.. for security reasons that node holds no keys in our setup... not sure if it has to be like that with besu too.

ivicaa (Tue, 05 May 2020 22:35:59 GMT):
there is one more point then troubling me... our api server component uses rpc/ws to access the node.. for security reasons that node holds no keys in our setup... not sure if it has to be like that with besu too.

lucassaldanha (Tue, 05 May 2020 22:36:40 GMT):
wgt private txs, the API node only needs the Orion public key.

lucassaldanha (Tue, 05 May 2020 22:37:29 GMT):
Whenever it needs to access a private tx, it will request it from Orion.

lucassaldanha (Tue, 05 May 2020 22:37:44 GMT):
So Orion is the one that keeps the key

ivicaa (Tue, 05 May 2020 22:38:24 GMT):
but the node has to authenticate somehow at the orion node, right?

lucassaldanha (Tue, 05 May 2020 22:39:27 GMT):
In most setups, only one Besu node has access to the Orion node. So there is no need for authentication. You can sort out everything with network access rules.

lucassaldanha (Tue, 05 May 2020 22:40:07 GMT):
It is worth mentioning that Orion has separate endpoints for the Orion <-> Orion and for the Orion <-> Besu comms

lucassaldanha (Tue, 05 May 2020 22:40:31 GMT):
So you can apply very specific rules around what nodes can read data from Orion

ivicaa (Tue, 05 May 2020 22:42:20 GMT):
I see.. will think about this in our context.. in any case thank you very much for the discussion! It was enlightening for me.

lucassaldanha (Tue, 05 May 2020 23:16:18 GMT):
No worries! Thanks!

niliakis (Wed, 06 May 2020 15:42:39 GMT):
Hello guys! I get this error in besu logs: ``` vertx-blocked-thread-checker | WARN | BlockedThreadChecker | Thread Thread[vert.x-worker-thread-4,5,main]=Thread[vert.x-worker-thread-4,5,main] has been blocked for 98011 ms, time limit is 60000 ms io.vertx.core.VertxException: Thread blocked ``` Could anybody provide any insight? thanks

atoulme (Wed, 06 May 2020 17:37:20 GMT):
do you see any more logs around this? This simply indicates a request you made against besu took longer than 60 seconds.

shemnon (Wed, 06 May 2020 17:54:46 GMT):
What RPCs were you calling?

niliakis (Wed, 06 May 2020 19:55:43 GMT):
I first encoutered this when I called a function of a private smart contract, but I still get this hours after.

atoulme (Wed, 06 May 2020 20:13:42 GMT):
@niliakis please open a bug report with as much detail as you can allow, and with a reproduction case if possible.

atoulme (Wed, 06 May 2020 20:14:08 GMT):
We might need to do a bit of instrumentation on our end to determine when threads block for a long time.

atoulme (Wed, 06 May 2020 20:14:56 GMT):
Recently I was introduced to opentelemetry.io which takes from openTracing, which allows tracing of applications. Would that be an interesting instrumentation path to look at?

benjamincburns (Wed, 06 May 2020 23:32:47 GMT):
@niliakis also we've recently published some documentation on how to capture a Java Flight Recorder dump - you might try collecting one of those and adding it to your bug report https://besu.hyperledger.org/en/latest/HowTo/Troubleshoot/Java-Flight-Recording/

benjamincburns (Wed, 06 May 2020 23:33:25 GMT):
I've actually seen the same error myself recently, but it was due to an OutOfMemoryException that I had missed further up in the logs

HLFPOC (Thu, 07 May 2020 09:14:17 GMT):
Hello Team, completely new to Besu and still exploring ethereum and token concepts. Wanted to check if it is possible to transfer non-fungible tokens/assets (ERC721 standards may be ?) between two entities in a private transaction using Besu ? Any reference implementations/documentation would be really helpful. Thanks

niliakis (Thu, 07 May 2020 10:50:26 GMT):
Thanks for the support guys! I'll try both of them and update! Could the error be because the transaction remained in the tx pool, besu was trying to proceed it and always exeeded time limit?

diegoll (Thu, 07 May 2020 14:18:18 GMT):
Has joined the channel.

diegoll (Thu, 07 May 2020 14:27:12 GMT):
Hi Team, I'm would like to generate the Account and Node Ingress contracts code to put inside my genesis instead of just copying it from the example genesis file. Is there some documentation on how to do it properly? I think I can play around with truffle for doing it but maybe you already have an script or something to solve this

niliakis (Thu, 07 May 2020 15:01:01 GMT):
I think there is an ERC20 example in the web3js-eea library

atoulme (Thu, 07 May 2020 15:56:48 GMT):
Private transactions support the whole spectrum of Ethereum, so you can transfer anything, including ERC721 based tokens.

HLFPOC (Thu, 07 May 2020 18:28:14 GMT):
Thanks for the inputs. Are there any samples available which explains end-to-end process like : development of application and smart contract, running a private besu network, deploying the contract on the network and doing some private transaction between the nodes?

atoulme (Thu, 07 May 2020 18:28:34 GMT):
these are orthogonal topics

atoulme (Thu, 07 May 2020 18:28:56 GMT):
development of application and smart contract are probably best explained with Truffle.

atoulme (Thu, 07 May 2020 18:29:38 GMT):
Running a private besu network, probably good resources from PegaSys on that. https://besu.hyperledger.org/en/stable/Tutorials/Examples/Private-Network-Example/

HLFPOC (Thu, 07 May 2020 18:39:03 GMT):
hanks for sharing the links. To get started on Besu, I just want to demonstrate transferring of an asset between 2 participants (participant 1 of Node 1 and participant 2 or Node 2) in a network of 3 Nodes. This asset transfer should be done in a private transaction between participant 1 and 2 so that participant 3 (of Node-3) is not able to view the transaction. So to achieve this, what should be the approach/tools required? I am guessing, I would be using Truffle for application development, solidity for smart contracts and a private besu network (free gas network ?) for running the 3 nodes with an appropriate consensus algorithm (may be IBFT2.0?). Wanted to confirm if my understanding is correct ? Do I need some other tools for doing this ?

HLFPOC (Thu, 07 May 2020 18:39:03 GMT):
Thanks for sharing the links. To get started on Besu, I just want to demonstrate transferring of an asset between 2 participants (participant 1 of Node 1 and participant 2 or Node 2) in a network of 3 Nodes. This asset transfer should be done in a private transaction between participant 1 and 2 so that participant 3 (of Node-3) is not able to view the transaction. So to achieve this, what should be the approach/tools required? I am guessing, I would be using Truffle for application development, solidity for smart contracts and a private besu network (free gas network ?) for running the 3 nodes with an appropriate consensus algorithm (may be IBFT2.0?). Wanted to confirm if my understanding is correct ? Do I need some other tools for doing this ?

atoulme (Thu, 07 May 2020 18:56:14 GMT):
yep, looks like what you'd need imo.

lucassaldanha (Thu, 07 May 2020 20:40:40 GMT):
You can start with one of our sample networks. There is a specific one for private txs https://github.com/PegaSysEng/besu-sample-networks

lucassaldanha (Thu, 07 May 2020 20:40:40 GMT):
For the network deployment, you can start with one of our sample networks. There is a specific one for private txs https://github.com/PegaSysEng/besu-sample-networks

lucassaldanha (Thu, 07 May 2020 20:42:30 GMT):
Be aware that in your example, not only node 3 won't be able to see the private tx but it won't be able to see anything related to the contract or the tokens. From node3 point of view, the contract doesn't exist.

atoulme (Thu, 07 May 2020 20:43:14 GMT):
btw with 3 nodes, you might want to use clique consensus, ibft has a min requirement of 4, right Lucas?

lucassaldanha (Thu, 07 May 2020 20:43:54 GMT):
I belive you can have 3 validator and it should be fine with ibft.

lucassaldanha (Thu, 07 May 2020 20:56:14 GMT):
If you don't wanna use the genesis to have the contracts since the beggining of history, you can take this approach: 1. Start your network with permissioning off 2. Deploy your implementation of smart contract. They must implement the interfaces as specified by the EEA spec (https://entethalliance.github.io/client-spec/spec.html#sec-permissioning-smart-contract) 3. Stop Besu and update the config with the correct account and node permissioning contract addresses (https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#permissions-accounts-contract-address and https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#permissions-nodes-contract-address). 4. Update the config to enable onchain permissioning for nodes and account (https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#permissions-accounts-contract-enabled and https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#permissions-nodes-contract-enabled) 5. This should do the trick! I recommend that you implement your permissioning smart contracts using a proxy approach so you are able to upgrade the contract in the future of the chain. Take a look on how we did it in the reference implementation (https://github.com/PegaSysEng/permissioning-smart-contracts/tree/master/contracts). Let me know how it goes!

diegoll (Thu, 07 May 2020 21:02:36 GMT):
Hello Lucas, thank you for your time. I want to have the contracts since the beggining, but I don't want to c&p the code from the sample genesis but to generate it myself

lucassaldanha (Thu, 07 May 2020 21:05:24 GMT):
The code in the genesis file is the compiled contract. All you need is to compile your contracts and change the code section for the contract accordingly. Bear in mind that the storage section of the allocation is dependent on your implementation so you'll need to ensure you set it accordingly.

lucassaldanha (Thu, 07 May 2020 21:06:18 GMT):
One way to find the "right" storage config for the contract is using Remix do deploy the contract, andwith the debug tx tool, check the final storage memory layout.

lucassaldanha (Thu, 07 May 2020 21:06:18 GMT):
One way to find the "right" storage config for the contract is using Remix do deploy the contract (you can deploy it to the JS vm), and with the debug tx tool, check the final storage memory layout.

diegoll (Thu, 07 May 2020 21:11:05 GMT):
excellent, I'll go that way then. Thanks again!

lucassaldanha (Thu, 07 May 2020 21:16:48 GMT):

Screen Shot 2020-05-08 at 9.15.38 AM.png

lucassaldanha (Thu, 07 May 2020 21:17:54 GMT):
Debug the deploy tx, go to the final step (return), cehck the storage values and update the genesis file to use them.

diegoll (Thu, 07 May 2020 21:18:20 GMT):
awesome, that helps a lot

lucassaldanha (Thu, 07 May 2020 21:18:24 GMT):
Cheers!

HLFPOC (Fri, 08 May 2020 04:52:59 GMT):
I was referring this : https://github.com/PegaSysEng/besu-sample-networks#basic-4-node-network-with-privacy-orion-node-sets-the-block-explorer-and-prometheus--grafana As per my understanding, 4 validator nodes are minimum requirement to run IBFT consensus and apart from this we would need 3 Orion nodes to have private transaction between the participants. Is it correct ?

HLFPOC (Fri, 08 May 2020 07:09:57 GMT):
Also wanted to check if we can use Truffle for dapp development as I read somewhere that it does not support EEA private transactions at the moment. Can we use web3js-eea library as an alternate for that purpose? @faraggi @joshuafernandes

joshuafernandes (Fri, 08 May 2020 22:20:38 GMT):
Hello @HLFPOC I'll have to check re truffle & EEA tx support. By all means please use the web3js-eea libs. As a follow on to the ./run-privacy.sh in the sample-networks repo, we've also got a tutorial using web3js here https://besu.hyperledger.org/en/stable/Tutorials/Examples/Privacy-Example/ and a video link in the main readme of the sample networks

HLFPOC (Sat, 09 May 2020 17:22:51 GMT):
Thanks for sharing it @joshuafernandes . Will go through the links. Can you please validate the network configurations also? I need to simulate private transactions between 3 participants (belonging to 3 different organizations) so I am planning to run 4 validator nodes (for IBFT) and 3 Orion nodes (each for 1 entity for private txns) as part of besu network. Is it correct way of doing or am I missing something here ?

bswamina22 (Sun, 10 May 2020 19:52:24 GMT):
Has joined the channel.

bswamina22 (Sun, 10 May 2020 19:55:36 GMT):
Hello all, trying to setup a clique private network with besu using docker ... Here are the steps followed:created accounts using myetherwallet.com, extracted the private key

bswamina22 (Sun, 10 May 2020 19:55:36 GMT):
Hello all, trying to setup a clique private network with besu using docker ... Here are the steps followed:``` ```

bswamina22 (Sun, 10 May 2020 19:57:55 GMT):
``` Trying to set up a clique private network using docker. Here are the steps followed: ```

bswamina22 (Sun, 10 May 2020 20:05:42 GMT):
Trying to setup a clique private network using docker ... created accounts using myetherwallet.com, extracted the accounts and private keys... created the genesis.json file... started node-1 ... got the enode url and started the node-2 with the enode address of node-1 as the boot node and dont see them connecting ... stuck in waiting for peers ... Here is the command for the *first* node: [ _docker run --rm --name bank -p 30303:30303 -p 8545:8545 -u $(id -u $USER):$(id -g $USER) -v $BESU_HOME:/root hyperledger/besu:1.4.4 --data-path=/root/data/bank --genesis-file=/root/genesis-21.json --network-id 21 --nat-method=DOCKER --p2p-host="0.0.0.0" --rpc-http-host="0.0.0.0" --rpc-http-port=8545 --rpc-http-enabled --rpc-http-api=WEB3,ETH,NET,ADMIN,CLIQUE --host-whitelist="*" --rpc-http-cors-origins="all"_ ] and here is the command for the *second*: [ _docker run --rm --name buyer -p 30304:30304 -p 8546:8546 -u $(id -u $USER):$(id -g $USER) -v $BESU_HOME:/root hyperledger/besu:1.4.4 --data-path=/root/data/buyer --genesis-file=/root/genesis-21.json --bootnodes=enode://db91c66ac7a69ced5d4b8c224892bf94203cc7f79bbec443562d8ee2badf49ac96fddf1376f43556a11ca71ed84d0a6e556d9c51b6fb418db99a14c134f6fca5@92.242.140.21:30303 --network-id 21 --nat-method=DOCKER --p2p-host="0.0.0.0" --p2p-port=30304 --rpc-http-host="0.0.0.0" --rpc-http-port=8546 --rpc-http-enabled --rpc-http-api=WEB3,ETH,NET,ADMIN,CLIQUE --host-whitelist="*" --rpc-http-cors-origins="all"_ ] ... any help appreciated

bswamina22 (Sun, 10 May 2020 20:05:42 GMT):
Trying to setup a clique private network using docker ... created accounts using myetherwallet.com, extracted the accounts and private keys... created the genesis.json file... started node-1 ... got the enode url and started the node-2 with the enode address of node-1 as the boot node and dont see them connecting ... stuck in waiting for peers ... Here is the command for the *first* node: [ ```docker run --rm --name bank -p 30303:30303 -p 8545:8545 -u $(id -u $USER):$(id -g $USER) -v $BESU_HOME:/root hyperledger/besu:1.4.4 --data-path=/root/data/bank --genesis-file=/root/genesis-21.json --network-id 21 --nat-method=DOCKER --p2p-host="0.0.0.0" --rpc-http-host="0.0.0.0" --rpc-http-port=8545 --rpc-http-enabled --rpc-http-api=WEB3,ETH,NET,ADMIN,CLIQUE --host-whitelist="*" --rpc-http-cors-origins="all"``` ] and here is the command for the *second*: [ ```docker run --rm --name buyer -p 30304:30304 -p 8546:8546 -u $(id -u $USER):$(id -g $USER) -v $BESU_HOME:/root hyperledger/besu:1.4.4 --data-path=/root/data/buyer --genesis-file=/root/genesis-21.json --bootnodes=enode://db91c66ac7a69ced5d4b8c224892bf94203cc7f79bbec443562d8ee2badf49ac96fddf1376f43556a11ca71ed84d0a6e556d9c51b6fb418db99a14c134f6fca5@92.242.140.21:30303 --network-id 21 --nat-method=DOCKER --p2p-host="0.0.0.0" --p2p-port=30304 --rpc-http-host="0.0.0.0" --rpc-http-port=8546 --rpc-http-enabled --rpc-http-api=WEB3,ETH,NET,ADMIN,CLIQUE --host-whitelist="*" --rpc-http-cors-origins="all"```] ... any help appreciated

bswamina22 (Sun, 10 May 2020 20:52:25 GMT):
Trying to setup a clique private network using docker ... waiting for peers

joshuafernandes (Sun, 10 May 2020 21:10:09 GMT):
Hello @HLFPOC that should be fine. The typical use case for multiple organisations is the validators in one pool so to speak with a set of besu & orion nodes per organisation. This keeps separation of concerns clear and what a few consortiums generally follow. However there is no strict rule and each network is different so there are quite a few configs you can use based on your requirements. Hope that helps

SergioTorres (Mon, 11 May 2020 07:32:04 GMT):
Has joined the channel.

Bobur (Mon, 11 May 2020 07:41:20 GMT):
@jframe thank you! I solved it! I was proving wrong public key to jwt.io when generating token

Bobur (Mon, 11 May 2020 07:41:20 GMT):
@jframe thank you! I solved it! I was providing wrong public key to jwt.io when generating token

bmg (Mon, 11 May 2020 08:24:03 GMT):
Hi all. I've found an edge case that the FlatTraceGenerator doesn't handle. I want to put together a test case to demonstrate it before raising the issue. I'm trying to figure out how the test blocks are generated for the rpc tests so I can add an extra one to the test data export. Can someone point me in the right direction?

YoussefAlaa (Mon, 11 May 2020 09:48:09 GMT):
Hi guys, I was trying to make a deployment code that deploys a contract using its ABI, I did it easily before on testnets using web3js, or using truffle ".new()" function, Although, these ways doesn't seem to work with besu, I need to know a proper way please.

shemnon (Mon, 11 May 2020 19:07:13 GMT):
Besu contributor call in ~19 hours, EMEA/AMER friendly time - https://wiki.hyperledger.org/display/BESU/2020-05-12+Contributor+Call

coenie (Tue, 12 May 2020 09:29:29 GMT):
Hi, is there an option to set the coinbase address when using ibft2, other than the validator node's address?

coenie (Tue, 12 May 2020 09:29:29 GMT):
Hi, is there an option to set the coinbase address when using ibft2, other than the validator node's address? - that is, for non zero gas priced networks

coenie (Tue, 12 May 2020 09:46:43 GMT):
Is there perhaps a design related reason for ignoring the coinbase address specified on the command line?

ajsutton (Tue, 12 May 2020 09:52:45 GMT):
@coenie The coinbase header in IBFT2 and Clique got repurposed as part of the voting mechanism to add and remove validators and the standard says that the transaction fees and block rewards go to the block producer (recovered from the block signature). There's no way to specify a different coinbase address.

coenie (Tue, 12 May 2020 10:19:57 GMT):
okay thanks for that!

coenie (Tue, 12 May 2020 10:30:13 GMT):
@ajsutton might it be possible to use the EXTRA_VANITY space inside the extraData to include an address to which the fees should go?

ajsutton (Tue, 12 May 2020 10:42:26 GMT):
It would be possible to shove more stuff into the extra data field but it would be a consensus affecting change - the rewards going to a different account would change the state root so all clients would have to support the change. At that point, you could pretty much put the value anywhere you like.

ajsutton (Tue, 12 May 2020 10:43:07 GMT):
So basically, it's possible to modify IBFT2 and Clique to support custom beneficiaries, but that's not how they work today so you'd basically be creating an IBFT3 or Clique2.

coenie (Tue, 12 May 2020 11:01:30 GMT):
okay thanks for that.

coenie (Tue, 12 May 2020 11:02:11 GMT):
On a separate, but related node, can validators use something like ethsigner (or an HSM) instead of needing key files?

coenie (Tue, 12 May 2020 11:02:11 GMT):
On a separate, but related node, can validators use something like ethsigner (or an HSM) instead of needing key files to sign for blocks?

coenie (Tue, 12 May 2020 11:02:11 GMT):
On a separate, but related note, can validators use something like ethsigner (or an HSM) instead of needing key files to sign for blocks?

coenie (Tue, 12 May 2020 11:07:14 GMT):
So to send the fees to an address, is it not simply the first (or special) transaction? or that only with ethash? If not, does every node need to get the address from the signature of the block and give that address the fees?

coenie (Tue, 12 May 2020 11:55:21 GMT):
nvm, I think I've figured it out :)

abdelhamidbakhta (Tue, 12 May 2020 13:24:34 GMT):
flattrace

abdelhamidbakhta (Tue, 12 May 2020 13:27:09 GMT):
You can add your blocks here: https://github.com/hyperledger/besu/tree/master/ethereum/api/src/test/resources/org/hyperledger/besu/ethereum/api/jsonrpc/trace/chain-data And add your test cases here: https://github.com/hyperledger/besu/tree/master/ethereum/api/src/test/resources/org/hyperledger/besu/ethereum/api/jsonrpc/trace/specs/replay-trace-transaction/flat

bmg (Tue, 12 May 2020 13:38:38 GMT):
@abdelhamidbakhta ok thanks

shemnon (Tue, 12 May 2020 14:10:49 GMT):
Besu contributor call in > 1hour, EMEA/AMER friendly time - https://wiki.hyperledger.org/display/BESU/2020-05-12+Contributor+Call

shemnon (Tue, 12 May 2020 14:55:39 GMT):
https://consensys.zoom.us/j/199741148

bmg (Tue, 12 May 2020 16:45:34 GMT):
Added the issue https://github.com/hyperledger/besu/issues/911

bmg (Wed, 13 May 2020 06:52:46 GMT):
Just added a separate tracing bug that I found https://github.com/hyperledger/besu/issues/915

K2LIS (Wed, 13 May 2020 08:58:49 GMT):
Hi everyone, is there any official documentation describing the performance capilities of BESU in terms of tps - tx/s ? If not, any bench / test metrics to share ? thanks

abdelhamidbakhta (Wed, 13 May 2020 10:52:03 GMT):
Thank you very much.

bmg (Wed, 13 May 2020 11:16:10 GMT):
No problem

bmg (Wed, 13 May 2020 11:17:22 GMT):
No problem

K2LIS (Wed, 13 May 2020 12:50:03 GMT):
@bmg you parisitize all the discussions with your query it's not a good way to do that because people forget the intial query...

bmg (Wed, 13 May 2020 12:57:27 GMT):
??

krzyhoo (Wed, 13 May 2020 13:12:55 GMT):
Has joined the channel.

krzyhoo (Wed, 13 May 2020 13:12:56 GMT):
Hi All. I have a naive question, but I hope I can get some clarity here. When I propose a new Validator to my IBFT2.0 validator pool, i can do this by sending a proposeNewValidator RPC call. What I'm struggling to understand is are the security measures. anyone can send the `curl` call...

krzyhoo (Wed, 13 May 2020 13:13:13 GMT):
I've been trying to find some more infos on that in the docs, but it is very sparse

krzyhoo (Wed, 13 May 2020 13:13:45 GMT):
I'd love to better understand this process. The voting is not so intuitive to me....

bmg (Wed, 13 May 2020 13:17:08 GMT):
There's a few ways you can lock down the rpc:: https://besu.hyperledger.org/en/stable/HowTo/Interact/APIs/Authentication/

krzyhoo (Wed, 13 May 2020 13:18:38 GMT):
OK, clear on that, but does it mean that to vote, I need to send rpc calls to each node acting as validator?

krzyhoo (Wed, 13 May 2020 13:18:47 GMT):
I'm not clear on this one

krzyhoo (Wed, 13 May 2020 13:20:17 GMT):
so assumung I have 4 validators running in my test environment on the same machine: `192.168.88.10:8545`, `192.168.88.10:8546`, `192.168.88.10:8547`, `192.168.88.10:8548`, do I need to send an RPC call to each of those endpoints?

bmg (Wed, 13 May 2020 13:20:47 GMT):
As I understand it a majority is required before a new validator is approved, so yes, you need to propose the new validator within a given number of blocks (epoch) on all the validators.

bmg (Wed, 13 May 2020 13:21:21 GMT):
Disclaimer: I haven't used besu much with PoA

krzyhoo (Wed, 13 May 2020 13:38:20 GMT):
Interestingly - I have made the test and this is the *before* ```curl -X POST --data '{"jsonrpc":"2.0","method":"ibft_getValidatorsByBlockNumber","params":["latest"], "id":1}' http://192.168.88.10:8545 kradecki@MacSzyszka { "jsonrpc" : "2.0", "id" : 1, "result" : [ "0x3db79b2d7178531b3a6606340b8cd4179b6d306d", "0x6f1b0f3614bdf26ff6489cef5e7f86841f2851e6", "0x815fee310b75615172fce4c2c9b93c85678c8119", "0xbc2d69d59c7a65c3c793d2fb5b13a5a46449eb5c" ] }%```

krzyhoo (Wed, 13 May 2020 13:38:50 GMT):
this is the *after*: ```curl -X POST --data '{"jsonrpc":"2.0","method":"ibft_getValidatorsByBlockNumber","params":["latest"], "id":1}' http://192.168.88.10:8545 kradecki@MacSzyszka { "jsonrpc" : "2.0", "id" : 1, "result" : [ "0x3db79b2d7178531b3a6606340b8cd4179b6d306d", "0x6f1b0f3614bdf26ff6489cef5e7f86841f2851e6", "0x815fee310b75615172fce4c2c9b93c85678c8119" ] }%```

krzyhoo (Wed, 13 May 2020 13:38:58 GMT):
*BUT*:

krzyhoo (Wed, 13 May 2020 13:39:15 GMT):
```curl -X POST --data '{"jsonrpc":"2.0","method":"ibft_getPendingVotes","params":[], "id":1}' http://192.168.88.10:8545 kradecki@MacSzyszka { "jsonrpc" : "2.0", "id" : 1, "result" : { "0xbc2d69d59c7a65c3c793d2fb5b13a5a46449eb5c" : false } }%```

krzyhoo (Wed, 13 May 2020 13:39:26 GMT):
the vode to remove a validator is still pending

krzyhoo (Wed, 13 May 2020 13:39:28 GMT):
:(

krzyhoo (Wed, 13 May 2020 13:40:44 GMT):
any idea why...?

krzyhoo (Wed, 13 May 2020 13:41:14 GMT):
even though all 3 remaining validators have voted to remove thr fourth one

krzyhoo (Wed, 13 May 2020 13:57:24 GMT):
please, please not at all at once :P

trent.mohay (Wed, 13 May 2020 22:02:57 GMT):
Hi @krzyhoo, I'll take a look at the code (its been a while) - but I think the short answer is that a vote exist until the next epoch, not just until it has been actioned. Given the way voting works - voting for a node to be "out", even if they are already "out" doesn't have an affect on the system.

EdJoJob (Thu, 14 May 2020 00:31:06 GMT):
In addition the RPC for the validators may be on a firewalled network segment that only appropriately authenticated users would be able to access, as opposed to the P2P interface that the other nodes need access to

krzyhoo (Thu, 14 May 2020 10:53:49 GMT):
But that would mean that validators can't serve as endpoints for Metamask, for example, @trent.mohay

krzyhoo (Thu, 14 May 2020 10:54:25 GMT):
unless this is exactly the desired good practice one should follow

whatasillyworld (Thu, 14 May 2020 12:52:26 GMT):
Has joined the channel.

whatasillyworld (Thu, 14 May 2020 12:52:27 GMT):
Hi, we're having issues removing validators from our Besu network. We have one party in the network running one validator and two edge nodes. When party two joins the network, also with one validator and two edge nodes, we call `ibft_proposeValidatorVote` (with parameter true) on the first validator node, which successfully makes the new node an actual validator. However, when party two wants to leave the network and we do the exact reverse, things seem to go wrong. We call `ibft_proposeValidatorVote` (with paramater false this time) on the first validator, but as soon as the nodes of party two go offline, the network seems to stop mining. Not sure what's happening here, or if we're missing a step in the process? Please let me know if you need more info.

whatasillyworld (Thu, 14 May 2020 13:09:14 GMT):
Could it be because the nodes are removed before the next block was mined in which they are no longer validators?

abdelhamidbakhta (Thu, 14 May 2020 15:46:46 GMT):
That is not true at all. @bmg Your contribution is very valuable.

tomhay (Thu, 14 May 2020 22:05:23 GMT):
Has joined the channel.

Benjamin (Fri, 15 May 2020 04:37:50 GMT):
Hi. all. I've question. "https://besu.hyperledger.org/en/stable/Concepts/Privacy/Onchain-PrivacyGroups/" >> Onchain privacy groups are not supported with multi-tenancy. Is it because the function has not been developed yet? Or is it not possible to develop in the future because the concept is different?

pinges (Fri, 15 May 2020 05:39:34 GMT):
Hi Benjamin, Onchain privacy groups are a new feature that is not production ready yet. One of the limitations of this new feature is that it is not supported with multi-tenancy. The work to support onchain privacy with multi-tenancy is in our backlog.

trent.mohay (Fri, 15 May 2020 06:18:29 GMT):
Hey @whatasillyworld, When voting a validator in/out, you need to have >50% voting in the same direction - thus, in a validator-pool of 2, you must get both nodes to vote one validator out (yes, you can vote yourself out). This may not be ideal - however, for a production system to be byzantine fault tolerant, you need at least 4 validators; so we're dealing with a bit of a corner case here. Sorry if it's caused heart-ache, and praying it hasn't cost you too much time.

trent.mohay (Fri, 15 May 2020 06:24:22 GMT):
Hey @krzyhoo, _personally_ I'd probably not expose my validator RPC port to the world. I would suggest you may be able to use the Besu RPC permissioning (https://besu.hyperledger.org/en/stable/HowTo/Interact/APIs/Authentication/) to only allow access to the IBFT RPC API group to a select set of logins ... however, I haven't used Metamask <-> PermissionedBesu, so can't comment as to how/if that may operate.

trent.mohay (Fri, 15 May 2020 06:24:22 GMT):
Hey @krzyhoo, _personally_ I'd probably not expose my validator RPC port to the world. I would suggest you may be able to use the "Besu RPC Authentication and Authorisation" (https://besu.hyperledger.org/en/stable/HowTo/Interact/APIs/Authentication/) to only allow access to the IBFT RPC API group to a select set of logins ... however, I haven't used Metamask <-> PermissionedBesu, so can't comment as to how/if that may operate.

whatasillyworld (Fri, 15 May 2020 07:30:53 GMT):
Hi @trent.mohay, that absolutely makes sense! It also works for our use case, so we'll try that approach. Thanks for the tip!

lucassaldanha (Sun, 17 May 2020 21:33:38 GMT):
We re working on it and targeting to release this on our 1.5 release (June).

madelinemurray (Sun, 17 May 2020 23:09:01 GMT):
@krzyhoo using JSON RPC Authentication and Authorization with Metamask is not supported.

krzyhoo (Mon, 18 May 2020 06:04:22 GMT):
Thanks @trent.mohay

krzyhoo (Mon, 18 May 2020 06:05:17 GMT):
@madelinemurray - after brief discussions here I would opt for a solution where validators are used only to - you know, perform validations and would not serve es entry points for _regular_ RPC cala from metamask for example

krzyhoo (Mon, 18 May 2020 06:05:17 GMT):
@madelinemurray - after brief discussions here I would opt for a solution where validators are used only to - you know - perform validations and would not serve es entry points for _regular_ RPC calls from metamask for example

krzyhoo (Mon, 18 May 2020 06:05:40 GMT):
I would have a set of non-validators with exposed RPC ports to network participants

Benjamin (Mon, 18 May 2020 08:15:34 GMT):
Thanks

suvajit-sarkar (Mon, 18 May 2020 12:09:27 GMT):
Has joined the channel.

suvajit-sarkar (Mon, 18 May 2020 12:09:29 GMT):
Hi, I'm from Hyperledgerlabs Blockchain automation framework (BAF) team, BAF helps in deploying production-ready DLT platforms to cloud infrastructure and we uses Ansible, Helm, and Kubernetes for it. We support deployment of DLT network such as Hyperledger Fabric, Hyperledger Indy, R3 Corda and Quorum and currently adding support for Hyperledger Besu. We want to get your views and guidance on this. And also if there are any sample helmcharts for deploying to kubernetes.

suvajit-sarkar (Mon, 18 May 2020 12:09:29 GMT):
Hi, I'm from Hyperledgerlabs Blockchain automation framework (BAF) team, BAF helps in deploying production-ready DLT platforms to cloud infrastructure and we uses Ansible, Helm, and Kubernetes for it. We support deployment of DLT network such as Hyperledger Fabric, Hyperledger Indy, R3 Corda and Quorum and currently adding support for Hyperledger Besu. We want to get your views and guidance on this. And also if there are any sample helmcharts for deploying to kubernetes.

MatiasGallardo (Mon, 18 May 2020 17:53:40 GMT):
Hi all!! I am not finding in the docs about the limit in the size of a smart contract, is there any limit or it only depends on the gas limit of the block? Thanks in advance

atoulme (Mon, 18 May 2020 18:45:31 GMT):
Hi all!! I am not finding in the docs about the limit in the size of a smart contract, is there any limit or it only depends on the gas limi

shemnon (Mon, 18 May 2020 19:47:28 GMT):
It's a configuration option that can be specified in the genesis file. Default is 24k. Changing it makes the contract incompatible with mainnet, but if private chains are your only target that would be fine. https://github.com/hyperledger/besu/blob/master/config/src/main/resources/dev.json#L12

sownak (Tue, 19 May 2020 09:51:41 GMT):
Has joined the channel.

raduke (Tue, 19 May 2020 14:03:21 GMT):
Has joined the channel.

eum602 (Tue, 19 May 2020 15:51:00 GMT):
Hello everyone, I have a couple of nodes with private transactions(executed with version 1.3.x). Because I updated Besu to 1.4.4 I started the migration process (--privacy-enable-database-migration). I started the migration yesterday, now I observe the migration continues but it is repeating the processing. Any idea what is happening?

madelinemurray (Tue, 19 May 2020 19:36:50 GMT):
Have you got any logs you can share? The logs indicate progress - is the migration running all the way through and then repeating?

arash009 (Wed, 20 May 2020 01:36:42 GMT):
Hi @suvajit-sarkar please refer here as it contains the samples that you are after: https://github.com/PegaSysEng/besu-kubernetes

SergioTorres (Wed, 20 May 2020 10:20:55 GMT):
Hello everyone! I have a network with 11 nodes and two of them only can see 2 nodes. There are anyone who has the same issue?

amealwithbasil (Wed, 20 May 2020 15:55:16 GMT):
Is there a limit to the number of privacy groups that Besu can supported? For example, could it support 5000+ privacy groups?

SergioTorres (Wed, 20 May 2020 16:07:03 GMT):
Now I´m solve my own issue... Both peers aren´t in the white list accounts... Sorry hahaha

deployer21 (Wed, 20 May 2020 17:05:30 GMT):
Has joined the channel.

deployer21 (Wed, 20 May 2020 17:08:51 GMT):
Hey guys, do you know if there is a FAQ's forum or something, for Besu? Thanks

shemnon (Wed, 20 May 2020 17:53:49 GMT):
We can make one if you think it's valuable. Right now it is just #besu and #besu-contributors

tomhay (Wed, 20 May 2020 18:14:04 GMT):
Glad you were able to solve it, and thanks for sharing what the solution was!

deployer21 (Wed, 20 May 2020 18:15:55 GMT):
It could be an idea :) thanks for the reply

lucassaldanha (Wed, 20 May 2020 20:31:57 GMT):
Hi @amealwithbasil ! Virtually, there is no limit in the number of groups that you can have. If it would support 5k groups? I believe it would. We haven't had a specific test around the number of groups. Keep us posted about how your work is going. We are interested in different use cases to help us improve Besu. Cheers!

achrinza (Thu, 21 May 2020 06:17:57 GMT):
Has joined the channel.

amealwithbasil (Thu, 21 May 2020 16:26:42 GMT):
Great to know @lucassaldanha! Will keep you updated as we explore this more.

arunog (Thu, 21 May 2020 22:17:52 GMT):
k8s

eum602 (Thu, 21 May 2020 23:18:42 GMT):
Hello everyone, I have checked orion documentation and found interesting high availability configuration. Lets assume I configure two orion nodes, in such scenario. Is it possible to use the same orion private keys in both orion nodes?

lucassaldanha (Thu, 21 May 2020 23:22:58 GMT):
Hi @eum602 ! You are correct. You should configure both nodes with the same key. I'll check that our documentation makes this clear.

lucassaldanha (Thu, 21 May 2020 23:23:38 GMT):
And they should both advertise the load balancer address (not their internal addresses)

eum602 (Thu, 21 May 2020 23:24:04 GMT):
excellent @lucassaldanha , thats great!!, I makes orion much more suitable for production.

eum602 (Thu, 21 May 2020 23:24:04 GMT):
excellent @lucassaldanha , thats great!!, It makes orion much more suitable for production.

madelinemurray (Thu, 21 May 2020 23:54:51 GMT):
If there's specific questions you'd like answered that aren't answered in the documentation (https://besu.hyperledger.org/en/stable/) or are answered, but you couldn't easily find the answer, we'd love to here what they are. It's so far been a deliberate choice to update the docs in response to questions rather than create a FAQ but we can reassess that decision.

eum602 (Sun, 24 May 2020 03:43:10 GMT):
Hello, I am facing something strange, I am sycing a node, all was working well but now some errors are appearing. The info logs show it gets stuck at some block. Debug logs shows the following: 2020-05-24T03:40:00.717+0000 DEBUG Timed out while waiting for response from peer 0x3632c7f222fcb4af11... 2020-05-24T03:40:00.717+0000 DEBUG Retrying after recoverable failure from peer task CompleteBlocksTask: Timeout after 5000 MILLISECONDS 2020-05-24T03:40:00.853+0000 DEBUG Received Wire PING 2020-05-24T03:40:01.718+0000 DEBUG Unhandled exception in pipeline. Aborting.``` Please can someone give an idea what could be happening?. ```

eum602 (Sun, 24 May 2020 03:58:33 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=NEG28b8EfxaWDaSsn)
debug_errors.log

shemnon (Sun, 24 May 2020 04:37:04 GMT):
This looks to be during a sync, and it looks like some number of the peers don't have the header or body you are requesting to download. It retries only 5 times to prevent us from hammering a peer that doesn't have it. Eventually it tries again after a longer timeout and usually asks another peer for the data.

eum602 (Sun, 24 May 2020 04:40:54 GMT):
Yes @shemnon , I am trying to sync, the node was working well, but I decided to re sync again and the error appeared; I have other nodes in the network which are working well.

shemnon (Sun, 24 May 2020 04:41:40 GMT):
If the response doesn't come fast enough we also treat it like it is missing. It looks like things recovered w/in 2 minutes.

eum602 (Sun, 24 May 2020 04:45:45 GMT):
Currently the node is stuck, any suggest how can I deal with this issue?

shemnon (Sun, 24 May 2020 04:47:40 GMT):
Is it always the same peer?

eum602 (Sun, 24 May 2020 04:48:37 GMT):
yes, it is the first case in the network.

eum602 (Sun, 24 May 2020 04:48:37 GMT):
yes, this is the first case in the network.

shemnon (Sun, 24 May 2020 04:49:34 GMT):
hmm... I don't think we have a way to block a peer.

eum602 (Sun, 24 May 2020 04:50:51 GMT):
This is very strange the node was sycing from block 0 and suddently it happened.

eum602 (Sun, 24 May 2020 04:50:51 GMT):
This is very strange the node was sycing from block 0 and suddenly it happened.

shemnon (Sun, 24 May 2020 04:53:50 GMT):
actually we do have a CLI - `--banned-node-ids` - add the node ID and it will not be allowed to connect.

eum602 (Sun, 24 May 2020 05:00:00 GMT):
Sorry @shemnon maybe I am not communnicating well my problem. I don't want to ban a node. What I am facing is a strange issue; I have a new node in my network which needs to get in sync with my network. I currently my network have 11 million blocks; for some reason during sycing process the node cannot continue sycing at it is sstuck at aproximately block number 9 million ~ .

shemnon (Sun, 24 May 2020 05:00:35 GMT):
If it's the same node failing to help you sync you ban the node on your end until you are synced. Then you un-ban it.

shemnon (Sun, 24 May 2020 05:06:09 GMT):
It's curious that none of the other nodes have 9704623. If they won't share that header then you can't full sync.

eum602 (Sun, 24 May 2020 05:06:45 GMT):
let me check on other nodes

eum602 (Sun, 24 May 2020 05:08:15 GMT):
If I query on other nodes I can find that block.

shemnon (Sun, 24 May 2020 05:09:23 GMT):
It's not a situation i've seen. Not sure I can do a decent job supporting this by chat.

eum602 (Sun, 24 May 2020 05:11:02 GMT):
yes, I would like to contribute you with other strange problem. If you consider I can have a meeting with you to show you more details about it.

shemnon (Mon, 25 May 2020 01:10:32 GMT):
Besu Contributor call in just under 24 hours - https://wiki.hyperledger.org/display/BESU/2020-05-26+Contributor+Call - APAC/AMER times

arash009 (Mon, 25 May 2020 07:26:27 GMT):
:besu: Besu v1.4.5 has been released! Get your copy here: https://bintray.com/hyperledger-org/besu-repo/besu/1.4.5#files :besu: Changelog details available at: https://github.com/hyperledger/besu/blob/master/CHANGELOG.md#145 To ensure stability of Besu, this release was delayed due to further extensive testing where we successfuly fastsyned Besu to Ethereum Mainnet and Ropsten networks.

arash009 (Mon, 25 May 2020 07:26:27 GMT):
:besu: Besu v1.4.5 has been released! Get your copy here: https://bintray.com/hyperledger-org/besu-repo/besu/1.4.5#files :besu: Changelog details available at: https://github.com/hyperledger/besu/blob/master/CHANGELOG.md#145 To ensure stability of Besu, this release was delayed due to further extensive testing where we successfuly fastsynced Besu to Ethereum Mainnet and Ropsten networks.

mikiasda (Mon, 25 May 2020 10:29:21 GMT):
Hey there, I would like to know if it is possible to create blocks on demand, namely, do not produce empty blocks

mikiasda (Mon, 25 May 2020 10:31:08 GMT):
I am using Clique, but I wouldn't mind to change to another consensus protocol since I am having problems with chain storage... (increases rapidly)

mikiasda (Mon, 25 May 2020 10:31:44 GMT):
Apart from creating blocks on demand, is there a way to reduce chain storage? maybe with sync or pruning options?

frank.cornelis (Mon, 25 May 2020 13:45:49 GMT):
Has joined the channel.

frank.cornelis (Mon, 25 May 2020 13:45:49 GMT):
For the moment we use ethereumj to unit test our smart contract using org.ethereum.util.blockchain.StandaloneBlockchain. Since ethereumj is EOL, we are looking for an alternative. Does Besu has something similar?

shemnon (Mon, 25 May 2020 16:05:10 GMT):
Web3J uses Besu under the covers to do smart contract debugging and their embedded evm - https://docs.web3j.io/embedded_ethereum/ - That may be what you need.

shemnon (Mon, 25 May 2020 16:05:23 GMT):
@mikiasa

shemnon (Mon, 25 May 2020 16:06:44 GMT):
None of IBFT1/2, EThash, and Clique have support for suppressing block production. I believe that Aura has support, but that is not currently on our roadmap.

shemnon (Mon, 25 May 2020 16:09:08 GMT):
We do have tree pruning as an option, https://besu.hyperledger.org/en/stable/Concepts/Pruning/ - but prior to 1.4.5 there was a bug in duplicate contract storage. We are waiting for longer burn-in tests before we mark that bug as resolved.

eum602 (Mon, 25 May 2020 16:17:04 GMT):
@shemnon I could avoid the issue by totally copying another node's database into the node with issues. Then I restarted and now it is working. I know it is not the best approach but maybe it could help someone else.

shemnon (Mon, 25 May 2020 16:18:01 GMT):
Yes, that is also good practice for keeping a node backup.

eum602 (Mon, 25 May 2020 17:21:08 GMT):
Hello, please can someone tell me how can I avoid private database migration?, I am upgrading to 1.4.x but now a database migration seems to be a must. I tried to make the migration process but it didn't succeed; now I would like to know if there is a way to avoid that process even when it could imply losing my private transactions.

lucassaldanha (Mon, 25 May 2020 23:09:58 GMT):
Hi! On a previous thread, we have asked your for some more info to help chase this migration issue. Another alternative is deleting the node database before upgrading, and after the upgrade letting the node synchronise with the network again.

lucassaldanha (Mon, 25 May 2020 23:11:21 GMT):
If you want help with the migration, please send us the logs and versions that you are using so we can try to understand why migration isn't working for you.

lucassaldanha (Mon, 25 May 2020 23:11:21 GMT):
If you want help with the migration, please send us the logs and versions (besu and orion) that you are using so we can try to understand why migration isn't working for you

eum602 (Mon, 25 May 2020 23:54:31 GMT):
thanks @lucassaldanha @madelinemurray , I followed both approaches: Let me recreate the environment: * Orion 1.4.0 ; Besu 1.3.3 * Orion using the built-in database. Steps: First approach: * I updated from orion 1.4.0 ==> 1.5.2 * besu 1.3.3 ==> 1.4.4 * restarted the nodes indicating --privacy-enable-database-migration * The process started and after ~24 hours the node self restarted again and repeating all the process again. * I decided to abort that approach. I didn't delete nothing. I don know why this apporach didn't succeed.

eum602 (Mon, 25 May 2020 23:54:31 GMT):
thanks @lucassaldanha @madelinemurray , I followed the these steps: Let me recreate the environment: * Orion 1.4.0 ; Besu 1.3.3 * Orion using the built-in database. Steps: First approach: * I updated from orion 1.4.0 ==> 1.5.2 * besu 1.3.3 ==> 1.4.4 * restarted the nodes indicating --privacy-enable-database-migration * The process started and after ~24 hours the node self restarted again and repeating all the process again. * I decided to abort that approach. I didn't delete nothing. I don know why this apporach didn't succeed.

lucassaldanha (Mon, 25 May 2020 23:56:21 GMT):
It would help if you could share the logs from Besu and Orion.

lucassaldanha (Mon, 25 May 2020 23:56:32 GMT):
To help us understand what could've gone wrong

eum602 (Tue, 26 May 2020 00:45:43 GMT):
Let me share a fragment of debug logs:

eum602 (Tue, 26 May 2020 00:46:42 GMT):

migration.log

madelinemurray (Tue, 26 May 2020 03:21:12 GMT):
Thanks. We're looking into this and the logs will be helpful. To avoid the migration, you can resync. Resyncing is the option Lucas suggested above: > Another alternative is deleting the > node database before upgrading, > and after the upgrade letting the > node synchronise with the network > again. If you're upgrading from 1.3.3 and need your private transaction execution data, it will be necessary to resync: https://wiki.hyperledger.org/display/BESU/Critical+Issue+for+Privacy+Users

arash009 (Tue, 26 May 2020 03:46:10 GMT):
Hi @mikiasda . There is curretly no support for something like this. Its something we are currently investigating to see if there are acceptable ways to approach this problem to create blocks only when required in an IBFT2.0 network. Can you share more about the particular usecase that is being problematic with the empty block generation?

arash009 (Tue, 26 May 2020 03:46:10 GMT):
Hi @mikiasda . There is currently no support for something like this. Its something we are currently investigating to see if there are acceptable ways to approach this problem to create blocks only when required in an IBFT2.0 network. Can you share more about the particular usecase that is being problematic with the empty block generation?

frank.cornelis (Tue, 26 May 2020 04:49:28 GMT):
@shemnon thanks for the link to embedded_ethereum.

reddy (Tue, 26 May 2020 05:44:39 GMT):
alethio

K2LIS (Tue, 26 May 2020 12:10:27 GMT):
Hi everyone, is there any way to implement timers that triggers transactions with BESU (ex : to trigger a funds transfer at a specific date) ? Or are we obliged to manage this off-chain ? Thanks a lot :)

SamuelKitavi (Tue, 26 May 2020 12:26:30 GMT):
Has joined the channel.

shemnon (Tue, 26 May 2020 15:33:05 GMT):
The trick is to get the pulse that will fire off the event. There is no mechanism currently to do that without processing a transaction. So the closest you could do is a smart contract that has logic where it stops the contract unless the blockchain timestamp is greater than the desired time, and fire TXes at it after that time.

shemnon (Tue, 26 May 2020 15:34:50 GMT):
The risk is that the timestamp can drift and the time may not be accurate, there is no requirement that blocks get a NTP signed packet or anything like that. Although they are mostly accurate as clients tend not to propagate blocks too far in the future.

shemnon (Tue, 26 May 2020 15:35:13 GMT):
The second risk is that if blocks are too full getting that trigger tx executed may be delayed or expensive.

shemnon (Tue, 26 May 2020 15:36:16 GMT):
If you are talking about a trigger hours or days or more away and being off by minutes to an hour late for the actual execution is acceptable then it can be done.

K2LIS (Wed, 27 May 2020 13:34:52 GMT):
thanks a lot @shen

K2LIS (Wed, 27 May 2020 13:34:52 GMT):
thanks a lot @shemnon

Yazanator (Thu, 28 May 2020 00:02:09 GMT):
hey all, I have a question

Yazanator (Thu, 28 May 2020 00:02:31 GMT):
so we have a proof of concept for Keccak256 mining on Besu on a private network here: https://github.com/whiteblock/besu/commit/c431e613fa200c2b0cfe8505995a59b5a4dfd6dd

Yazanator (Thu, 28 May 2020 00:02:51 GMT):
based on this branch, what is needed in order for us to submit a PR for it to Hyperledger Besu?

Yazanator (Thu, 28 May 2020 00:02:59 GMT):
to test the mining, here's a container https://github.com/whiteblock/keccak-besu-testnet/

shemnon (Thu, 28 May 2020 00:46:57 GMT):
If you could rebase the commits to a handful of commits on top of current master that would be the first place to start.

shemnon (Thu, 28 May 2020 00:48:09 GMT):
As long as it is a feature that can be ignored by chains that don't care the real question is how well do the unit and acceptance tests exercise what is present.

shemnon (Thu, 28 May 2020 00:48:26 GMT):
And as long as it "feels like" the other features.

shemnon (Thu, 28 May 2020 00:49:11 GMT):
There may be other PRs worth following up with, but those depend on ecosystem support. Namely stratum support and a native keccak library for CPU mining.

shemnon (Thu, 28 May 2020 00:49:22 GMT):
But that also depends on how far this goes with ETC.

JaimeGomezGarcia (Thu, 28 May 2020 14:45:37 GMT):
Has joined the channel.

Yazanator (Fri, 29 May 2020 01:48:14 GMT):
thanks @shemnon i missed this. I was wondering if there was any PR that are a good reference for unit tests we can model on mining on Besu. That way we can apply any of the unit tests of Besu for Keccak256 mining. It's a feature that can be ignored by chains. Currently it's only to run in a private network while still being there. I'm not familiar with Stratum, are there any links you can refer me to? For native library for keccak for cpu mining, i can look at any differences between both implementations. Currently there's no plan for it being adopted in ETC as it's an ECIP in the draft stage, which is why we preferred to build a proof of concept on a private network to look at keccak256 mining more. I wanted to move it from Proof of Concept and contribute it back to Hyperledger Besu since I felt it was an important feature that the client can benefit from for all EVM networks.

Yazanator (Fri, 29 May 2020 01:48:14 GMT):
thanks @shemnon i missed this. I was wondering if there was any PR that are a good reference for unit tests we can model on mining on Besu. That way we can apply any of the unit tests of Besu for Keccak256 mining. It's a feature that can be ignored by chains. Currently it's only to run in a private network. I'm not familiar with Stratum, are there any links you can refer me to? For native library for keccak for cpu mining, i can look at any differences between both implementations. Currently there's no plan for it being adopted in ETC as it's an ECIP in the draft stage, which is why we preferred to build a proof of concept on a private network to look at keccak256 mining more. I wanted to move it from Proof of Concept and contribute it back to Hyperledger Besu since I felt it was an important feature that the client can benefit from for all EVM networks.

Yazanator (Fri, 29 May 2020 01:48:14 GMT):
thanks @shemnon i missed this. I was wondering if there was any PR that are a good reference for unit tests we can model on mining on Besu. That way we can apply any of the unit tests of Besu for Keccak256 mining. It's a feature that can be ignored by chains. Currently it's only to run in a private network. I'm not familiar with Stratum, are there any links you can refer me to? For native library for keccak for cpu mining, i can look at any differences between both implementations in terms of library choice. Currently there's no plan for it being adopted in ETC as it's an ECIP in the draft stage, which is why we preferred to build a proof of concept on a private network to look at keccak256 mining more. I wanted to move it from Proof of Concept and contribute it back to Hyperledger Besu since I felt it was an important feature that the client can benefit from for all EVM networks.

shemnon (Fri, 29 May 2020 01:49:38 GMT):
this is some contributor heavy stuff, I'll answer in #besu-contributors

eum602 (Fri, 29 May 2020 16:26:13 GMT):
@shemnon I see problem again in another node. After checking the logs I observe that the node is requesting to disconnect "Node is not permitted to connect. Disconnect incoming connection: ...". So it disconnects from all peers then it retries again and the cycle of failing gets repeated. The version of besu I am using is 1.4.4

illuzzig (Mon, 01 Jun 2020 09:16:08 GMT):
Has joined the channel.

illuzzig (Mon, 01 Jun 2020 09:16:08 GMT):
Hi everyone, this is my besu-box https://github.com/illuzzig/besu-box/ hope you will enjoy my integration with truffl and nestjs for RESTful API

illuzzig (Mon, 01 Jun 2020 09:16:08 GMT):
Hi everyone, this is my besu-box https://github.com/illuzzig/besu-box/ hope you will enjoy my integration with truffle and nestjs for RESTful API

illuzzig (Mon, 01 Jun 2020 09:17:55 GMT):
currently this box in not listed on truffle website and I hope it will be approved

illuzzig (Mon, 01 Jun 2020 09:17:55 GMT):
currently this box in not listed on truffle website and I hope it will be approved. Just clone my repo and start building on top

oussamachaabouni (Mon, 01 Jun 2020 10:34:37 GMT):
Has joined the channel.

oussamachaabouni (Mon, 01 Jun 2020 10:34:38 GMT):
HI , I am trying to develop a decentralized application using Besu network (ibft2) ... i am trying to interact with my contracts via a node script but eth.send doesn't work .. can someone please help me with that ??

oussamachaabouni (Mon, 01 Jun 2020 11:27:58 GMT):
i am just want to insert some information about my user which is defined in the smart contract .. so how can i send this informations to the contract ??

NicolasMassart (Mon, 01 Jun 2020 20:15:00 GMT):
hi @oussamachaabouni Besu doesn't support accounts management on purpose for security reasons. You can't make it sign your transaction. As explained in https://besu.hyperledger.org/en/stable/HowTo/Send-Transactions/Account-Management/ you will need to either sign the transaction yourself, or use a library like Web3.js to do it or send your transaction data to a signing proxy. See also this doc pages https://besu.hyperledger.org/en/stable/HowTo/Send-Transactions/Transactions/#transactions and https://besu.hyperledger.org/en/stable/Reference/API-Methods/#eth_sendrawtransaction

oussamachaabouni (Mon, 01 Jun 2020 21:24:40 GMT):
actually i am using the web3.js library .. usink the send method but it doesn t work

lucassaldanha (Tue, 02 Jun 2020 05:06:53 GMT):
Hi! Using web3js sendTransaction method won't work because it depends on having access to a wallet that will do the tx signing on your behalf. You have two options: 1. Use web3js sendSignedTransaction method (https://web3js.readthedocs.io/en/v1.2.0/web3-eth.html#sendsignedtransaction) 2. Use EthSigner to sign your transactions (then you can configure your we3js provider to EthSigner) - https://docs.ethsigner.pegasys.tech/en/stable/Tutorials/Start-EthSigner/

illuzzig (Tue, 02 Jun 2020 07:29:53 GMT):
you can find an example of smart contract interaction here https://github.com/illuzzig/besu-box/blob/master/client_script/signTransaction.js

illuzzig (Tue, 02 Jun 2020 07:31:07 GMT):
it was quite difficult to follow the doc. And I only use web3 to sign raw transaction (not ethsigner)

sumaids (Tue, 02 Jun 2020 09:12:39 GMT):
Has left the channel.

oussamachaabouni (Tue, 02 Jun 2020 11:05:47 GMT):
yeah thank for this work that help ... actually i have a question , my contract methods have 5 parameters, so my question is that how can define in them in your example ?

illuzzig (Tue, 02 Jun 2020 13:29:49 GMT):
``` const from = address[0]; const to = address[1] const amount = 10; const rawTrans = await getContract().methods.sendCoin(to, amount); const first_param = 15 //uint in solidity const to = 'receiver' ```

illuzzig (Tue, 02 Jun 2020 13:29:49 GMT):
``` const from = address[0]; const to = address[1] const amount = 10; const rawTrans = await getContract().methods.sendCoin(to, amount); ```

illuzzig (Tue, 02 Jun 2020 13:29:49 GMT):
``` // transfer.js file const from = address[0]; const to = address[1] const amount = 10; const rawTrans = await getContract().methods.sendCoin(to, amount); ```

illuzzig (Tue, 02 Jun 2020 13:31:38 GMT):
you can create another file in the client_script folder and call your method like sendCoin in my example

illuzzig (Tue, 02 Jun 2020 13:31:38 GMT):
you can create another file in the client_script folder and call your method like sendCoin in my example. sendCoin has 2 params (address - js string - and amount - int value)

illuzzig (Tue, 02 Jun 2020 13:36:30 GMT):
finally you need to call sendSignTransaction method, which accept rawtrans, from, to and amount. I pass 'to' and 'amount' only for web service request logging..

illuzzig (Tue, 02 Jun 2020 13:36:30 GMT):
finally you need to call sendSignTransaction method, which accept rawtrans, from, to and amount. I pass 'to' and 'amount' only for web service request logging.. i want to keep track the arguments that you pass in the client script to the method..

illuzzig (Tue, 02 Jun 2020 13:37:01 GMT):
you just need this

illuzzig (Tue, 02 Jun 2020 13:37:21 GMT):
``` const signed = await web3.eth.accounts.signTransaction( { to: metaCoinAddress, from: from, value: "0", data: rawTrans.encodeABI(), gasPrice: web3.eth.getGasPrice(), //web3.utils.toWei("20", "gwei"), gas: Math.round((await rawTrans.estimateGas({ from })) * 1.5), nonce: web3.utils.toHex( await web3.eth.getTransactionCount(from, "pending") ), }, privateKeys[0] ); ```

illuzzig (Tue, 02 Jun 2020 13:39:09 GMT):
``` // and cal this method. you can find this in the service of my rest api await web3.eth.sendSignedTransaction(signed ).on('receipt', receipt => { const { transactionHash, status, to, blockNumber } = receipt; resp = { transactionHash: transactionHash, status: status, to: to, blockNumber: blockNumber } }); ```

illuzzig (Tue, 02 Jun 2020 13:39:09 GMT):
``` // and call this method. you can find this in the service of my rest api await web3.eth.sendSignedTransaction(signed ).on('receipt', receipt => { const { transactionHash, status, to, blockNumber } = receipt; resp = { transactionHash: transactionHash, status: status, to: to, blockNumber: blockNumber } }); ```

oussamachaabouni (Tue, 02 Jun 2020 13:59:49 GMT):
oohhh thank you , that really help me so much

illuzzig (Tue, 02 Jun 2020 20:26:04 GMT):
check out my repo. I splitted the logic in more functions

illuzzig (Tue, 02 Jun 2020 20:26:41 GMT):
hope it will be clearer

illuzzig (Wed, 03 Jun 2020 11:52:27 GMT):
currently my besu-box is not listed on truffle website. hope it will help more poeple and start building on top of it

oussamachaabouni (Wed, 03 Jun 2020 11:59:17 GMT):
Hello, after some changes ; the script is working but it return always 'Returned error: Internal error'

illuzzig (Wed, 03 Jun 2020 12:27:46 GMT):
in the nestjs web service console, what is the error ?

oussamachaabouni (Wed, 03 Jun 2020 12:34:24 GMT):
i didn't use it , I am just want to have the result in my console , ( i will install it and try it )

oussamachaabouni (Wed, 03 Jun 2020 12:39:00 GMT):
Nothing there

illuzzig (Wed, 03 Jun 2020 12:54:29 GMT):
check out my code. i sliptted the login

illuzzig (Wed, 03 Jun 2020 12:54:29 GMT):
check out my code. i sliptted the logic

illuzzig (Wed, 03 Jun 2020 12:54:51 GMT):
now you can use a single script to direct access to the node

illuzzig (Wed, 03 Jun 2020 12:55:00 GMT):
without rest api

oussamachaabouni (Wed, 03 Jun 2020 12:58:34 GMT):
yeah i m trying to execute my code without rest api

oussamachaabouni (Wed, 03 Jun 2020 12:58:47 GMT):
i understood your code there

kuronosec (Thu, 04 Jun 2020 11:05:54 GMT):
Has joined the channel.

kuronosec (Thu, 04 Jun 2020 11:11:49 GMT):
Hi guys! I have a question regarding Besu/Orion that I hope this is the right place to ask. Does each tenant (in multi-tenancy) and Orion node get a different Ethereum/Besu address or they all use the same? thanks a lot!

lucassaldanha (Fri, 05 Jun 2020 00:32:27 GMT):
Hi, The identity for a member isn't defined by an Ethereum address. It is defined by the Orion public key. When you send a private transaction, you don't use the account to define what nodes should receive the tx, you use the Orion public key. In the same way that on the public world state, every single Ethereum account exists, think about each privacy group as a complete independent instance of the world state, in each one of these instances, all Ethereum account exists (but they don't share anything with the other instances of the world state).

kuronosec (Fri, 05 Jun 2020 06:51:40 GMT):
Cool thanks :) Now, do the tenants of a Besu/Orion operator use the same Orion public key for private transactions? Or they can different ones?

MatiasGallardo (Fri, 05 Jun 2020 12:33:55 GMT):
Hi guys!! I have a question about pruning in private chains. Is it enabled by default? What are the benefits in archive in private (is really needed)?

oussamachaabouni (Fri, 05 Jun 2020 13:52:35 GMT):
Error: Transaction was not mined within 750 seconds, please make sure your transaction was properly sent. Be aware that it might still be mined! at Object.TransactionError (/home/thinkpad/IBFT-Network/Application/node_modules/web3-core-helpers/src/errors.js:63:21) at /home/thinkpad/IBFT-Network/Application/node_modules/web3-core-method/src/index.js:485:40 at runMicrotasks () at processTicksAndRejections (internal/process/task_queues.js:97:5) { receipt: undefined } BadRequestException is not defined

oussamachaabouni (Fri, 05 Jun 2020 13:52:49 GMT):
Hello after some changes , i get that error

oussamachaabouni (Fri, 05 Jun 2020 13:53:07 GMT):
can u please help me to solve it if you have any idea ??

oussamachaabouni (Fri, 05 Jun 2020 14:00:04 GMT):
Error: Transaction was not mined within 750 seconds, please make sure your transaction was properly sent. Be aware that it might still be mined! at Object.TransactionError (/home/thinkpad/IBFT-Network/Application/node_modules/web3-core-helpers/src/errors.js:63:21) at /home/thinkpad/IBFT-Network/Application/node_modules/web3-core-method/src/index.js:485:40 at runMicrotasks () at processTicksAndRejections (internal/process/task_queues.js:97:5) { receipt: undefined } BadRequestException is not defined

deployer21 (Fri, 05 Jun 2020 15:05:30 GMT):
Hi guys, what APIs do you recommend for integrating a Java application with Besu? thanks in advance

deployer21 (Fri, 05 Jun 2020 15:08:30 GMT):
Do I actually need them? Or is it already integrated in Besu software?

deployer21 (Fri, 05 Jun 2020 15:08:30 GMT):
Do I actually need them? Or it is already integrated in Besu software?

timbeiko (Fri, 05 Jun 2020 19:00:06 GMT):
:besu: *Release Information* :besu: As most of you know, the 1.5 release of Besu is just around the corner, so I wanted to reiterate the release schedule we have planned: - *June 17 (AMER)/ 18 (AUS): Besu 1.5 RC* - *July 14 (AMER) /15 (AUS): Besu 1.5 Release* We'll have a 4 week RC cycle to allow for ample testing, bug fixes and complete mainnet fast syncs.

lucassaldanha (Sun, 07 Jun 2020 04:11:11 GMT):
Just to clarify. Is your question about using prunning with private transactions or in a private network (e.g. a consortium)?

lucassaldanha (Sun, 07 Jun 2020 04:12:03 GMT):
I'd recommend using web3j https://github.com/web3j/web3j

lucassaldanha (Sun, 07 Jun 2020 04:13:04 GMT):
Each tenant should have their own Orion public key.

lucassaldanha (Sun, 07 Jun 2020 04:14:34 GMT):
We have an example in how to setup a multi-tenant node here: https://besu.hyperledger.org/en/latest/Tutorials/Privacy/Configuring-Multi-Tenancy/

lucassaldanha (Sun, 07 Jun 2020 04:14:38 GMT):
Let me know if it helps

fergarrui (Sun, 07 Jun 2020 17:49:37 GMT):
Has joined the channel.

fergarrui (Sun, 07 Jun 2020 17:49:37 GMT):
Hi guys, not sure if there is a besu-specific channel but, any reason why there is not a method like this one: https://besu.hyperledger.org/en/stable/Reference/API-Methods/#priv_findprivacygroup But using the privacy group id to find the group instead of the participants? Otherwise, is there some way to know the participants a privacy group has knowing the group ID? Thanks!

fergarrui (Sun, 07 Jun 2020 17:49:37 GMT):
Hi guys, any reason why there is not a method like this one: https://besu.hyperledger.org/en/stable/Reference/API-Methods/#priv_findprivacygroup But using the privacy group id to find the group instead of the participants? Otherwise, is there some way to know the participants a privacy group has knowing the group ID? Thanks!

jagpreet (Mon, 08 Jun 2020 11:48:03 GMT):
Has joined the channel.

jagpreet (Mon, 08 Jun 2020 11:48:04 GMT):
Hi, The peer discovery service uses UDP protocol as mentioned here https://github.com/PegaSysEng/besu-kubernetes/blob/master/helmfile/ibft2/charts/besu-node/templates/node-service.yaml We use ambassador in BAF (blockchain automation framework) for proxy which doesn't support UDP protocol. Is there a support for TCP protocol for the same or any other alternatives?

K2LIS (Mon, 08 Jun 2020 11:52:38 GMT):
Hi everyone, is there any study or tests giving some metrics around BESU performance in terms of TPS ? I'd also to ask if anyone has already produced a storage capacity planning Template for BESU in order to determine storage requirements over the time ? Thanks 🙂

arunog (Mon, 08 Jun 2020 14:43:32 GMT):
Hi @joshuafernandes @ppoliani, I'm still having trouble connecting nodes in two k8s clusters. I've only managed to connect them using a Docker node created on another VM. I attached image explaining the diagram. `https://github.com/arunog/besu-kubernetes/blob/master/kubectl/ibft2-test/Multi-cluster.jpg`

oussamachaabouni (Mon, 08 Jun 2020 14:59:14 GMT):
hello , i am trying to generate an erc721 token but i got this error : Transaction has been reverted by the EVM . how can i solve this prob ? thanks :)

arunog (Mon, 08 Jun 2020 15:18:52 GMT):
I'm still having trouble connecting nodes in two k8s clusters. I've only managed to connect them using a Docker node created on another VM as a bridge. I attached image explaining the diagram. `https://github.com/arunog/besu-kubernetes/blob/master/kubectl/ibft2-test/Multi-cluster.jpg` I forked repo, and I created a new kubectl Ibft2 path `https://github.com/arunog/besu-kubernetes/tree/master/kubectl/ibft2-test` There are detailed all steps to reproduce it, and include all config files. Both K8s clusters are AKS, and the nodes are exposed through Loadbalancers services. I'm using hyperledger/besu:latest image. Another important point is that when the network starts, an error appears starting KubernetesNatManager: `2020-05-21 15:22:22.377+00:00 | main | INFO | KubernetesNatManager | Starting kubernetes NAT manager. 2020-05-21 15:22:22.381+00:00 | main | DEBUG | KubernetesNatManager | Trying to update information using Kubernetes client SDK. 2020-05-21 15:22:23.587+00:00 | main | DEBUG | NatService | Caught exception while trying to start the manager or service. org.hyperledger.besu.nat.core.exception.NatInitializationException: Failed update information using Kubernetes client SDK. at org.hyperledger.besu.nat.kubernetes.KubernetesNatManager.doStart(KubernetesNatManager.java:85) ~[besu-nat-1.4.5.jar:1.4.5] at org.hyperledger.besu.nat.core.AbstractNatManager.start(AbstractNatManager.java:90) ~[besu-nat-1.4.5.jar:1.4.5] at org.hyperledger.besu.nat.NatService.start(NatService.java:88) [besu-nat-1.4.5.jar:1.4.5] at org.hyperledger.besu.Runner.start(Runner.java:105) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.BesuCommand.synchronize(BesuCommand.java:1920) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.BesuCommand.startSynchronization(BesuCommand.java:1188) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.BesuCommand.run(BesuCommand.java:1060) [besu-1.4.5.jar:1.4.5] at picocli.CommandLine.executeUserObject(CommandLine.java:1769) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine.access$900(CommandLine.java:145) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine$RunLast.handle(CommandLine.java:2141) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine$RunLast.handle(CommandLine.java:2108) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine$AbstractParseResultHandler.handleParseResult(CommandLine.java:1968) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine.parseWithHandlers(CommandLine.java:2322) [picocli-4.1.4.jar:4.1.4] at org.hyperledger.besu.cli.util.ConfigOptionSearchAndRunHandler.handle(ConfigOptionSearchAndRunHandler.java:56) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.util.ConfigOptionSearchAndRunHandler.handle(ConfigOptionSearchAndRunHandler.java:31) [besu-1.4.5.jar:1.4.5] at picocli.CommandLine$AbstractParseResultHandler.handleParseResult(CommandLine.java:1968) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine.parseWithHandlers(CommandLine.java:2322) [picocli-4.1.4.jar:4.1.4] at org.hyperledger.besu.cli.BesuCommand.parse(BesuCommand.java:1184) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.BesuCommand.parse(BesuCommand.java:1044) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.Besu.main(Besu.java:49) [besu-1.4.5.jar:1.4.5] Caused by: io.kubernetes.client.ApiException: Forbidden at io.kubernetes.client.ApiClient.handleResponse(ApiClient.java:886) ~[client-java-5.0.0.jar:?] at io.kubernetes.client.ApiClient.execute(ApiClient.java:802) ~[client-java-5.0.0.jar:?] at io.kubernetes.client.apis.CoreV1Api.listServiceForAllNamespacesWithHttpInfo(CoreV1Api.java:19746) ~[client-java-api-5.0.0.jar:?] at io.kubernetes.client.apis.CoreV1Api.listServiceForAllNamespaces(CoreV1Api.java:19724) ~[client-java-api-5.0.0.jar:?] at org.hyperledger.besu.nat.kubernetes.KubernetesNatManager.doStart(KubernetesNatManager.java:76) ~[besu-nat-1.4.5.jar:1.4.5] ... 19 more 2020-05-21 15:22:23.588+00:00 | main | WARN | NatService | Unable to use NAT. Disabling NAT manager 2020-05-21 15:22:23.589+00:00 | main | INFO | NetworkRunner | Starting Network. `

arunog (Mon, 08 Jun 2020 15:18:52 GMT):
I'm still having trouble connecting nodes in two k8s clusters. I've only managed to connect them using a Docker node created on another VM as a bridge. I attached image explaining the diagram. `https://github.com/arunog/besu-kubernetes/blob/master/kubectl/ibft2-test/Multi-cluster.jpg` I forked repo, and I created a new kubectl Ibft2 path `https://github.com/arunog/besu-kubernetes/tree/master/kubectl/ibft2-test` There are detailed all steps to reproduce it, and include all config files. Both K8s clusters are AKS, and the nodes are exposed through Loadbalancers services. I'm using hyperledger/besu:latest image. Another important point is that when the network starts, an error appears starting KubernetesNatManager: `2020-05-21 15:22:22.377+00:00 | main | INFO | KubernetesNatManager | Starting kubernetes NAT manager. 2020-05-21 15:22:22.381+00:00 | main | DEBUG | KubernetesNatManager | Trying to update information using Kubernetes client SDK. 2020-05-21 15:22:23.587+00:00 | main | DEBUG | NatService | Caught exception while trying to start the manager or service. org.hyperledger.besu.nat.core.exception.NatInitializationException: Failed update information using Kubernetes client SDK. at org.hyperledger.besu.nat.kubernetes.KubernetesNatManager.doStart(KubernetesNatManager.java:85) ~[besu-nat-1.4.5.jar:1.4.5] at org.hyperledger.besu.nat.core.AbstractNatManager.start(AbstractNatManager.java:90) ~[besu-nat-1.4.5.jar:1.4.5] at org.hyperledger.besu.nat.NatService.start(NatService.java:88) [besu-nat-1.4.5.jar:1.4.5] at org.hyperledger.besu.Runner.start(Runner.java:105) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.BesuCommand.synchronize(BesuCommand.java:1920) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.BesuCommand.startSynchronization(BesuCommand.java:1188) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.BesuCommand.run(BesuCommand.java:1060) [besu-1.4.5.jar:1.4.5] at picocli.CommandLine.executeUserObject(CommandLine.java:1769) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine.access$900(CommandLine.java:145) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine$RunLast.handle(CommandLine.java:2141) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine$RunLast.handle(CommandLine.java:2108) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine$AbstractParseResultHandler.handleParseResult(CommandLine.java:1968) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine.parseWithHandlers(CommandLine.java:2322) [picocli-4.1.4.jar:4.1.4] at org.hyperledger.besu.cli.util.ConfigOptionSearchAndRunHandler.handle(ConfigOptionSearchAndRunHandler.java:56) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.util.ConfigOptionSearchAndRunHandler.handle(ConfigOptionSearchAndRunHandler.java:31) [besu-1.4.5.jar:1.4.5] at picocli.CommandLine$AbstractParseResultHandler.handleParseResult(CommandLine.java:1968) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine.parseWithHandlers(CommandLine.java:2322) [picocli-4.1.4.jar:4.1.4] at org.hyperledger.besu.cli.BesuCommand.parse(BesuCommand.java:1184) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.BesuCommand.parse(BesuCommand.java:1044) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.Besu.main(Besu.java:49) [besu-1.4.5.jar:1.4.5] Caused by: io.kubernetes.client.ApiException: Forbidden at io.kubernetes.client.ApiClient.handleResponse(ApiClient.java:886) ~[client-java-5.0.0.jar:?] at io.kubernetes.client.ApiClient.execute(ApiClient.java:802) ~[client-java-5.0.0.jar:?] at io.kubernetes.client.apis.CoreV1Api.listServiceForAllNamespacesWithHttpInfo(CoreV1Api.java:19746) ~[client-java-api-5.0.0.jar:?] at io.kubernetes.client.apis.CoreV1Api.listServiceForAllNamespaces(CoreV1Api.java:19724) ~[client-java-api-5.0.0.jar:?] at org.hyperledger.besu.nat.kubernetes.KubernetesNatManager.doStart(KubernetesNatManager.java:76) ~[besu-nat-1.4.5.jar:1.4.5] ... 19 more 2020-05-21 15:22:23.588+00:00 | main | WARN | NatService | Unable to use NAT. Disabling NAT manager 2020-05-21 15:22:23.589+00:00 | main | INFO | NetworkRunner | Starting Network.`

arunog (Mon, 08 Jun 2020 15:18:52 GMT):
I'm still having trouble connecting nodes in two k8s clusters. I've only managed to connect them using a Docker node created on another VM as a bridge. I attached image explaining the diagram. `https://github.com/arunog/besu-kubernetes/blob/master/kubectl/ibft2-test/Multi-cluster.jpg` I forked repo, and I created a new kubectl Ibft2 path `https://github.com/arunog/besu-kubernetes/tree/master/kubectl/ibft2-test` There are detailed all steps to reproduce it, and include all config files. Both K8s clusters are AKS, and the nodes are exposed through Loadbalancers services. I'm using hyperledger/besu:latest image. Another important point is that when the network starts, an error appears starting KubernetesNatManager: ``` `2020-05-21 15:22:22.377+00:00 | main | INFO | KubernetesNatManager | Starting kubernetes NAT manager. 2020-05-21 15:22:22.381+00:00 | main | DEBUG | KubernetesNatManager | Trying to update information using Kubernetes client SDK. 2020-05-21 15:22:23.587+00:00 | main | DEBUG | NatService | Caught exception while trying to start the manager or service. org.hyperledger.besu.nat.core.exception.NatInitializationException: Failed update information using Kubernetes client SDK. at org.hyperledger.besu.nat.kubernetes.KubernetesNatManager.doStart(KubernetesNatManager.java:85) ~[besu-nat-1.4.5.jar:1.4.5] at org.hyperledger.besu.nat.core.AbstractNatManager.start(AbstractNatManager.java:90) ~[besu-nat-1.4.5.jar:1.4.5] at org.hyperledger.besu.nat.NatService.start(NatService.java:88) [besu-nat-1.4.5.jar:1.4.5] at org.hyperledger.besu.Runner.start(Runner.java:105) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.BesuCommand.synchronize(BesuCommand.java:1920) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.BesuCommand.startSynchronization(BesuCommand.java:1188) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.BesuCommand.run(BesuCommand.java:1060) [besu-1.4.5.jar:1.4.5] at picocli.CommandLine.executeUserObject(CommandLine.java:1769) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine.access$900(CommandLine.java:145) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine$RunLast.handle(CommandLine.java:2141) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine$RunLast.handle(CommandLine.java:2108) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine$AbstractParseResultHandler.handleParseResult(CommandLine.java:1968) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine.parseWithHandlers(CommandLine.java:2322) [picocli-4.1.4.jar:4.1.4] at org.hyperledger.besu.cli.util.ConfigOptionSearchAndRunHandler.handle(ConfigOptionSearchAndRunHandler.java:56) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.util.ConfigOptionSearchAndRunHandler.handle(ConfigOptionSearchAndRunHandler.java:31) [besu-1.4.5.jar:1.4.5] at picocli.CommandLine$AbstractParseResultHandler.handleParseResult(CommandLine.java:1968) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine.parseWithHandlers(CommandLine.java:2322) [picocli-4.1.4.jar:4.1.4] at org.hyperledger.besu.cli.BesuCommand.parse(BesuCommand.java:1184) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.BesuCommand.parse(BesuCommand.java:1044) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.Besu.main(Besu.java:49) [besu-1.4.5.jar:1.4.5] Caused by: io.kubernetes.client.ApiException: Forbidden at io.kubernetes.client.ApiClient.handleResponse(ApiClient.java:886) ~[client-java-5.0.0.jar:?] at io.kubernetes.client.ApiClient.execute(ApiClient.java:802) ~[client-java-5.0.0.jar:?] at io.kubernetes.client.apis.CoreV1Api.listServiceForAllNamespacesWithHttpInfo(CoreV1Api.java:19746) ~[client-java-api-5.0.0.jar:?] at io.kubernetes.client.apis.CoreV1Api.listServiceForAllNamespaces(CoreV1Api.java:19724) ~[client-java-api-5.0.0.jar:?] at org.hyperledger.besu.nat.kubernetes.KubernetesNatManager.doStart(KubernetesNatManager.java:76) ~[besu-nat-1.4.5.jar:1.4.5] ... 19 more 2020-05-21 15:22:23.588+00:00 | main | WARN | NatService | Unable to use NAT. Disabling NAT manager 2020-05-21 15:22:23.589+00:00 | main | INFO | NetworkRunner | Starting Network.` ```

arunog (Mon, 08 Jun 2020 15:18:52 GMT):
I'm still having trouble connecting nodes in two k8s clusters. I've only managed to connect them using a Docker node created on another VM as a bridge. I attached image explaining the diagram. `https://github.com/arunog/besu-kubernetes/blob/master/kubectl/ibft2-test/Multi-cluster.jpg` I forked repo, and I created a new kubectl Ibft2 path `https://github.com/arunog/besu-kubernetes/tree/master/kubectl/ibft2-test` There are detailed all steps to reproduce it, and include all config files. Both K8s clusters are AKS, and the nodes are exposed through Loadbalancers services. I'm using hyperledger/besu:latest image. Another important point is that when the network starts, an error appears starting KubernetesNatManager: ``` 2020-05-21 15:22:22.377+00:00 | main | INFO | KubernetesNatManager | Starting kubernetes NAT manager. 2020-05-21 15:22:22.381+00:00 | main | DEBUG | KubernetesNatManager | Trying to update information using Kubernetes client SDK. 2020-05-21 15:22:23.587+00:00 | main | DEBUG | NatService | Caught exception while trying to start the manager or service. org.hyperledger.besu.nat.core.exception.NatInitializationException: Failed update information using Kubernetes client SDK. at org.hyperledger.besu.nat.kubernetes.KubernetesNatManager.doStart(KubernetesNatManager.java:85) ~[besu-nat-1.4.5.jar:1.4.5] at org.hyperledger.besu.nat.core.AbstractNatManager.start(AbstractNatManager.java:90) ~[besu-nat-1.4.5.jar:1.4.5] at org.hyperledger.besu.nat.NatService.start(NatService.java:88) [besu-nat-1.4.5.jar:1.4.5] at org.hyperledger.besu.Runner.start(Runner.java:105) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.BesuCommand.synchronize(BesuCommand.java:1920) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.BesuCommand.startSynchronization(BesuCommand.java:1188) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.BesuCommand.run(BesuCommand.java:1060) [besu-1.4.5.jar:1.4.5] at picocli.CommandLine.executeUserObject(CommandLine.java:1769) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine.access$900(CommandLine.java:145) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine$RunLast.handle(CommandLine.java:2141) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine$RunLast.handle(CommandLine.java:2108) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine$AbstractParseResultHandler.handleParseResult(CommandLine.java:1968) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine.parseWithHandlers(CommandLine.java:2322) [picocli-4.1.4.jar:4.1.4] at org.hyperledger.besu.cli.util.ConfigOptionSearchAndRunHandler.handle(ConfigOptionSearchAndRunHandler.java:56) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.util.ConfigOptionSearchAndRunHandler.handle(ConfigOptionSearchAndRunHandler.java:31) [besu-1.4.5.jar:1.4.5] at picocli.CommandLine$AbstractParseResultHandler.handleParseResult(CommandLine.java:1968) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine.parseWithHandlers(CommandLine.java:2322) [picocli-4.1.4.jar:4.1.4] at org.hyperledger.besu.cli.BesuCommand.parse(BesuCommand.java:1184) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.BesuCommand.parse(BesuCommand.java:1044) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.Besu.main(Besu.java:49) [besu-1.4.5.jar:1.4.5] Caused by: io.kubernetes.client.ApiException: Forbidden at io.kubernetes.client.ApiClient.handleResponse(ApiClient.java:886) ~[client-java-5.0.0.jar:?] at io.kubernetes.client.ApiClient.execute(ApiClient.java:802) ~[client-java-5.0.0.jar:?] at io.kubernetes.client.apis.CoreV1Api.listServiceForAllNamespacesWithHttpInfo(CoreV1Api.java:19746) ~[client-java-api-5.0.0.jar:?] at io.kubernetes.client.apis.CoreV1Api.listServiceForAllNamespaces(CoreV1Api.java:19724) ~[client-java-api-5.0.0.jar:?] at org.hyperledger.besu.nat.kubernetes.KubernetesNatManager.doStart(KubernetesNatManager.java:76) ~[besu-nat-1.4.5.jar:1.4.5] ... 19 more 2020-05-21 15:22:23.588+00:00 | main | WARN | NatService | Unable to use NAT. Disabling NAT manager 2020-05-21 15:22:23.589+00:00 | main | INFO | NetworkRunner | Starting Network. ```

arunog (Mon, 08 Jun 2020 15:18:52 GMT):
Hi @joshuafernandes @ppoliani , I'm still having trouble connecting nodes in two k8s clusters. I've only managed to connect them using a Docker node created on another VM as a bridge. I attached image explaining the diagram. `https://github.com/arunog/besu-kubernetes/blob/master/kubectl/ibft2-test/Multi-cluster.jpg` I forked repo, and I created a new kubectl Ibft2 path `https://github.com/arunog/besu-kubernetes/tree/master/kubectl/ibft2-test` There are detailed all steps to reproduce it, and include all config files. Both K8s clusters are AKS, and the nodes are exposed through Loadbalancers services. I'm using hyperledger/besu:latest image. Another important point is that when the network starts, an error appears starting KubernetesNatManager: ``` 2020-05-21 15:22:22.377+00:00 | main | INFO | KubernetesNatManager | Starting kubernetes NAT manager. 2020-05-21 15:22:22.381+00:00 | main | DEBUG | KubernetesNatManager | Trying to update information using Kubernetes client SDK. 2020-05-21 15:22:23.587+00:00 | main | DEBUG | NatService | Caught exception while trying to start the manager or service. org.hyperledger.besu.nat.core.exception.NatInitializationException: Failed update information using Kubernetes client SDK. at org.hyperledger.besu.nat.kubernetes.KubernetesNatManager.doStart(KubernetesNatManager.java:85) ~[besu-nat-1.4.5.jar:1.4.5] at org.hyperledger.besu.nat.core.AbstractNatManager.start(AbstractNatManager.java:90) ~[besu-nat-1.4.5.jar:1.4.5] at org.hyperledger.besu.nat.NatService.start(NatService.java:88) [besu-nat-1.4.5.jar:1.4.5] at org.hyperledger.besu.Runner.start(Runner.java:105) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.BesuCommand.synchronize(BesuCommand.java:1920) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.BesuCommand.startSynchronization(BesuCommand.java:1188) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.BesuCommand.run(BesuCommand.java:1060) [besu-1.4.5.jar:1.4.5] at picocli.CommandLine.executeUserObject(CommandLine.java:1769) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine.access$900(CommandLine.java:145) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine$RunLast.handle(CommandLine.java:2141) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine$RunLast.handle(CommandLine.java:2108) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine$AbstractParseResultHandler.handleParseResult(CommandLine.java:1968) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine.parseWithHandlers(CommandLine.java:2322) [picocli-4.1.4.jar:4.1.4] at org.hyperledger.besu.cli.util.ConfigOptionSearchAndRunHandler.handle(ConfigOptionSearchAndRunHandler.java:56) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.util.ConfigOptionSearchAndRunHandler.handle(ConfigOptionSearchAndRunHandler.java:31) [besu-1.4.5.jar:1.4.5] at picocli.CommandLine$AbstractParseResultHandler.handleParseResult(CommandLine.java:1968) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine.parseWithHandlers(CommandLine.java:2322) [picocli-4.1.4.jar:4.1.4] at org.hyperledger.besu.cli.BesuCommand.parse(BesuCommand.java:1184) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.BesuCommand.parse(BesuCommand.java:1044) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.Besu.main(Besu.java:49) [besu-1.4.5.jar:1.4.5] Caused by: io.kubernetes.client.ApiException: Forbidden at io.kubernetes.client.ApiClient.handleResponse(ApiClient.java:886) ~[client-java-5.0.0.jar:?] at io.kubernetes.client.ApiClient.execute(ApiClient.java:802) ~[client-java-5.0.0.jar:?] at io.kubernetes.client.apis.CoreV1Api.listServiceForAllNamespacesWithHttpInfo(CoreV1Api.java:19746) ~[client-java-api-5.0.0.jar:?] at io.kubernetes.client.apis.CoreV1Api.listServiceForAllNamespaces(CoreV1Api.java:19724) ~[client-java-api-5.0.0.jar:?] at org.hyperledger.besu.nat.kubernetes.KubernetesNatManager.doStart(KubernetesNatManager.java:76) ~[besu-nat-1.4.5.jar:1.4.5] ... 19 more 2020-05-21 15:22:23.588+00:00 | main | WARN | NatService | Unable to use NAT. Disabling NAT manager 2020-05-21 15:22:23.589+00:00 | main | INFO | NetworkRunner | Starting Network. ```

arunog (Mon, 08 Jun 2020 15:18:52 GMT):
Hi @joshuafernandes @ppoliani , I'm still having trouble connecting nodes in two k8s clusters. I've only managed to connect them using a Docker node created on another VM as a bridge. I attached image explaining the diagram. `https://github.com/arunog/besu-kubernetes/blob/master/kubectl/ibft2-test/Multi-cluster.jpg` I forked repo, and I created a new kubectl Ibft2 path `https://github.com/arunog/besu-kubernetes/tree/master/kubectl/ibft2-test` There are detailed all steps to reproduce it, and include all config files. Both K8s clusters are AKS, and the nodes are exposed through Loadbalancers services. I'm using hyperledger/besu:latest image and nat-method="KUBERNETES" Another important point is that when the network starts, an error appears starting KubernetesNatManager: ``` 2020-05-21 15:22:22.377+00:00 | main | INFO | KubernetesNatManager | Starting kubernetes NAT manager. 2020-05-21 15:22:22.381+00:00 | main | DEBUG | KubernetesNatManager | Trying to update information using Kubernetes client SDK. 2020-05-21 15:22:23.587+00:00 | main | DEBUG | NatService | Caught exception while trying to start the manager or service. org.hyperledger.besu.nat.core.exception.NatInitializationException: Failed update information using Kubernetes client SDK. at org.hyperledger.besu.nat.kubernetes.KubernetesNatManager.doStart(KubernetesNatManager.java:85) ~[besu-nat-1.4.5.jar:1.4.5] at org.hyperledger.besu.nat.core.AbstractNatManager.start(AbstractNatManager.java:90) ~[besu-nat-1.4.5.jar:1.4.5] at org.hyperledger.besu.nat.NatService.start(NatService.java:88) [besu-nat-1.4.5.jar:1.4.5] at org.hyperledger.besu.Runner.start(Runner.java:105) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.BesuCommand.synchronize(BesuCommand.java:1920) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.BesuCommand.startSynchronization(BesuCommand.java:1188) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.BesuCommand.run(BesuCommand.java:1060) [besu-1.4.5.jar:1.4.5] at picocli.CommandLine.executeUserObject(CommandLine.java:1769) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine.access$900(CommandLine.java:145) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine$RunLast.handle(CommandLine.java:2141) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine$RunLast.handle(CommandLine.java:2108) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine$AbstractParseResultHandler.handleParseResult(CommandLine.java:1968) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine.parseWithHandlers(CommandLine.java:2322) [picocli-4.1.4.jar:4.1.4] at org.hyperledger.besu.cli.util.ConfigOptionSearchAndRunHandler.handle(ConfigOptionSearchAndRunHandler.java:56) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.util.ConfigOptionSearchAndRunHandler.handle(ConfigOptionSearchAndRunHandler.java:31) [besu-1.4.5.jar:1.4.5] at picocli.CommandLine$AbstractParseResultHandler.handleParseResult(CommandLine.java:1968) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine.parseWithHandlers(CommandLine.java:2322) [picocli-4.1.4.jar:4.1.4] at org.hyperledger.besu.cli.BesuCommand.parse(BesuCommand.java:1184) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.BesuCommand.parse(BesuCommand.java:1044) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.Besu.main(Besu.java:49) [besu-1.4.5.jar:1.4.5] Caused by: io.kubernetes.client.ApiException: Forbidden at io.kubernetes.client.ApiClient.handleResponse(ApiClient.java:886) ~[client-java-5.0.0.jar:?] at io.kubernetes.client.ApiClient.execute(ApiClient.java:802) ~[client-java-5.0.0.jar:?] at io.kubernetes.client.apis.CoreV1Api.listServiceForAllNamespacesWithHttpInfo(CoreV1Api.java:19746) ~[client-java-api-5.0.0.jar:?] at io.kubernetes.client.apis.CoreV1Api.listServiceForAllNamespaces(CoreV1Api.java:19724) ~[client-java-api-5.0.0.jar:?] at org.hyperledger.besu.nat.kubernetes.KubernetesNatManager.doStart(KubernetesNatManager.java:76) ~[besu-nat-1.4.5.jar:1.4.5] ... 19 more 2020-05-21 15:22:23.588+00:00 | main | WARN | NatService | Unable to use NAT. Disabling NAT manager 2020-05-21 15:22:23.589+00:00 | main | INFO | NetworkRunner | Starting Network. ```

arunog (Mon, 08 Jun 2020 15:18:52 GMT):
Hi @joshuafernandes @ppoliani , I'm still having trouble connecting nodes in two k8s clusters. I've only managed to connect them using a Docker node created on another VM as a bridge. I attached image explaining the diagram. `https://github.com/arunog/besu-kubernetes/blob/master/kubectl/ibft2-test/Multi-cluster.jpg` I forked repo, and I created a new kubectl Ibft2 path `https://github.com/arunog/besu-kubernetes/tree/master/kubectl/ibft2-test` There are detailed all steps to reproduce it, and include all config files. Both K8s clusters are AKS, and the nodes are exposed through Loadbalancers services. I'm using `hyperledger/besu:latest` image and `nat-method="KUBERNETES"` Another important point is that when the network starts, an error appears starting KubernetesNatManager: ``` 2020-05-21 15:22:22.377+00:00 | main | INFO | KubernetesNatManager | Starting kubernetes NAT manager. 2020-05-21 15:22:22.381+00:00 | main | DEBUG | KubernetesNatManager | Trying to update information using Kubernetes client SDK. 2020-05-21 15:22:23.587+00:00 | main | DEBUG | NatService | Caught exception while trying to start the manager or service. org.hyperledger.besu.nat.core.exception.NatInitializationException: Failed update information using Kubernetes client SDK. at org.hyperledger.besu.nat.kubernetes.KubernetesNatManager.doStart(KubernetesNatManager.java:85) ~[besu-nat-1.4.5.jar:1.4.5] at org.hyperledger.besu.nat.core.AbstractNatManager.start(AbstractNatManager.java:90) ~[besu-nat-1.4.5.jar:1.4.5] at org.hyperledger.besu.nat.NatService.start(NatService.java:88) [besu-nat-1.4.5.jar:1.4.5] at org.hyperledger.besu.Runner.start(Runner.java:105) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.BesuCommand.synchronize(BesuCommand.java:1920) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.BesuCommand.startSynchronization(BesuCommand.java:1188) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.BesuCommand.run(BesuCommand.java:1060) [besu-1.4.5.jar:1.4.5] at picocli.CommandLine.executeUserObject(CommandLine.java:1769) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine.access$900(CommandLine.java:145) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine$RunLast.handle(CommandLine.java:2141) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine$RunLast.handle(CommandLine.java:2108) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine$AbstractParseResultHandler.handleParseResult(CommandLine.java:1968) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine.parseWithHandlers(CommandLine.java:2322) [picocli-4.1.4.jar:4.1.4] at org.hyperledger.besu.cli.util.ConfigOptionSearchAndRunHandler.handle(ConfigOptionSearchAndRunHandler.java:56) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.util.ConfigOptionSearchAndRunHandler.handle(ConfigOptionSearchAndRunHandler.java:31) [besu-1.4.5.jar:1.4.5] at picocli.CommandLine$AbstractParseResultHandler.handleParseResult(CommandLine.java:1968) [picocli-4.1.4.jar:4.1.4] at picocli.CommandLine.parseWithHandlers(CommandLine.java:2322) [picocli-4.1.4.jar:4.1.4] at org.hyperledger.besu.cli.BesuCommand.parse(BesuCommand.java:1184) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.cli.BesuCommand.parse(BesuCommand.java:1044) [besu-1.4.5.jar:1.4.5] at org.hyperledger.besu.Besu.main(Besu.java:49) [besu-1.4.5.jar:1.4.5] Caused by: io.kubernetes.client.ApiException: Forbidden at io.kubernetes.client.ApiClient.handleResponse(ApiClient.java:886) ~[client-java-5.0.0.jar:?] at io.kubernetes.client.ApiClient.execute(ApiClient.java:802) ~[client-java-5.0.0.jar:?] at io.kubernetes.client.apis.CoreV1Api.listServiceForAllNamespacesWithHttpInfo(CoreV1Api.java:19746) ~[client-java-api-5.0.0.jar:?] at io.kubernetes.client.apis.CoreV1Api.listServiceForAllNamespaces(CoreV1Api.java:19724) ~[client-java-api-5.0.0.jar:?] at org.hyperledger.besu.nat.kubernetes.KubernetesNatManager.doStart(KubernetesNatManager.java:76) ~[besu-nat-1.4.5.jar:1.4.5] ... 19 more 2020-05-21 15:22:23.588+00:00 | main | WARN | NatService | Unable to use NAT. Disabling NAT manager 2020-05-21 15:22:23.589+00:00 | main | INFO | NetworkRunner | Starting Network. ```

shemnon (Mon, 08 Jun 2020 16:56:15 GMT):
Besu contributor call tomorrow at 1500 UTC (EMEA/AMER friendly times) - https://wiki.hyperledger.org/display/BESU/2020-06-09+Besu+Contributor+Call+Agenda

kuronosec (Mon, 08 Jun 2020 19:00:02 GMT):
Yes it helps a lot thanks! :)

joshuafernandes (Mon, 08 Jun 2020 22:24:12 GMT):
Hello @arunog From your diagram they are all on seperate VNets? And the docker one connects fine to the Bootnode? Its just the second cluster that isnt joining?

joshuafernandes (Mon, 08 Jun 2020 22:32:39 GMT):
@matkt is our expert on the Nat manager - any idea whats happening here?

matkt (Mon, 08 Jun 2020 22:39:23 GMT):
it's necessary to give permissions to besu so that it can retrieve the list of services via the Kubernetes API https://kubernetes.io/docs/reference/access-authn-authz/rbac/

matkt (Mon, 08 Jun 2020 22:39:41 GMT):
A simple solution is to call this command. kubectl create clusterrolebinding myapp-view-binding --clusterrole=admin --serviceaccount=default:default But this command should only be used in DEV and not in production. In production we need a finer management of permissions using Kubernetes Role-based access control

matkt (Mon, 08 Jun 2020 22:45:06 GMT):
this will allow you to retrieve the IP/Port automatically via the Kubernetes API. If the automatic detection fails this goes into none mode and Besu will take the default IP / Port or the one passed via the CLI (p2p-host, ..)

matkt (Mon, 08 Jun 2020 22:55:47 GMT):
Besu will try to find a loadbalancer in order to retrieve the IP

matkt (Mon, 08 Jun 2020 22:56:37 GMT):
A sample of service : --- apiVersion: v1 kind: Service metadata: labels: app.kubernetes.io/name: besu app.kubernetes.io/release: "1.0.0" name: besu spec: ports: - name: "json-rpc" port: 8545 targetPort: 8545 - name: "rlpx" port: 30303 targetPort: 30303 selector: app.kubernetes.io/name: besu app.kubernetes.io/release: "1.0.0" type: LoadBalancer You can check the service thanks to this command kubectl describe services besu Name: besu Namespace: default Labels: app.kubernetes.io/name=besu app.kubernetes.io/release=1.0.0 Annotations: kubectl.kubernetes.io/last-applied-configuration: {"apiVersion":"v1","kind":"Service","metadata":{"annotations":{},"labels":{"app.kubernetes.io/name":"besu","app.kubernetes.io/release":"1.... Selector: app.kubernetes.io/name=besu,app.kubernetes.io/release=1.0.0 Type: LoadBalancer IP: -------- LoadBalancer Ingress: ******

matkt (Mon, 08 Jun 2020 22:56:37 GMT):
A sample of service : --- apiVersion: v1 kind: Service metadata: labels: app.kubernetes.io/name: besu app.kubernetes.io/release: "1.0.0" name: besu spec: ports: - name: "json-rpc" port: 8545 targetPort: 8545 - name: "rlpx" port: 30303 targetPort: 30303 selector: app.kubernetes.io/name: besu app.kubernetes.io/release: "1.0.0" type: LoadBalancer You can check the service thanks to this command kubectl describe services besu Name: besu Namespace: default Labels: app.kubernetes.io/name=besu app.kubernetes.io/release=1.0.0 Annotations: kubectl.kubernetes.io/last-applied-configuration: {"apiVersion":"v1","kind":"Service","metadata":{"annotations":{},"labels":{"app.kubernetes.io/name":"besu","app.kubernetes.io/release":"1.... Selector: app.kubernetes.io/name=besu,app.kubernetes.io/release=1.0.0 Type: LoadBalancer IP: -------- LoadBalancer Ingress: ******

matkt (Mon, 08 Jun 2020 22:56:37 GMT):
A sample of service : --- apiVersion: v1 kind: Service metadata: labels: app.kubernetes.io/name: besu app.kubernetes.io/release: "1.0.0" name: besu spec: ports: - name: "json-rpc" port: 8545 targetPort: 8545 - name: "rlpx" port: 30303 targetPort: 30303 selector: app.kubernetes.io/name: besu app.kubernetes.io/release: "1.0.0" type: LoadBalancer You can check the service thanks to this command kubectl describe services besu `Name: besu Namespace: default Labels: app.kubernetes.io/name=besu app.kubernetes.io/release=1.0.0 Annotations: kubectl.kubernetes.io/last-applied-configuration: {"apiVersion":"v1","kind":"Service","metadata":{"annotations":{},"labels":{"app.kubernetes.io/name":"besu","app.kubernetes.io/release":"1.... Selector: app.kubernetes.io/name=besu,app.kubernetes.io/release=1.0.0 Type: LoadBalancer IP: -------- LoadBalancer Ingress: ******`

matkt (Mon, 08 Jun 2020 22:56:37 GMT):
A sample of service : `--- apiVersion: v1 kind: Service metadata: labels: app.kubernetes.io/name: besu app.kubernetes.io/release: "1.0.0" name: besu spec: ports: - name: "json-rpc" port: 8545 targetPort: 8545 - name: "rlpx" port: 30303 targetPort: 30303 selector: app.kubernetes.io/name: besu app.kubernetes.io/release: "1.0.0" type: LoadBalancer ` You can check the service thanks to this command kubectl describe services besu `Name: besu Namespace: default Labels: app.kubernetes.io/name=besu app.kubernetes.io/release=1.0.0 Annotations: kubectl.kubernetes.io/last-applied-configuration: {"apiVersion":"v1","kind":"Service","metadata":{"annotations":{},"labels":{"app.kubernetes.io/name":"besu","app.kubernetes.io/release":"1.... Selector: app.kubernetes.io/name=besu,app.kubernetes.io/release=1.0.0 Type: LoadBalancer IP: -------- LoadBalancer Ingress: ******`

matkt (Mon, 08 Jun 2020 22:56:37 GMT):
you can look at the description of this PR which explains how to create a service that allows Besu to retrieve the necessary information https://github.com/hyperledger/besu/pull/731

eum602 (Tue, 09 Jun 2020 03:16:37 GMT):
Hello everyone, I've been doing some benchmarking between 1.4.1 and 1.4.4. by performing searching events from block zero to the latest (~12000000) . What I see is that besu 1.4.1 is by far faster returning the found logs; nevertheless something happens from 11000000 and besu 1.4.4 overcomes 1.4.1. Please can someone try to help me why it could be happening?

eum602 (Tue, 09 Jun 2020 03:16:37 GMT):
Hello everyone, I've been doing some benchmarking between 1.4.1 and 1.4.4. by performing searching events from block zero to the latest (~12000000) . What I see is that besu 1.4.1 is by far faster returning the found logs; nevertheless something happens from 11000000 and besu 1.4.4 overcomes 1.4.1. Please can someone try to help me why it could be happening? Let me share a graphic that illustrates what I explained:

eum602 (Tue, 09 Jun 2020 03:16:37 GMT):
Hello everyone, I've been doing some benchmarking between 1.4.1 and 1.4.4. by performing searching events from block zero to the latest (~12000000) . What I see is that besu 1.4.1 is by far faster returning the found logs; nevertheless something happens from 11000000 and besu 1.4.1 takes too long to find blocks and thus is overpassed by 1.4.4. Please can someone try to help me why it could be happening? Let me share a graphic that illustrates what I explained:

eum602 (Tue, 09 Jun 2020 03:17:11 GMT):

comparison1.4.1-vs-1.4.4

lucassaldanha (Tue, 09 Jun 2020 04:48:11 GMT):
Hi! Thanks for bringing our attention to this. It would be really helpful if you could run the same tests for 1.4.2 and 1.4.3 to help us pinpoint what exact version introduced this change. In the meantime, I'll ask the team if they have a clue on what might be causing this.

andlandor (Tue, 09 Jun 2020 06:23:43 GMT):
Has joined the channel.

andlandor (Tue, 09 Jun 2020 06:23:44 GMT):
Hi every one. I'm a newbie in #Besu. I like to know the business model Besu follows. How do they think that they can make money by developing a private network mechanism.

K2LIS (Tue, 09 Jun 2020 06:47:39 GMT):
Hi everyone, is there any study or tests giving some metrics around BESU performance in terms of TPS ? I'd also to ask if anyone has already produced a storage capacity planning Template for BESU in order to determine storage requirements over the time ? Thanks 🙂

rdemera (Tue, 09 Jun 2020 13:36:02 GMT):
Has joined the channel.

rdemera (Tue, 09 Jun 2020 13:36:02 GMT):
Hi every one, we are having an issue getting all the events emitted by a Solidity Smart Contract, in a private chain which currently have 11856000 blocks. Our node works with Besu v1.3.6 The problem is that the response time is too long, when we filter fromBlock: “0x0”. I dont know if there is any solution to this or something we can configure on our node. We try to get these events with the help of web3js (v1.2.1) in a similar way to this: let contract = web3.eth.Contract(myContract.abi, this.myContractAddressr) contract.events.myEvent({ fromBlock: 0 }, callback); https://github.com/TribalyteTechnologies/quorum-websockets-example/blob/master/eventListener.js This works fine for us to get the events emitted after the subscription, but the previous events (from the block 0) are not listed. On others networks (Quorum, ganache) we get the performance expected, where all the previous events are listed. We also try to get the expected response from inside the node with: curl -X POST --data '{"jsonrpc":"2.0","id":5,"method":"eth_getLogs","params":[{"fromBlock":"0x0","topics":["0x187688f6f8bbd0d48b66ed106a5d61d42f9b889d36a5bfe0ecdd056b139ebd8b"],"address":"0x92c1cce3d02fce1b813824f77046d597980285e3"}]}' localhost:4545 But we dont even get a response, with later versions of besu (v1.4.4) we get the expected result after 30 MINUTES. Similar issues have been reported, the pegasys team raised a ticket and studied it. We want to know if it possible to reduce the response time. Ticke and investigation: ticket: https://pegasys1.atlassian.net/browse/PAN-3219 issue: https://jira.hyperledger.org/browse/BESU-64

rdemera (Tue, 09 Jun 2020 13:44:46 GMT):
I think that this might be Related with the previous issue, when we wake like 20 subscriptions to events, all of them from block 0. Our node seems to freeze, it is still syncing , none of the logs show any error or something weird but if we we try to access to any of our contracts we don't get response. We also try to test it with: curl -X POST --data '{"jsonrpc":"2.0","method":"net_peerCount","params":[],"id":1}' localhost:4545 but the result is the same: no response

rdemera (Tue, 09 Jun 2020 13:57:37 GMT):
The node continues to synchronize blocks, but the rpc and websocket part does not allow any more connections.

abdelhamidbakhta (Tue, 09 Jun 2020 14:13:38 GMT):
@rdemera Can upgrade to at least 1.4.0 ? We introduced automatic logs blooms caching in https://github.com/hyperledger/besu/releases/tag/1.4.0-RC2. The cli option is --auto-logs-bloom-indexing-enabled which defaults to true

Primat (Tue, 09 Jun 2020 16:00:29 GMT):
Has joined the channel.

arunog (Tue, 09 Jun 2020 16:11:45 GMT):
Thanks @matkt @joshufern

arunog (Tue, 09 Jun 2020 16:16:12 GMT):
thanks @matkt @joshuafernandes, I'll check it and I'll tell you something

K2LIS (Tue, 09 Jun 2020 16:25:20 GMT):
Hi everyone, is there any study or tests giving some metrics around BESU performance in terms of TPS ? Thanks !

arunog (Wed, 10 Jun 2020 16:20:04 GMT):
Hi @matkt @joshuafernandes, I've finally managed to connect the nodes in different k8s clusters. Just like you said, it's been necessary to create a service account with a cluster role with permissions to connect to the api. After this, several issues have emerged: - It only works if service name contains "Besu" - If there are several services in the same namespace and their name contains "Besu", choose one of them and it isn't always the correct one. - If the external IP of the service is not assigned when starts the KubernetesNatManager, that is, it's still being created, the nat manager is disabled. Is there any solution for these issues?? Thanks!!

arunog (Wed, 10 Jun 2020 16:20:04 GMT):
Hi @matkt @joshuafernandes, I've finally managed to connect the nodes in different k8s clusters. Just like you said, it's been necessary to create a service account with a cluster role with permissions to connect to the api. After this, several issues have emerged: - It only works if service name contains "Besu" - If there are several services in the same namespace and their name contains "Besu", choose one of them and it isn't always the correct one. Is there any solution for these issues?? Thanks!!

matkt (Thu, 11 Jun 2020 09:59:52 GMT):
Hi A temporary solution would be to have only one service containing "Besu". I will quickly add a PR to allow configuring the name of the loadbalancer service

sownak (Thu, 11 Jun 2020 14:14:17 GMT):
Hello.. does Besu support domain names in the enode format? like Quorum does.

rohitgupta027 (Thu, 11 Jun 2020 15:08:18 GMT):
Hi everyone, Is their any plan to add Aura PoA consensus algorithm in future Besu release? if yes please share the roadmap. Thanks

drewkerrigan (Thu, 11 Jun 2020 15:50:17 GMT):
Has joined the channel.

shemnon (Thu, 11 Jun 2020 15:53:09 GMT):
So far none of our maintainers has said they are adding aura, so it is not in our roadmap. It's a common request so it would be worth opening an issue in our github issues.

shemnon (Thu, 11 Jun 2020 16:00:08 GMT):
Not at the moment. One of our maintainers posted this: https://github.com/hyperledger/besu/issues/927 so it may end up on our 1.6 roadmap

rohitgupta027 (Thu, 11 Jun 2020 18:44:47 GMT):
We are creating part of validator set in one the public permissioned network which is using Parity PoA Aura consensus at the moment. But now Parity is rebranded to Open Ethereum so we want to diversify the blockchain client among Validators. One of the potential client is Nethermind Besu so thought to check with community before I recommend Besu to them. Will open github issues. Thanks

rohitgupta027 (Thu, 11 Jun 2020 18:44:47 GMT):
We are part of validator set in one the public permissioned network which is using Parity client and their PoA Aura consensus at the moment. But now Parity is rebranded to Open Ethereum so we want to diversify the blockchain client among Validators. One of the potential client is Nethermind But I have used Besu with IBFT2 so thought to check with community before I recommend Besu to them. Will open github issues. Thanks

shemnon (Thu, 11 Jun 2020 18:56:02 GMT):
IBFT2 is besu only at the moment, The EEA is working on an EBFT which will combine IBFT and IBFT2, but I'm not sure how that is going.

oussamachaabouni (Fri, 12 Jun 2020 13:04:42 GMT):
Error: Returned error: Upfront cost exceeds account balance at Object.ErrorResponse (/home/thinkpad/Bureau/IoT access based on blockchain/Application/node_modules/web3-core-helpers/src/errors.js:29:16) at /home/thinkpad/Bureau/IoT access based on blockchain/Application/node_modules/web3-core-requestmanager/src/index.js:140:36 at XMLHttpRequest.request.onreadystatechange (/home/thinkpad/Bureau/IoT access based on blockchain/Application/node_modules/web3-providers-http/src/index.js:96:13) at XMLHttpRequestEventTarget.dispatchEvent (/home/thinkpad/Bureau/IoT access based on blockchain/Application/node_modules/xhr2-cookies/dist/xml-http-request-event-target.js:34:22) at XMLHttpRequest._setReadyState (/home/thinkpad/Bureau/IoT access based on blockchain/Application/node_modules/xhr2-cookies/dist/xml-http-request.js:208:14) at XMLHttpRequest._onHttpResponseEnd (/home/thinkpad/Bureau/IoT access based on blockchain/Application/node_modules/xhr2-cookies/dist/xml-http-request.js:318:14) at IncomingMessage. (/home/thinkpad/Bureau/IoT access based on blockchain/Application/node_modules/xhr2-cookies/dist/xml-http-request.js:289:61) hello i am trying to send a transaction in besu network but i get this error ... can someone tell me why i get this error and how to solve it

mwklein (Fri, 12 Jun 2020 13:08:13 GMT):
Has joined the channel.

oussamachaabouni (Fri, 12 Jun 2020 14:20:46 GMT):
i ma trying to send transactions in my network 'besu' but everytime it show me this error

oussamachaabouni (Fri, 12 Jun 2020 14:20:58 GMT):
if someone can tell how to solve it ?

oussamachaabouni (Fri, 12 Jun 2020 14:21:29 GMT):
in metamask it show me that i have ether in my accounts ( i am using the accounts in the officially doc )

josenogueiradalmeida (Fri, 12 Jun 2020 17:22:41 GMT):
Has joined the channel.

josenogueiradalmeida (Fri, 12 Jun 2020 17:22:42 GMT):
I have two docker containers running besu in the same Linux. One is a bootnode and the other is a regular node, running IBFT2 in the shared genesis file. I have tried to run those 2 containers using the docker option --network host, but they are not syncing. What is the problem?

josenogueiradalmeida (Fri, 12 Jun 2020 17:23:57 GMT):
(i have also tried the option --bootnodes with @127.0.0.1, @localhost, @172.17.0.1 and 172.18.0.1

josenogueiradalmeida (Fri, 12 Jun 2020 17:32:15 GMT):
Never mind, now that worked :)

NicolasMassart (Fri, 12 Jun 2020 18:06:56 GMT):
Are you passing you boonode enode address as CLI option to the second node ? See https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#bootnodes

josenogueiradalmeida (Fri, 12 Jun 2020 18:30:38 GMT):
Yes, i tried this too.

josenogueiradalmeida (Fri, 12 Jun 2020 18:30:41 GMT):
sudo docker run -v /besu4nodes/nodeX/:/tmp --network=host hyperledger/besu:latest --config-file=/tmp/configNode.toml --genesis-file=/tmp/genesis.json --bootnodes="enode://9049da83a9512dda6c96bd65b6322ab3f732ab5c1360b55f4b975ee9cce685b21aeb97a0f21d6b22ece950b9264366389744abbf1025f8cbb75385a3b1e81763@127.0.0.1:30307"

josenogueiradalmeida (Fri, 12 Jun 2020 18:33:06 GMT):
Although they do not sync, the bootnode somehow notice other notice when they come up. The log message "No sync target, waiting for peers: " increments its number in the bootnode as soon as one node comes, but they do not import blocks.

VipinB (Fri, 12 Jun 2020 19:46:13 GMT):
Hi, we are in the Capital Markets SIG eThaler project (currently under Hyperledger labs). We created a token in TTF and are running against a private Besu setup of 1.4.1. We are running a 4 nodes under IBFT 2.0. We notice a large lag in confirmation times. Must be due to something we have misconfigured. Here is a copy of the genesis.json that has been generated

VipinB (Fri, 12 Jun 2020 19:47:37 GMT):
genesis.json { "config" : { "chainId" : 2018, "constantinoplefixblock" : 0, "ibft2" : { "blockperiodseconds" : 2, "epochlength" : 30000, "requesttimeoutseconds" : 10 } }, "nonce" : "0x0", "timestamp" : "0x58ee40ba", "gasLimit": "0x1fffffffffffff", "difficulty" : "0x1", "mixHash" : "0x63746963616c2062797a616e74696e65206661756c7420746f6c6572616e636 5", "coinbase" : "0x0000000000000000000000000000000000000000", "alloc" : { "fe3b557e8fb62b89f4916b721be55ceb828dbd73" : { "privateKey" : "8f2a55949038a9610f50fb23b5883af3b4ecb3c3bb792cbcefbd1542c6 92be63", "comment" : "private key and this comment are ignored. In a real chain, t he private key should NOT be stored", "balance" : "0xad78ebc5ac6200000" }, "627306090abaB3A6e1400e9345bC60c78a8BEf57" : { "privateKey" : "c87509a1c067bbde78beb793e6fa76530b6382a4c0241e5e4a9ec0a0f4 4dc0d3", "comment" : "private key and this comment are ignored. In a real chain, t he private key should NOT be stored", "balance" : "90000000000000000000000" }, "f17f52151EbEF6C7334FAD080c5704D77216b732" : { "privateKey" : "ae6ae8e5ccbfb04590405997ee2d52d2b330726137b875053c36d94e97 4d162f", "comment" : "private key and this comment are ignored. In a real chain, t he private key should NOT be stored", "balance" : "90000000000000000000000" } }, "extraData" : "0xf87ea00000000000000000000000000000000000000000000000000000000 000000000f85494e749fbf818eb4f0fc0b10908bddee548efd6675c94590ee7c66b589ee221f0a3d 629ec0fc4ff9b4368942781c9f010575b49a4f11fd89e2656066e4b3ee6943bb245ea74406695836 1872d7a73dfd6ae7c617f808400000000c0" } @shemnon or anyone else can you take a quick look to see if it is anything obvious. Any tips to docs that you have that can help us troubleshoot will be helpful

VipinB (Fri, 12 Jun 2020 19:48:22 GMT):
The genesis file is essentially a copy of the file that you have in your tutorial.

VipinB (Fri, 12 Jun 2020 19:48:41 GMT):
https://besu.hyperledger.org/en/stable/Tutorials/Private-Network/Create-IBFT-Network/

magooster (Sat, 13 Jun 2020 10:07:55 GMT):
I don't believe this is down to the network configuration, but more likely how your interacting with the deployed contracts. if your using web3j and a contract wrapper with the default tx manager, then you'll be waiting as the default polling interval is set for mainet (15 seconds). Take a look at web3J transaction managers, and transaction receipt processors (https://web3j.readthedocs.io/en/latest/smart_contracts.html?highlight=transaction%20managers#transaction-managers)

VipinB (Sat, 13 Jun 2020 17:47:20 GMT):
Thanks @magooster

VipinB (Sat, 13 Jun 2020 18:00:58 GMT):
Will check.

VipinB (Sun, 14 Jun 2020 00:48:34 GMT):
Another issue: When running in In truffle develop BC or ganache BC, when we test and generate errors, the error message is properly returned . With Besu it is a generic not-enough gas error message. even though we are running private Besu. @DannoFerrin or @magooster what could be the problem. The two error messages are shown below, for exactly the same error. 1. Truffle/Ganache truffle(development)> instance.pause(1) Uncaught: Error: Returned error: VM Exception while processing transaction: revert eThaler: token is already paused -- Reason given: eThaler: token is already paused. at PromiEvent (C:\Users\mani\AppData\Roaming\npm\node_modules\truffle\build\webpack:\packages\contract\lib\promievent.js:9:1) at TruffleContract.pause (C:\Users\mani\AppData\Roaming\npm\node_modules\truffle\build\webpack:\packages\contract\lib\execute.js:169:1) at evalmachine.:0:10 at sigintHandlersWrap (vm.js:274:15) at Script.runInContext (vm.js:128:14) at runScript (C:\Users\mani\AppData\Roaming\npm\node_modules\truffle\build\webpack:\packages\core\lib\console.js:222:1) at Console.interpret (C:\Users\mani\AppData\Roaming\npm\node_modules\truffle\build\webpack:\packages\core\lib\console.js:237:1) at ReplManager.interpret (C:\Users\mani\AppData\Roaming\npm\node_modules\truffle\build\webpack:\packages\core\lib\repl.js:131:1) at bound (domain.js:426:14) at REPLServer.runBound [as eval] (domain.js:439:12) at REPLServer.onLine (repl.js:758:10) at REPLServer.emit (events.js:311:20) at REPLServer.EventEmitter.emit (domain.js:482:12) at REPLServer.Interface._onLine (readline.js:322:10) at REPLServer.Interface._normalWrite (readline.js:467:12) at Socket.ondata (readline.js:179:10) at Socket.emit (events.js:311:20) at Socket.EventEmitter.emit (domain.js:482:12) at addChunk (_stream_readable.js:294:12) at readableAddChunk (_stream_readable.js:275:11) at Socket.Readable.push (_stream_readable.js:209:10) at Pipe.onStreamRead (internal/stream_base_commons.js:186:23) { reason: 'eThaler: token is already paused', hijackedStack: 'Error: Returned error: VM Exception while processing transaction: revert eThaler: token is already paused -- Reason given: eThaler: token is already paused.\n' + ' at Object.ErrorResponse (C:\\Users\\mani\\AppData\\Roaming\\npm\\node_modules\\truffle\\build\\webpack:\\node_modules\\web3-core-helpers\\src\\errors.js:29:1)\n' + ' at C:\\Users\\mani\\AppData\\Roaming\\npm\\node_modules\\truffle\\build\\webpack:\\node_modules\\web3-core-requestmanager\\src\\index.js:140:1\n' + ' at C:\\Users\\mani\\AppData\\Roaming\\npm\\node_modules\\truffle\\build\\webpack:\\packages\\provider\\wrapper.js:112:1\n' + ' at XMLHttpRequest.request.onreadystatechange (C:\\Users\\mani\\AppData\\Roaming\\npm\\node_modules\\truffle\\build\\webpack:\\node_modules\\web3-providers-http\\src\\index.js:96:1)\n' + ' at XMLHttpRequestEventTarget.dispatchEvent (C:\\Users\\mani\\AppData\\Roaming\\npm\\node_modules\\truffle\\build\\webpack:\\node_modules\\xhr2-cookies\\dist\\xml-http-request-event-target.js:34:1)\n' + ' at XMLHttpRequest._setReadyState (C:\\Users\\mani\\AppData\\Roaming\\npm\\node_modules\\truffle\\build\\webpack:\\node_modules\\xhr2-cookies\\dist\\xml-http-request.js:208:1)\n' + ' at XMLHttpRequest._onHttpResponseEnd (C:\\Users\\mani\\AppData\\Roaming\\npm\\node_modules\\truffle\\build\\webpack:\\node_modules\\xhr2-cookies\\dist\\xml-http-request.js:318:1)\n' + ' at IncomingMessage. (C:\\Users\\mani\\AppData\\Roaming\\npm\\node_modules\\truffle\\build\\webpack:\\node_modules\\xhr2-cookies\\dist\\xml-http-request.js:289:47)\n' + ' at IncomingMessage.emit (events.js:323:22)\n' + ' at IncomingMessage.EventEmitter.emit (domain.js:505:15)\n' + ' at endReadableNT (_stream_readable.js:1204:12)\n' + ' at processTicksAndRejections (internal/process/task_queues.js:84:21)' } truffle(development)> truffle(development)>

VipinB (Sun, 14 Jun 2020 00:55:47 GMT):
With Besu under the same circumstances: We get an out of gas error.

VipinB (Sun, 14 Jun 2020 00:56:31 GMT):

VipinB - Sat Jun 13 2020 20:56:21 GMT-0400 (Eastern Daylight Time).txt

SunilKumar10 (Mon, 15 Jun 2020 12:15:49 GMT):
Has joined the channel.

SunilKumar10 (Mon, 15 Jun 2020 12:15:49 GMT):
How external nodes join in internal private besu network?

lucassaldanha (Mon, 15 Jun 2020 12:27:01 GMT):
I think it depends on how you setup your private network. If you are following the tutorial on our docs (https://besu.hyperledger.org/en/latest/Tutorials/Private-Network/Create-Private-Network/), to add a new node all you need to do is: 1. Ensure that the new node is using the same genesis file as the other nodes 2. Add at least one of the current nodes in your private network as a bootnode of the new node.

rohitgupta027 (Mon, 15 Jun 2020 13:59:56 GMT):
Also user adminPeer API to add the external node to be part of validator in network

rohitgupta027 (Mon, 15 Jun 2020 13:59:56 GMT):
Also use adminPeer API to add the external node to be part of validator in network

SunilKumar10 (Mon, 15 Jun 2020 14:07:48 GMT):
Thanks Lucas, will check

BilelZaghdoudi (Mon, 15 Jun 2020 16:26:53 GMT):
Has joined the channel.

madelinemurray (Mon, 15 Jun 2020 23:40:31 GMT):
:besu: Hyperleader Besu 1.4.6 is available now: https://github.com/hyperledger/besu/releases/tag/1.4.6 :besu:

trent.mohay (Mon, 15 Jun 2020 23:46:47 GMT):
@rohitgupta027 the adminPeer APIs in Besu allow you to request Besu to create a connection to another node (and maintain it until restart). To add/remove validators in an IBFT or Clique network you'll need to use the ibft_proposeValidatorVote or Clique_propose API respectively.

benjamincburns (Mon, 15 Jun 2020 23:51:04 GMT):
@VipinB I used to be the maintainer of Ganache. The way Ganache works by default is that it runs the transaction immediately when it is submitted, and if the transaction didn't complete successfully (e.g. due to a `REVERT`), instead of returning a transaction hash and having your code fetch a receipt, Ganache just returns the error directly. This was done to help people debug their smart contract logic, but real clients can't do this, because they have to wait to process the transaction until it has been mined into a block.

benjamincburns (Mon, 15 Jun 2020 23:51:04 GMT):
Hi @VipinB - I used to be the maintainer of Ganache. The way Ganache works by default is that it runs the transaction immediately when it is submitted, and if the transaction didn't complete successfully (e.g. due to a `REVERT`), instead of returning a transaction hash and having your code fetch a receipt, Ganache just returns the error directly. This was done to help people debug their smart contract logic, but real clients can't do this, because they have to wait to process the transaction until it has been mined into a block.

benjamincburns (Mon, 15 Jun 2020 23:52:36 GMT):
If you're running with `ganache-cli` there is a flag to make it behave more like a real client w.r.t. error handling. See the `--noVMErrorsOnRPCResponse` flag here: https://github.com/trufflesuite/ganache-cli

benjamincburns (Mon, 15 Jun 2020 23:53:25 GMT):
There's also a setting for it in the Ganache UI, but I'm struggling to recall exactly where it was. It's been more than a year since I've looked at it closely

benjamincburns (Mon, 15 Jun 2020 23:56:18 GMT):
Regarding IBFT 2.0 performance, later versions of Besu make use of some native libraries to speed up common crypto operations. Unfortunately 1.4.2 didn't have that feature yet. I'd try again with 1.4.6.

benjamincburns (Mon, 15 Jun 2020 23:56:18 GMT):
Regarding IBFT 2.0 performance, later versions of Besu make use of some native libraries to speed up common crypto operations. Unfortunately 1.4.2 didn't have that feature yet. I'd recommend testing again with 1.4.6.

rohitgupta027 (Tue, 16 Jun 2020 13:05:24 GMT):
@trent.mohay that's true I have used adminPeer API to connect external node with my besu cluster. But I have had this issue that external node connection breaks after pod restarts(its stateful) so you are suggesting to first use adminPeer API to make connection and use ibft_proposeValidatorVote(in my case) to make external node as validator

rohitgupta027 (Tue, 16 Jun 2020 13:05:24 GMT):
@trent.mohay that's true I have used adminPeer API to connect external node with my besu cluster. But I have had this issue that external node connection breaks after pod restarts(its stateful) so you are suggesting to first use adminPeer API to make connection and use ibft_proposeValidatorVote(in my case) to make external node as validator?

ptelles (Tue, 16 Jun 2020 14:22:39 GMT):
Has joined the channel.

ptelles (Tue, 16 Jun 2020 14:22:39 GMT):
Hi, I'm new in Hyperledger besu concepts. What's the difference between besu and burrow? I undestand that both use ethereum.

illuzzig (Tue, 16 Jun 2020 15:19:33 GMT):
hello, can I use hl besu client as a public node in conjunction with orion ?

matkt (Tue, 16 Jun 2020 16:56:10 GMT):
Hi We have just implemented a new experimental CLI option which allows you to change the name of the loadbalancer we want to use. For example you can call Besu with `--Xnat-kube-pod-name = besu-load-balancer` or you can add the environment variable in your besu deployment script. `BESU_XNAT_KUBE_POD_NAME:" besu-load-balancer "`. This functionality will be available in the next 1.5.0-RC but it is already available in the master if you want to test it.

VipinB (Tue, 16 Jun 2020 23:23:35 GMT):
@benjamincburns Thanks. The Transaction will be rejected by the smart contract due to an error. This error has to be bubbled back up to the client when running in besu. The actual solidity code will be

VipinB (Tue, 16 Jun 2020 23:24:54 GMT):
@benjamincburns Thanks. The Transaction will be rejected by the smart contract due to an error. This error has to be bubbled back up to the client when running in besu. The actual solidity code in Besu is: require( ( isPaused( tokenId ) == false ), "eThaler: Token is paused. Transfer is not permitted" );

benjamincburns (Tue, 16 Jun 2020 23:26:17 GMT):
I think Besu has a facility for including revert strings in transaction receipts. that string that you've got in your `require` call is a revert string.

benjamincburns (Tue, 16 Jun 2020 23:26:39 GMT):
https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#revert-reason-enabled

VipinB (Tue, 16 Jun 2020 23:27:02 GMT):
@benjamincburns Thanks

VipinB (Tue, 16 Jun 2020 23:27:10 GMT):
We will check this out.

VipinB (Tue, 16 Jun 2020 23:28:05 GMT):
Does this mean that when it is not enabled, it will throw a generic out of gas error

benjamincburns (Tue, 16 Jun 2020 23:28:49 GMT):
This is all a limitation of the ethereum protocol, though. It was the intent of the people who designed it that the primary output mechansim for any transaction to be a log/event... The transaction receipt was only intended to be metadata about the transaction. The revert string was explicitly not included in the design proposal because there was concern around it being used as a DoS attack vector. Because of this, I don't know if web3.js or web3j will handle that extra field.

VipinB (Tue, 16 Jun 2020 23:29:46 GMT):
revert-reason-enabled gobbles up significant amount of memory- Ok then we need to put out a log/event indicating failure then.

benjamincburns (Tue, 16 Jun 2020 23:31:35 GMT):
Yeah, it's best to use revert strings for debugging purposes IMO

benjamincburns (Tue, 16 Jun 2020 23:31:35 GMT):
Yeah, it's best to use revert strings for debugging purposes, IMO

VipinB (Tue, 16 Jun 2020 23:32:07 GMT):
Thanks!

benjamincburns (Tue, 16 Jun 2020 23:33:19 GMT):
Ah, I got my facts wrong, they didn't see it as a DoS vector, but a spam vector, so don't worry about the extra memory consumption

VipinB (Tue, 16 Jun 2020 23:42:04 GMT):
We will try with revert-reason-enabled since otherwise it will be asynchronous log/events sprayed all over the place. We took the require() pattern from openzeppelin

VipinB (Tue, 16 Jun 2020 23:42:35 GMT):
Thanks for your help and we will keep you posted @benjamincburns

shemnon (Wed, 17 Jun 2020 00:32:41 GMT):
Besu can syncornize with the Etehreum Mainnet, Classic, and associated test nets. It supports EThash PoW consensus, IBFT and IBFT2 consensus, and Clique consensus. Burrow only supports Tendermint PoS consensus and has been used as a chaincode provider for Fabric and Sawtooth, relying on those DLTs for consensus.

shemnon (Wed, 17 Jun 2020 00:32:41 GMT):
Besu can synchronize with the Etehreum Mainnet, Classic, and associated test nets, in addition to private consortium networks. It supports EThash PoW consensus, IBFT and IBFT2 consensus (with finality), and Clique consensus (without finality). Burrow only supports Tendermint PoS consensus and has been used as a chaincode provider for Fabric and Sawtooth, relying on those DLTs for consensus.

farghaly (Wed, 17 Jun 2020 10:25:51 GMT):
Has joined the channel.

duncanjw (Wed, 17 Jun 2020 22:37:10 GMT):
Has joined the channel.

YashShukla (Thu, 18 Jun 2020 12:11:57 GMT):
Has joined the channel.

YashShukla (Thu, 18 Jun 2020 12:11:58 GMT):
Hi Everyone, I have some questions. 1) Can we create/run a new Ethereum network using Besu (production level) which would support private transactions also 2) Can we use private transactions functionality even when Besu is connected to the Mainnet of Ethereum

roderik (Thu, 18 Jun 2020 12:36:25 GMT):
Anyone ever experience vert.x blocked threads trying to access RocksDB? I already resynced completely but I cannot get rid of them: https://gist.github.com/roderik/433c620e11420365de1f01847897c1c4. (1.4.2)

arunog (Thu, 18 Jun 2020 13:35:21 GMT):
Thanks for your help @matkt. I'll try it.

roderik (Thu, 18 Jun 2020 15:33:23 GMT):
I had to open a ticket, i cannot find a way to keep them alive :( https://github.com/hyperledger/besu/issues/1114

shemnon (Thu, 18 Jun 2020 21:34:09 GMT):
Thanks for the ticket. We will look into this.

RafaelAPB (Fri, 19 Jun 2020 00:52:46 GMT):
Has joined the channel.

RafaelAPB (Fri, 19 Jun 2020 00:52:46 GMT):
Hello all. Could someone clarify me please: I'm deploying a smart contract with Besu, in a private network, and I obtain the transaction hash. How can I obtain the contract address from the transaction hash? When I call web3Eea.eth.getTransaction I obtain many fields indicating addresses (e.g., input, r,s,v, hash), but none of them correspond to the created contract. In particular, when I try to connect to the deployed smart contract, via web3.eth.Contract(jsonInterface, address), the "povided address is invalid, the capitalization checksum test failed, or its an indrect IBAN address which can't be converted."

RafaelAPB (Fri, 19 Jun 2020 00:52:46 GMT):
Hello all. Could someone clarify me please: I'm deploying a smart contract with Besu, in a private network, and I obtain the transaction hash. How can I obtain the contract address from the transaction hash? When I call web3Eea.eth.getTransaction I obtain many fields indicating addresses (e.g., input, r,s,v, hash), but none of them correspond to the created contract. In particular, when I try to connect to the deployed smart contract, via web3.eth.Contract(jsonInterface, address), the "povided address is invalid, the capitalization checksum test failed, or its an indrect IBAN address which can't be converted." When obtaining the transaction receipt that deployed the smart contract, the field "ContractAddress" is set as null

shemnon (Fri, 19 Jun 2020 02:05:28 GMT):
Try the `eth_getTransactionReceipt` method - https://besu.hyperledger.org/en/stable/Reference/API-Methods/#eth_gettransactionreceipt - the `contractAddress` field in the result should be what you are looking for - https://besu.hyperledger.org/en/stable/Reference/API-Objects/#transaction-receipt-object

shemnon (Fri, 19 Jun 2020 02:06:03 GMT):
I'm not sure how that translates into web3.

shemnon (Fri, 19 Jun 2020 02:06:03 GMT):
I'm not sure how that translates into web3.js

YashShukla (Fri, 19 Jun 2020 02:13:14 GMT):
Hi Everyone, I have some questions. 1) Can we create/run a new Ethereum network using Besu (production level) which would support private transactions also 2) Can we use private transactions functionality even when Besu is connected to the Mainnet of Ethereum

YashShukla (Fri, 19 Jun 2020 02:14:19 GMT):
Hi can anyone help me with this, not able to find the answer anywhere

BillyLuedtke (Fri, 19 Jun 2020 03:52:30 GMT):
Has joined the channel.

banhmi.eth (Fri, 19 Jun 2020 08:42:52 GMT):
Has joined the channel.

banhmi.eth (Fri, 19 Jun 2020 08:42:52 GMT):
Hi all, I am new here. I m looking for a document compare between Quorum and Besu (both are evm-forkable for enterprise), does anyone here has any reference? Besides, is there any doc about how Besu permission account

RafaelAPB (Fri, 19 Jun 2020 09:00:13 GMT):
@shemnon Thanks, that helps a lot. I thought about that, but it turns out that ``contractAddress`` is set to null, odd...

farghaly (Fri, 19 Jun 2020 12:27:28 GMT):
Read the docs, everything you asked about mentioned here https://besu.hyperledger.org/en/stable/

shemnon (Fri, 19 Jun 2020 14:51:23 GMT):
If the transaction successfully deployed a contract that field would not be null. Could the contract creation have failed? (out of gas?)

shemnon (Fri, 19 Jun 2020 14:58:26 GMT):
for ordinariy CREATE the address is the hash of the senders address and nonce, you could calculate it from those fields - https://ethereum.stackexchange.com/a/46960/46788

Pavak (Fri, 19 Jun 2020 17:19:54 GMT):
Has joined the channel.

Pavak (Fri, 19 Jun 2020 17:21:33 GMT):
Hi, how does a hybrid blockchain channel work in Hyperledger Besu !

RafaelAPB (Fri, 19 Jun 2020 19:10:00 GMT):
@shemnon Thanks for your help. greatly appreciated. I think I know what happens: eth_getTransactionReceipt returns the contractAddress as anull, because it is the Privacy marker transaction. I got the contractAddress from the private transaction, which you get through priv_getTransactionReceipt

shemnon (Fri, 19 Jun 2020 19:11:41 GMT):
That makes sense, knowing it was a private contract was the piece I missed.

RafaelAPB (Fri, 19 Jun 2020 19:15:29 GMT):
I'm new to Besu, so I didn't realize it myself when I was asking :)

shemnon (Fri, 19 Jun 2020 19:16:42 GMT):
I'm also not as well versed in the private transaction area, that's mostly Lucas's team's thing, which is why it was my blindspot.

RafaelAPB (Fri, 19 Jun 2020 19:28:13 GMT):
Btw, the testing node in Besu implies that transactions do not cost gas? If not, is using Truffle the only way to configure a free gas Besu node?

RafaelAPB (Fri, 19 Jun 2020 19:28:13 GMT):
Btw, @shemnon ,does the testing node in Besu implies that transactions do not cost gas? If not, is using Truffle the only way to configure a free gas Besu node?

RafaelAPB (Fri, 19 Jun 2020 19:28:13 GMT):
Btw, @shemnon ,does the testing node in Besu implies that transactions do not cost gas? Does it suffice to set --min-gas-price=0 to allow free transactions?

VipinB (Sat, 20 Jun 2020 19:27:20 GMT):
@benjamincburns we ran with revert-reason-enabled on all nodes, when we looked at web3j implementation, we see generic gas error being thrown if receipt.status==0. No further error status is available in receipt. Also we tried another technique which is use the ethcall object after the failure.

VipinB (Sat, 20 Jun 2020 19:28:22 GMT):
We came up empty on both. Error handling via the web3 interface seems to be a problem (generic gas errors are thrown for any error from the transaction receipt)

VipinB (Sat, 20 Jun 2020 19:32:31 GMT):
Samples of both returns shown here: The TransactionReceipt object & ethCall object- no way to get the revert reason through web3 connected to Besu. Any help here would be welcome. @shemnon or @benjamincburns   receipt = {TransactionReceipt@2901} "TransactionReceipt{transactionHash='0x5e01576f7a99e0848f9fd0f39bac5d977ee79fee0b2552f4420ca2710d36a12c', transactionIndex='0x0', blockHash='0x0174f967e5e063704a871c8bbf885ecc0b28e4aa8a500a43a872105c35a18511', blockNumber='0x37efe1', cumulativeGasUsed='0x5b76', gasUsed='0x5b76', contractAddress='null', root='null', status='0x0', from='0xfe3b557e8fb62b89f4916b721be55ceb828dbd73', to='0x620f34a905eb4937514b6c393b6c73c6b01e62af', logs=[], logsBloom='0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'}"  transactionHash = "0x5e01576f7a99e0848f9fd0f39bac5d977ee79fee0b2552f4420ca2710d36a12c"  transactionIndex = "0x0"  blockHash = "0x0174f967e5e063704a871c8bbf885ecc0b28e4aa8a500a43a872105c35a18511"  blockNumber = "0x37efe1"  cumulativeGasUsed = "0x5b76"  gasUsed = "0x5b76"  contractAddress = null  root = null * status = "0x0" * from = "0xfe3b557e8fb62b89f4916b721be55ceb828dbd73"  to = "0x620f34a905eb4937514b6c393b6c73c6b01e62af"  logs = {ArrayList@2913}  size = 0  logsBloom = "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"   value = {char[514]@2915}   hash = 0 ------------------------------------- The ethCall object   ethCall = {EthCall@2977}  id = 13  jsonrpc = "2.0"  *result = "0x" *  value = {char[2]@2983}    0 = '0' 48    1 = 'x' 120   hash = 0  error = null  rawResponse = null -----------------------------------------------

magooster (Sat, 20 Jun 2020 19:36:02 GMT):
Heres an example for web3jtry { token.operatorBurn(addressA, burnAmount, new byte[0], new byte[0]).send(); } catch(TransactionException e) { assertEquals("ERC777: caller is not an operator for holder", getDecodedRevertReason(e.getTransactionReceipt().get().getRevertReason())); }

magooster (Sat, 20 Jun 2020 19:36:02 GMT):
Heres an example for web3j try { token.operatorBurn(addressA, burnAmount, new byte[0], new byte[0]).send(); } catch(TransactionException e) { assertEquals("ERC777: caller is not an operator for holder", getDecodedRevertReason(e.getTransactionReceipt().get().getRevertReason())); }

magooster (Sat, 20 Jun 2020 19:37:12 GMT):
Where getDecodedRevertReason is as follows

magooster (Sat, 20 Jun 2020 19:37:32 GMT):
public String getDecodedRevertReason(String encodedRevertReason) { String errorMethodId = "0x08c379a0"; // Numeric.toHexString(Hash.sha3("Error(string)".getBytes())).substring(0, 10) List> revertReasonTypes = Collections.singletonList(TypeReference.create((Class) AbiTypes.getType("string"))); List decoded = FunctionReturnDecoder.decode(encodedRevertReason.substring(errorMethodId.length()), revertReasonTypes); Utf8String decodedRevertReason = (Utf8String) decoded.get(0); return decodedRevertReason.getValue(); }

VipinB (Sat, 20 Jun 2020 19:41:15 GMT):
This is what we were trying with the ethCall method. Instead of "0x08c379a0" we get "0x". We will grok this again.

magooster (Sat, 20 Jun 2020 19:45:06 GMT):
I assume your node configuration includes, revert-reason-enabled=true

magooster (Sat, 20 Jun 2020 19:46:56 GMT):
https://github.com/web3j/web3j/blob/master/core/src/main/java/org/web3j/utils/RevertReasonExtractor.java

VipinB (Sat, 20 Jun 2020 19:50:29 GMT):
Yes indeed on all the nodes

VipinB (Sat, 20 Jun 2020 19:51:53 GMT):
This question of error handling must come up often.

VipinB (Sat, 20 Jun 2020 19:51:53 GMT):
This question of exception handling must come up often.

VipinB (Sat, 20 Jun 2020 19:51:53 GMT):
@magooster This question of exception handling must come up often.

magooster (Sat, 20 Jun 2020 20:04:04 GMT):
Afraid i'm just an interested participant who drops in from time-to-time...

shemnon (Sun, 21 Jun 2020 03:48:17 GMT):
Try getting a trace of the transaction - https://besu.hyperledger.org/en/stable/Reference/API-Methods/#trace_transaction

shemnon (Sun, 21 Jun 2020 03:49:51 GMT):
Revert reasons are only recorded if the smart contract itself provides a revert reason. If it is some other exceptional halt, such as out of gas, no revert reason is recorded.

shemnon (Sun, 21 Jun 2020 03:50:56 GMT):
The trace call has the same json structure as parity's trace call.

benjamincburns (Sun, 21 Jun 2020 03:53:29 GMT):
Since it has the same structure as Parity's trace call, I think it will work with the Truffle debugger as well. That should let you step through the transaction in VS Code to see what it's behavior is

VipinB (Sun, 21 Jun 2020 12:09:11 GMT):
Since the eThaler smart contract code produces the revert reason, it should be available. We will look at your suggestions. @shemnon @benjamincburns

VipinB (Sun, 21 Jun 2020 12:09:11 GMT):
Since the eThaler smart contract code produces the revert reason, it should be available. The main idea is how to get it to display at the user interface for the user who initiated the transaction, so that they can take corrective action. For example : require( ( isPaused( tokenId ) == false ), "eThaler: Token is paused. Transfer is not permitted" ); We will look at trace. There are no problems getting error messages to display with Truffle/Ganache. @shemnon @benjamincburns @magooster

VipinB (Sun, 21 Jun 2020 12:09:11 GMT):
Since the eThaler smart contract code produces the revert reason, it should be available. This is not a mystery. The main idea is how to get it to display at the user interface for the user who initiated the transaction, so that they can take corrective action. For example : require( ( isPaused( tokenId ) == false ), "eThaler: Token is paused. Transfer is not permitted" ); We need to be able to tell the user who initiated the transfer that it will not go through as the token is paused. It is not a debug situation. Is the pattern: do all checks before it hits the solidity code? Still there can be revert reasons other than running out of gas. We need to be able to tell the user at the front end these reasons. Which is the rule of good UI design, instead of throwing and showing a fake reason like running out of gas (which is the behavior of the web3j interface at the moment). There are no problems getting error messages to display with Trufflle. @shemnon @benjamincburns @magooster

shemnon (Sun, 21 Jun 2020 15:23:05 GMT):
Do you have a self-contained sample you can link to? Doing this via chat is like keyhole surgery without cameras.

benjamincburns (Sun, 21 Jun 2020 18:05:12 GMT):
I understand your frustrations, @VipinB. Solidity and the EVM weren't really designed for this sort of exception-like error handling. Revert reasons were added quite late in their development, and since the two major mainnet clients don't expose them directly, I think the usual pattern is to add checks in client code for conditions that are known to cause a revert. Sadly this doesn't guarantee that you won't see a revert, as these conditions can change before you submit the transaction, but in the case when a revert occurs you can always check the state of the contract for that specific block to figure out why, and then display an error. All of that said, you should be able to get this working with Besu without needing to do what I just described. Hopefully if you can get @shemnon a minimal code sample he can help sort it out.

benjamincburns (Sun, 21 Jun 2020 18:05:12 GMT):
I understand your frustrations, @VipinB. Solidity and the EVM weren't really designed for this sort of exception-like error handling. Revert reasons were added quite late in their development, and since the two major mainnet clients don't expose them directly, I think the usual pattern is to add checks in client code for conditions that are known to cause a revert. Sadly this doesn't guarantee that you won't see a revert, as these conditions can change before you submit the transaction, but in the case when a revert occurs you can always check the state of the contract for that specific block to figure out why, and then display an error. All of that said, you should be able to get this working with Besu without needing to do what I just described. Hopefully if you can get @shemnon a minimal reproduction code sample he can help sort it out.

benjamincburns (Sun, 21 Jun 2020 18:05:12 GMT):
I understand your frustrations, @VipinB - Solidity and the EVM weren't really designed for this sort of exception-like error handling. Revert reasons were added quite late in their development, and since the two major mainnet clients don't expose them directly, I think the usual pattern is to add checks in client code for conditions that are known to cause a revert. Sadly this doesn't guarantee that you won't see a revert, as these conditions can change before you submit the transaction, but in the case when a revert occurs you can always check the state of the contract for that specific block to figure out why, and then display an error. All of that said, you should be able to get this working with Besu without needing to do what I just described. Hopefully if you can get @shemnon a minimal reproduction code sample he can help sort it out.

VipinB (Sun, 21 Jun 2020 21:25:12 GMT):
Thanks, any three lines of code that throws a revert is what is needed. Then it needs to be run inside a Besu network, when called from a web3 interface, the web3 needs to get at the revert reason "Permanently broken". function brokenforever( ) external { require((true==false), "Permanently broken"); }

VipinB (Sun, 21 Jun 2020 21:25:12 GMT):
Thanks, any three lines of code that throws a revert is what is needed. Then it needs to be run inside a Besu network, when called from a web3 interface, the web3 needs to get at the revert reason "Permanently broken". function brokenforever( ) external { require((true==false), "Permanently broken"); } @shemnon

VipinB (Sun, 21 Jun 2020 21:25:12 GMT):
Thanks, any three lines of code that throws a revert is what is needed. Then it needs to be run inside a Besu network, when called from a web3 interface, the web3 needs to get at the revert reason "Permanently broken". function brokenforever( ) external { require((true==false), "Permanently broken"); } @shemnon @benjamincburns

ArigelaSatyanarayana (Mon, 22 Jun 2020 03:50:38 GMT):
Has joined the channel.

hilyds (Mon, 22 Jun 2020 09:33:41 GMT):
Has joined the channel.

SDive (Mon, 22 Jun 2020 10:28:26 GMT):
Has joined the channel.

SDive (Mon, 22 Jun 2020 10:28:26 GMT):
Hello, I setup my application as mentioned below: - setup Besu POA network - deploy a contract with few events triggered when its method is invoked - smart contract is deployed using open zeppelin to make it upgradable - configure and connect eventeum (https://github.com/ConsenSys/eventeum) to receive capture events triggered by the smart contract Actual behaviour: * _Eventeum does not receive the smart contract events_ Expected behaviour: * _Eventeum should have received smart contract events from the besu node and processed it successfully._ *Additional note:* The setup mentioned above works as expected when besu is replaced with ganache. I did not check it with geth or other Ethereum client but I'm hoping the behaviour would be as expected.

SDive (Mon, 22 Jun 2020 10:28:26 GMT):
Hello, I setup my application as mentioned below: - setup Besu POA network - deploy a contract with few events triggered when its method is invoked - smart contract is deployed using open zeppelin to make it upgradable - configure and connect eventeum (https://github.com/ConsenSys/eventeum) to receive capture events triggered by the smart contract Actual behaviour: * _Eventeum does not receive the smart contract events_ Expected behaviour: * _Eventeum should have received smart contract events from the besu node and processed it successfully._ *Additional note:* The setup mentioned above works as expected when besu is replaced with ganache. I did not check it with geth or other Ethereum client but I'm hoping the behaviour would be as expected.

SDive (Mon, 22 Jun 2020 10:28:26 GMT):
Hello, I setup my application as mentioned below: - setup Besu POA network - deploy a contract with few events triggered when its method is invoked - smart contract is deployed using open zeppelin to make it upgradable - configure and connect eventeum (https://github.com/ConsenSys/eventeum) to receive capture events triggered by the smart contract Actual behaviour: * _Eventeum does not receive the smart contract events_ Expected behaviour: * _Eventeum should have received smart contract events from the besu node and processed it successfully._ Is there any specific setup/configuration is needed to make (besu + open zeppelin deployed upgradable smart contract + eventeum) work together? *Additional note:* The setup mentioned above works as expected when besu is replaced with ganache. I did not check it with geth or other Ethereum client but I'm hoping the behaviour would be as expected.

SDive (Mon, 22 Jun 2020 10:28:26 GMT):
Hello, I setup my application as mentioned below: - setup Besu POA network - deploy a contract with few events triggered when its method is invoked - smart contract is deployed using open zeppelin to make it upgradable - configure and connect eventeum (https://github.com/ConsenSys/eventeum) to receive capture events triggered by the smart contract Actual behaviour: * _Eventeum does not receive the smart contract events_ Expected behaviour: * _Eventeum should have received smart contract events from the besu node and processed it successfully._ *Question:* Is there any specific setup/configuration is needed to make (besu + open zeppelin deployed upgradable smart contract + eventeum) work together? *Additional note:* The setup mentioned above works as expected when besu is replaced with ganache. I did not check it with geth or other Ethereum client but I'm hoping the behaviour would be as expected.

RafaelAPB (Mon, 22 Jun 2020 21:10:31 GMT):
I am deploying a default Besu node on a private network with the arguments: --min-gas-price=0. I deploy a contract, that has several variables in the storage, with predefined values. I obtain the newly contract address from the private transaction receipt. But when I am querying the storage with ``web3.eth.getStorageAt``, I obtain 0x0 for every index. Any hint of what's going on? @shemnon

RafaelAPB (Mon, 22 Jun 2020 21:10:31 GMT):
I am deploying a default Besu node on a private network with the arguments: ``--min-gas-price=0``. I deploy a smart contract at the network, that has several variables in the storage, with predefined values. I obtain the newly contract address from the private transaction receipt. But when I am querying the storage with ``web3.eth.getStorageAt``, I obtain 0x0 for every index. Any hint of what's going on? @shemnon

RafaelAPB (Mon, 22 Jun 2020 21:10:31 GMT):
I am deploying a default Besu node on a private network with the arguments: --min-gas-price=0. I deploy a smart contract at the network, that has several variables in the storage, with predefined values. I obtain the newly contract address from the private transaction receipt. But when I am querying the storage with ``web3.eth.getStorageAt``, I obtain 0x0 for every index. Any hint of what's going on? @shemnon

RafaelAPB (Mon, 22 Jun 2020 21:10:31 GMT):
I am deploying a default Besu node on a private network with the arguments: `` --min-gas-price=0 ``. I deploy a smart contract at the network, that has several variables in the storage, with predefined values. I obtain the newly contract address from the private transaction receipt. But when I am querying the storage with ``web3.eth.getStorageAt``, I obtain 0x0 for every index. Any hint of what's going on? @shemnon

RafaelAPB (Mon, 22 Jun 2020 21:10:31 GMT):
I am deploying a default Besu node on a private network with the arguments: --min-gas-price=0. I deploy a smart contract at the network, that has several variables in the storage, with predefined values. I obtain the newly contract address from the private transaction receipt. But when I am querying the storage with ``web3.eth.getStorageAt``, I obtain 0x0 for every index. Any hint of what's going on? @shemnon

RafaelAPB (Mon, 22 Jun 2020 21:10:31 GMT):
I am deploying a default Besu node on a private network with the arguments: --min-gas-price=0. I deploy a smart contract at the network, that has several variables in the storage, with predefined values. I obtain the newly contract address from the private transaction receipt. But when I am querying the storage with ``web3.eth.getStorageAt``, I obtain 0x0 for every index. Any hint of what's going on? @shemnon EDIT: I am using this image: https://github.com/petermetz/besu-docker-all-in-one

shemnon (Tue, 23 Jun 2020 14:14:39 GMT):
I'm on vacation this week. Someone else will need to field this.

adovale (Tue, 23 Jun 2020 17:27:15 GMT):
Hello, In Hyperledger Besu, is it possible to send private transactions to public Smart Contracts in order to do a delegate call to private contract? For example, consider following scenario: - In a network there is a *public Smart Contract A deployed*, which has a _forward_ method that do a _delegateCall_ to any address (given in args). - In the same network, there is also a *private Smart Contract B deployed*, which has a method _doSomething_. - If a Dapp sends a private transaction to execute _forward_ function of SC A, passing as a parameter the address of contract B, would then the contract A do a delegateCall to contract B succesfully (only in the nodes listed in privateFor)? Thank you very much in advance

adovale (Tue, 23 Jun 2020 17:27:15 GMT):
Hello, In Hyperledger Besu, is it possible to send private transactions to public Smart Contracts in order to do a delegate call to private contract? For example, consider following scenario: - In a network there is a *public Smart Contract A deployed*, which has a _forward_ method that do a _delegateCall_ to any address (given in args). - In the same network, there is also a *private Smart Contract B deployed*, which has a method _doSomething_. - If a *Dapp sends a private transaction to execute _forward_ function of SC A, passing as a parameter the address of contract B*, would then the contract A do a delegateCall to contract B succesfully (only in the nodes listed in privateFor)? Thank you very much in advance

RafaelAPB (Tue, 23 Jun 2020 18:57:36 GMT):
twe

manumarchal (Wed, 24 Jun 2020 08:12:48 GMT):
Has joined the channel.

farghaly (Wed, 24 Jun 2020 23:44:08 GMT):
What's the CPU requirements for node running in *private* network and *public* network, syncing rinkeby or mainnet ?

farghaly (Wed, 24 Jun 2020 23:44:25 GMT):
in terms of # of cores

raedbensaid (Thu, 25 Jun 2020 16:04:03 GMT):
hello guys, I followed this https://github.com/raedbensaid/besu-kubernetes/tree/develop/kubectl/ibft2 and i have 2 problems : 1- besu nodes are statefulsets but without pvc and when i try to add the creation of pvc in node-statefulset.yaml it doesn't work! 2- when using :8545 i need to use statefulset name and not the ip adress of the pod because the ip can change! and it didn't work : i used statefulset-name.service-name.namespace.svc.cluster.local ( in this case it will be node-0.besu-node.besu.svc.cluster.local : 8545

joshuafernandes (Fri, 26 Jun 2020 06:27:35 GMT):
Hello @raedbensaid Can you share more info re your setup (local, cloud etc), how you are attempting to connect to the rpc service? 1. You'd have to share config re PVCs, I have used them without any trouble. Did you create a PV and then a PVC to use in each statefulset? 2. Whats the error that you get connecting to the node service? To connect to the nodes from the outside it should go through a service which does have a constant IP and can have any number of pods behind it - effectively this is what we do when connecting to a DApp

joshuafernandes (Fri, 26 Jun 2020 09:00:46 GMT):
From our testing mainnet appears to be fine on 4 cores, the other public networks on 2 cores. Private networks we tend to test with 2 cores as well - though each private network varies with load and requirements. We'd recommend putting in monitoring and adjusting as required. https://besu.hyperledger.org/en/latest/HowTo/Get-Started/System-Requirements-Public/ and https://besu.hyperledger.org/en/latest/HowTo/Monitor/Metrics/ have more details

raedbensaid (Fri, 26 Jun 2020 09:16:03 GMT):
Hello @joshuafernandes i was following this tutorial https://github.com/PegaSysEng/besu-kubernetes/tree/master/kubectl/ibft2 using a kubernetes cluster which is running in aws. Those scripts does not create PVCs do i need to add it ? when trying to connect to the node using statefulset name the error is " can not resolve host " but when i try it with the pod IP adress it works fine but it's not convenient because if the pod fails and start again the IP will change

raedbensaid (Fri, 26 Jun 2020 09:16:03 GMT):
Hello @joshuafernandes i was following this tutorial https://github.com/PegaSysEng/besu-kubernetes/tree/master/kubectl/ibft2 using a kubernetes cluster which is running in aws. Those scripts does not create PVCs do i need to add it ? when trying to connect to the node using statefulset name the error is " can not resolve host " and when i try it with the pod IP adress it works fine but it's not convenient because if the pod fails and start again the IP will change

VipinB (Fri, 26 Jun 2020 15:55:11 GMT):
Hi @shemmon Does this fragment suffice for you to take a look or should I provide more detail? Or something completely different? @benjamincburns

VipinB (Fri, 26 Jun 2020 15:55:11 GMT):
Hi @shemnon Does this fragment suffice for you to take a look or should I provide more detail? Or something completely different? @benjamincburns

Omidazimi94 (Fri, 26 Jun 2020 17:00:27 GMT):
Has joined the channel.

Omidazimi94 (Fri, 26 Jun 2020 17:00:27 GMT):
hi guys, i have a project that i need to have condition on amount of ether that users or nodes want to send to each other (like less than 50 ether) i found that it's in this file from github project : besu/ethereum/core/src/main/java/org/hyperledger/besu/ethereum/mainnet/MainnetTransactionValidator.java. can anyone please help me with the condition(if) code that i have to add to ValidationResult method? thank you in advance

joshuafernandes (Sat, 27 Jun 2020 10:20:43 GMT):
Hello @raedbensaid , re PVC's that is correct - the examples in there are generic and cloud agnostic - the use of PVC's are recommended but it is up to the user to pick the type. eg: in AWS you'd have to pick EBS or EFS as the PV and then the PVCs will work. On the main readme see the section titled 'data volumes'. Depending on cloud the user has to pick one from https://kubernetes.io/docs/concepts/storage/volumes/

joshuafernandes (Sat, 27 Jun 2020 10:24:25 GMT):
Is the connection to the node being made from outside the cluster or within? Other nodes will resolve it dircetly - i.e node -> node. If a Dapp/user is connecting to the network you should use the besu-node service and not directly connect to the statefulset. The services maintain constant IP's not the pods. https://kubernetes.io/docs/concepts/services-networking/connect-applications-service/ For example, refer to the way bootnodes are specified

VipinB (Sat, 27 Jun 2020 10:28:15 GMT):
@magooster forgot to tell you that changing the config for the polling frequency did help the response. It is much faster now. Just stuck on the revert-reason getting captured through the web3j interface to be shown o the user. we have enabled revert-reason in the nodes. More details needed? @shemnon @benjamincburns - code fragment above.

madelinemurray (Sun, 28 Jun 2020 21:43:13 GMT):
hi @adovale - access between private and public states is described in the docs here - https://besu.hyperledger.org/en/stable/Concepts/Privacy/Privacy-Groups/#access-between-states Public contracts cannot access private contracts. So SC A cannot access SC B. Have you got a specific use case driving this approach?

koshikraj (Mon, 29 Jun 2020 05:29:04 GMT):
Has joined the channel.

adovale (Mon, 29 Jun 2020 07:46:39 GMT):
Hi @madelinemurray , thank you for your answer and for the resource. I was thinking about maintainability of a use case. Consider the following scenario: - In a network, there is 3 nodes, A,B,C. - There is a private smart contract deployed, which contains the logic of a specific use case. - A, B, C nodes send private tx to this contract, setting the privateFor to one or two of the other nodes. The important thing is that *the privateFor is NOT always the same*.(for example, A sends private tx with the privateFor listing only B, even that C has the contract deployed too). If someday i want to add a new 4th node D, this node does not have the private contract deployed. So, if i want node D to interact with the other nodes trough this contract (send private tx to SC and set privateFor with any of the other nodes), i would have to redeploy it, update Dapps in nodes A, B and C to use the new contract, for those to use the same SC as the new member. I was thinking about deploying the contract in a privacy group and then adding new member to this. But this approach has to handicaps: 1. AFAIK, In a privacy group, all members share the private state. I only want them to share the contract business logic, and to send tx between them using the same contract interface, but the actual data processed in the contract can only be accessed to a subset of the privacy group, and in an ad hoc manner. 2. The privacy groups seem like a very new feature and i am not quite sure about its support and maintainability.

adovale (Mon, 29 Jun 2020 07:46:39 GMT):
Hi @madelinemurray , thank you for your answer and for the resource. I was thinking about maintainability of a use case. Consider the following scenario: - In a network, there is 3 nodes, A,B,C. - There is a private smart contract deployed, which contains the logic of a specific use case. - A, B, C nodes send private tx to this contract, setting the privateFor to one or two of the other nodes. The important thing is that *the privateFor is NOT always the same*.(for example, A sends private tx with the privateFor listing only B, even that C has the contract deployed too). If someday i want to add a new 4th node D, this node does not have the private contract deployed. So, if i want node D to interact with the other nodes trough this contract (send private tx to SC and set privateFor with any of the other nodes), i would have to redeploy it, update Dapps in nodes A, B and C to use the new contract, for those to use the same SC as the new member. I was thinking about deploying the contract in a privacy group and then adding new member to this. But this approach has tWo handicaps: 1. AFAIK, In a privacy group, all members share the private state. I only want them to share the contract business logic, and to send tx between them using the same contract interface, but the actual data processed in the contract can only be accessed to a subset of the privacy group, and in an ad hoc manner. 2. The privacy groups seem like a very new feature and i am not quite sure about its support and maintainability.

adovale (Mon, 29 Jun 2020 07:46:39 GMT):
Hi @madelinemurray , thank you for your answer and for the resource. I was thinking about maintainability of a use case. Consider the following scenario: - In a network, there is 3 nodes, A,B,C. - There is a private smart contract deployed, which contains the logic of a specific use case. - A, B, C nodes send private tx to this contract, setting the privateFor to one or two of the other nodes. The important thing is that *the privateFor is NOT always the same*.(for example, A sends private tx with the privateFor listing only B, even that C has the contract deployed too). If someday i want to add a new 4th node D, this node does not have the private contract deployed in its private state. So, if i want node D to interact with the other nodes trough this contract (send private tx to SC and set privateFor with any of the other nodes), i would have to redeploy it, update Dapps in nodes A, B and C to use the new contract, for those to use the same SC as the new member. I was thinking about deploying the contract in a privacy group and then adding new member to this. But this approach has tWo handicaps: 1. AFAIK, In a privacy group, all members share the private state. I only want them to share the contract business logic, and to send tx between them using the same contract interface, but the actual data processed in the contract can only be accessed to a subset of the privacy group, and in an ad hoc manner. 2. The privacy groups seem like a very new feature and i am not quite sure about its support and maintainability.

madelinemurray (Tue, 30 Jun 2020 04:58:08 GMT):
1. If I'm understanding your use-case correctly, the same contract (ie, business logic) can be deployed in more than one privacy group. The same contract business logic is available in each privacy group but the data is only available in the privacy group in which it was created/updated. eg, The example in the web3js-eea library shows deploying a contract to a privacy group: https://github.com/PegaSysEng/web3js-eea/blob/master/example/onChainPrivacy/deployContractExample.js `2. Flexible privacy groups (ie, privacy groups where you can add and remove members) have been available in Besu since 1.4.1 - https://github.com/hyperledger/besu/releases/tag/1.4.1 We have performance testing for privacy groups on our 1.6 roadmap - once this is completed we will finalise the interfaces and remove the early access tag. If you have specific requirements or questions around support, let us know.

raedbensaid (Tue, 30 Jun 2020 09:14:19 GMT):
Thank you for this clarification @joshuafernandes , the connection to the node is being made from inside the cluster using another deployment. In fact i have another problem, i want to deploy a smart contract which exists in another pod other than the besu pods ( using truffle ), what should i do ?

raedbensaid (Thu, 02 Jul 2020 09:19:41 GMT):
@joshuafernandes

raedbensaid (Thu, 02 Jul 2020 09:22:14 GMT):
Hello, i have a problem in the deployment of smart contract with besu in kubernetes. My smart contract runs in a pod other than the blockchain pods! can you tell me what's the best approach to consider ? cc @joshuafernandes @madelinemurray

joshuafernandes (Thu, 02 Jul 2020 11:17:08 GMT):
Hello @raedbensaid The process to deploy a contract to a node on k8s isnt much different to that of a node on a vm or the like. Could you give us more information on what the error is, logs etc? Could you confirm that the contract deploys on a local network (one of the examples in the sample-networks repo?) We've got a permissions example in there that deploys contracts and a DApp for reference. Basically you need an account that you connect to the chain and use truffle for example to deploy to an RPC endpoint - this would again be the besu-node ClusterIp service endpoint from your endpoint.

joshuafernandes (Thu, 02 Jul 2020 11:20:47 GMT):
The connection should work fine from inside there - pretty much anything in your VPC should be routable to that service IP. I've got a cluster up in Azure, if I get the chance tomorrow I'll deploy Besu there and a second VM and share screenshots of how I connect from VM to the RPC service

joshuafernandes (Thu, 02 Jul 2020 11:20:47 GMT):
The connection should work fine from inside there - pretty much anything in your VPC should be routable to that service IP (depending on how the network is setup) I've got a cluster up in Azure, if I get the chance tomorrow I'll deploy Besu there and a second VM and share screenshots of how I connect from VM to the RPC service

raedbensaid (Thu, 02 Jul 2020 11:22:35 GMT):
Hello @joshuafernandes thank you for your response. I'm tried to deploy even a test smart contract, there is no error but it stays pending " Contract transaction sent, waiting for receipt " and there is nor response from the besu node

raedbensaid (Thu, 02 Jul 2020 11:24:47 GMT):
It well be great @joshuafernandes thank you! Is it really different from the other approach with truffle migrate ?

farghaly (Thu, 02 Jul 2020 11:39:51 GMT):
What's the difference between constantipoleFix and petersburg milestones in genesis file ? I assume they're the same or aliases ?

Ric.Hard.87 (Thu, 02 Jul 2020 14:13:09 GMT):
Has joined the channel.

Ric.Hard.87 (Thu, 02 Jul 2020 14:13:09 GMT):
Hello, is the IBFT-Network example still intentet to work? When trying to launch Node-1 it throws me some RocksDBException trying to access the MANIFEST-000004 file, which is not existing. Excution is stopped then

farghaly (Thu, 02 Jul 2020 22:00:35 GMT):
Is there a reason why geth and besu fail on handshake on private clique network ?

farghaly (Thu, 02 Jul 2020 22:00:44 GMT):
It's working fine on goerli

shemnon (Thu, 02 Jul 2020 22:07:28 GMT):
What versions of geth and goerli? I think it's the eth/64 identifier that should have been fixed on the most current builds of besu.

shemnon (Thu, 02 Jul 2020 22:07:28 GMT):
What versions of geth and besu? I think it's the eth/64 identifier that should have been fixed on the most current builds of besu.

farghaly (Thu, 02 Jul 2020 22:09:56 GMT):
@shemnon ethereum/client-go:v1.9.15 hyperledger/besu:1.4.6

shemnon (Thu, 02 Jul 2020 22:10:13 GMT):
can you DM me the genesis?

farghaly (Thu, 02 Jul 2020 22:10:40 GMT):
sure

shemnon (Thu, 02 Jul 2020 22:15:16 GMT):
@abdelhamidbakhta on RC

farghaly (Thu, 02 Jul 2020 22:48:19 GMT):
I figured out the problem, in geth genesis file, daoForkSupport was *false*

farghaly (Thu, 02 Jul 2020 22:48:43 GMT):
after I changed it to true, peer connected and chain is syncing :male_dancer:

joshuafernandes (Fri, 03 Jul 2020 03:49:04 GMT):

connect_to_k8s_cloud.pdf

joshuafernandes (Fri, 03 Jul 2020 03:52:46 GMT):
@raedbensaid see attached file showing connectivity to the besu-node service from within the k8s cluster & connectivity from my local machine to the cluster. Either will work to deploy your contract, but the former would be the better approach

amealwithbasil (Fri, 03 Jul 2020 15:59:33 GMT):
I have a n00b question. What is the intended use of multi-tenancy? Is it designed for SaaS providers to provide privacy for their customers (and allows the operator to do this at scale), or is it more designed for a single organization to provide their users (the tenants) with their own privacy groups? I know that operators can see all data within all the tenants, so would that rule it out of being used as part of a SaaS offering?

rranjan3 (Sat, 04 Jul 2020 02:29:05 GMT):
When I send over many transactions back to back, few of them do not get mined at times. They tend to timeout after 120 seconds. I have a block period of 5 seconds. How do I work around this? I am not able to trace the transaction in the logs either. Any FAQs for debugging could help.

rranjan3 (Sat, 04 Jul 2020 02:29:05 GMT):
When I send over many transactions back to back( using 1.4.2), few of them do not get mined at times. They tend to timeout after 120 seconds. I have a block period of 5 seconds. How do I work around this? I am not able to trace the transaction in the logs either. Any FAQs for debugging could help.

rranjan3 (Sat, 04 Jul 2020 02:29:05 GMT):
When I send over many transactions back to back( using 1.4.3), few of them do not get mined at times. They tend to timeout after 120 seconds. I have a block period of 5 seconds. How do I work around this? I am not able to trace the transaction in the logs either. Any FAQs for debugging could help. When I tried the same on 1.4.6, I hit a bad request exception(400).

rranjan3 (Sat, 04 Jul 2020 12:11:40 GMT):
This was probably happening because of same nonce in the transaction. I generate transactions from multiple places using the same key. I need to orchestrate this.

lucassaldanha (Mon, 06 Jul 2020 04:36:07 GMT):
The main use is to reduce what is called "cost of ownership" (or something like that). Basically, the "classic" model in which each entity or participant run their own node has a drawback in terms of the cost. With multi-tenancy, you can leverage some of these costs. Of course not every use-case works well with multi-tenancy as it requires all tenants to trust infrastructure provider.

marcdk (Mon, 06 Jul 2020 05:28:32 GMT):
Has joined the channel.

hilyds (Mon, 06 Jul 2020 12:22:25 GMT):

Clipboard - July 6, 2020 7:22 PM

hilyds (Mon, 06 Jul 2020 12:23:09 GMT):
Hi all, do you guys know why this is happening? it's happening for grafana-ingress-nginx-ingress-controller and besu-ingress-nginx-ingress-controller, then i can't see the external endpoint. do you have any idea?

raduke (Mon, 06 Jul 2020 15:53:20 GMT):
I am having some trouble on connecting two different machines in local network on my docker besu chain. If I connect two containers on the same machine setting de bootnode addres with docker internal ip address it works fine. But when I run an container in other machine and set my local ip on bootnode config on this new node the nodes doesn't communicate with each other and I keep receiveing "no sync target 0 peers currently connected" message on my docker logs. If I make a curl to my bootnode peer on the other machine node to the besu API like net_version for example I get the right result. Am I missing some config or there is a way of I debug this connection to investigate the reason of not establishing the connection?

raduke (Mon, 06 Jul 2020 20:08:20 GMT):
I also set the nat-method config to DOCKER and p2p-host to my local machine ip on network

banhmi.eth (Tue, 07 Jul 2020 03:16:29 GMT):
Hello there, if I have 2 besu node run on Ropsten or Rinkeby or others public network, can I do private transaction for this 2 besu nodes?

hungptse (Tue, 07 Jul 2020 08:44:58 GMT):
Has joined the channel.

lucassaldanha (Wed, 08 Jul 2020 01:39:15 GMT):
Hi! Support for private transactions on public networks is in early-access. If you get the latest versions of Besu and Orion you can try it out!

lucassaldanha (Wed, 08 Jul 2020 01:39:29 GMT):
And you are correct, it only works between Besu nodes. :)

hungptse (Wed, 08 Jul 2020 03:59:46 GMT):
Hi there, I'm a fresher working with Blockchain, how I build network blockchain by Besu, do have any offical document for it. Many thanks

hungptse (Wed, 08 Jul 2020 04:01:00 GMT):
I mean using Besu to create blockchain -> implement bussiness smart constract -> publish to end user

lucassaldanha (Wed, 08 Jul 2020 21:16:03 GMT):
I think where to start depends on what you are planning to learn/work on. In the way that I see it, Ethereum development has kinda 3 parts: Protocol, Infrstructure and Smart Contracts/Dapps. 1. Protocol is where you'll see all client (nodes) development, implementing the rules that all nodes in the network follow, etc. For example, Besu is an Ethereum client implementation. 2. The infrstructure is where all the deployment stuff is. Including the network topology and other related topics. 3. Smart Contract/Dapp Is the "use-case" side of Ethereum, where you will implement the business logic to do something that you need. This is where you'll see people talking about Solidity and Truffle, and Web3js, Remix, etc. Usually, people start their journey on the Smart Contract/Dapp development side. I'd recommend that you check out Truffle project, they have got a bunch of tools and things that can help you (https://www.trufflesuite.com/) Another good place to practice implementing smart contracts is Remix, an online IDE that runs a "mock" blockchain taht you can interact with (http://remix.ethereum.org/)

lucassaldanha (Wed, 08 Jul 2020 21:17:35 GMT):
Of course, you can always run your own Besu node locally for development if you need to. Check out this link for more info on how to spin up a small network (https://besu.hyperledger.org/en/latest/Tutorials/Private-Network/Create-Private-Network/)

cheul123a (Thu, 09 Jul 2020 08:50:51 GMT):
Has joined the channel.

cheul123a (Thu, 09 Jul 2020 08:51:15 GMT):
Hi is there any tool for check tps of besu

Anjali9088 (Thu, 09 Jul 2020 11:06:03 GMT):
Has joined the channel.

Anjali9088 (Thu, 09 Jul 2020 11:06:03 GMT):
Hi there, is it possible to write smart contract using java? if yes , how can be it deployed using Hyperledger besu?

rai (Thu, 09 Jul 2020 14:48:29 GMT):
Not that I'm aware of. If you want to try something other than Solidity, check out Vyper.

raduke (Thu, 09 Jul 2020 15:27:26 GMT):
I fixed it here. My 30303 port was open only for TCP connections I opened it to UDP also and it worked.

raedbensaid (Fri, 10 Jul 2020 09:44:07 GMT):
@joshuafernandes thank you for the document, but still truffle migrate don't work for me on the node so that i can deploy my contract

Jemal (Sun, 12 Jul 2020 07:15:03 GMT):
Hi guys, i am trying to measure the transaction latency of Clique and Proof of Work on private test network. I know that i have to wait around 5 to 6 confirmations for Proof of Work to claim final confirmation. How many confirmations do i have to wait for Clique? Is it the same as Proof of Work?

krzyhoo (Mon, 13 Jul 2020 15:03:47 GMT):
I was womndering if you have a quick answer for me. When I query the number of peers using RPC, it yields 3, as below ```curl -X POST --data '{"jsonrpc":"2.0","method":"net_peerCount","params":[],"id":53}' http://xx.xx.xx.xx:8545 { "jsonrpc" : "2.0", "id" : 53, "result" : "0x3" }%``` But `journalctl` (I have configured Besu nodes as services) yields 5 peers for NON-BOOTNODES (I have 4 nodes, 2 bootnodes): ```Jul 13 15:03:12 ip-172-31-32-92.eu-central-1.compute.internal sh[35195]: 2020-07-13 15:03:12.024+00:00 | EthScheduler-Workers-0 | INFO | PersistBlockTask | Imported #1,726 / 0 tx / 0 om / 0 (0.0%) gas / (0x39cd54e5ece4084dbee7b7ca97d243462090eb14102891293af109ba3bd564fc) in 0.000s. Peers: 5``` Any idea why?

krzyhoo (Tue, 14 Jul 2020 05:10:55 GMT):
:-/

rai (Tue, 14 Jul 2020 14:27:30 GMT):
Hey! Sorry for the delay, ConsenSys had a company-wide day-off so a lot of the contributors probably weren't checking. Does this discrepancy persist? Or does it only report different numbers for a short period of time?

rai (Tue, 14 Jul 2020 14:28:46 GMT):
Actually, could you make this a github issue with the answer to my question above in the post? That'd be best so we can prioritize this properly and make sure it doesn't get lost.

chxpz (Tue, 14 Jul 2020 14:59:28 GMT):
Has joined the channel.

DelgadoTrueba (Tue, 14 Jul 2020 18:07:49 GMT):
Has joined the channel.

DelgadoTrueba (Tue, 14 Jul 2020 18:07:49 GMT):
Hello guys, I have a question. How hyperledger besu difference the public world state and private world state? Are there different databases for each world state?

lucassaldanha (Tue, 14 Jul 2020 20:37:19 GMT):
Yes, by default all our world state data is stored in a RocksDB database. And we have separate dbs for the public state and for the private state.

joshuafernandes (Tue, 14 Jul 2020 22:16:07 GMT):
Whats the error? Can you confirm you have connectivity to the node-service via curl etc? It'd be worth putting some logs of the truffle migrate here for us to see whats going on

illuzzig (Wed, 15 Jul 2020 10:37:21 GMT):
Hi everyone, this is my truffle box based on HL besu and nestJS. Hope you will enjoy https://www.trufflesuite.com/boxes/besu-box

chrisdotn (Wed, 15 Jul 2020 11:56:55 GMT):
Has joined the channel.

chrisdotn (Wed, 15 Jul 2020 11:56:55 GMT):
Hi, I'm trying to setup Besu on AWS to sync the Goerli testnet (or one of the other public testnets). However, besu doesn't find any peers. I've opened up my security group on ports 8545, 8546, 8547, 9545, 30303 (tcp) and 30303 (udp) and I can access any internet address from the ec2 instance. I'm starting besu via the ansible galaxy role. Am I missing something?

farghaly (Thu, 16 Jul 2020 11:09:36 GMT):
Hi, Is there any benefit of activating DAO Hardfork in a private network ?

DelgadoTrueba (Thu, 16 Jul 2020 12:14:12 GMT):
I suppose that the public world state and the private world state are separated in different column families into Rocksdb database. is this true ? In that case, Would it be possible to delete a private world state without affecting the public world state ? Thanks in advance

timbeiko (Thu, 16 Jul 2020 23:37:41 GMT):
:besu: 🎉 Besu 1.5 is Out 🎉 :besu: Official announcement: https://www.hyperledger.org/blog/2020/07/16/announcing-hyperledger-besu-1-5-available-now Download: https://github.com/hyperledger/besu/releases/tag/1.5.0

timbeiko (Thu, 16 Jul 2020 23:37:41 GMT):
:besu: 🎉 *Besu 1.5 is Out* 🎉 :besu: Official announcement: https://www.hyperledger.org/blog/2020/07/16/announcing-hyperledger-besu-1-5-available-now Download: https://github.com/hyperledger/besu/releases/tag/1.5.0

eum602 (Fri, 17 Jul 2020 20:18:06 GMT):
Hello everyone, please I would like some help from you. Currently I have a set of orion nodes which are working using tls, I see an unexpected behavior in one of those nodes (Lets say Node-A) when sending the simple hello world mesage between orion nodes. Sometimes sending the message returns te encrypted payload response correctly, and sometimes returns the message {"error":"NodePushingToPeer"}. The problem is happening specifically in one orion node (Node-A) . Other nodes can send messages without issues; even sending messages to the Node-A. Please what would be some reasons for of this issue? thanks in advance!

shemnon (Sat, 18 Jul 2020 21:16:01 GMT):
Goerli is a fairly difficult network to find peers. It is essential that remote peers are able to connect to your node rather than your node connecting to the remote peers. What flags are you using for remote access? At a minimum you need to set `--p2p-host` to the external address of the EC2 box. You also will want to reserve an address or reset this value whenever you restart the box as EC2 tends to not have sticky IP addresses unless explicitly reserved.

shemnon (Sat, 18 Jul 2020 21:19:57 GMT):
Functionally no, there is no EVM or consensus impact. However it will have an impact in EIP2124 calculations, which impact peering, if the chain does not start on a post-dao hard fork (such as `petersburgBlock` or `istanbulBlock` being explicitly set to zero)

shemnon (Sat, 18 Jul 2020 21:21:13 GMT):
for a new private chain starting with `"istanbulBlock":0` will make this issue moot.

lucassaldanha (Sun, 19 Jul 2020 21:09:17 GMT):
Hi! To better support you with Orion, would you please head to our Orion discord channel? Here is the invite link! https://discord.gg/n8m22JK Please share your nodes configuration and setup so we can better understand what could be wrong. Cheers!

lucassaldanha (Sun, 19 Jul 2020 21:11:35 GMT):
I have just seen that you are already on our Discord! Thanks! Let's have this discussion over there! :)

chrisdotn (Mon, 20 Jul 2020 07:22:32 GMT):
Ah thanks.

farghaly (Mon, 20 Jul 2020 19:59:24 GMT):
does besu supports `light` sync mode ?

oon (Mon, 20 Jul 2020 20:14:54 GMT):
Has joined the channel.

arash009 (Tue, 21 Jul 2020 05:31:25 GMT):
Besu supports Full and Fast sync modes, which are both full nodes. https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#sync-mode There is no `light node` if thats what you are referencing.

RafaelAPB (Tue, 21 Jul 2020 22:17:12 GMT):
@shemnon any advice on this?

githubckgoh1439 (Wed, 22 Jul 2020 04:29:11 GMT):
Has joined the channel.

poojagupta23 (Wed, 22 Jul 2020 08:49:55 GMT):
Has joined the channel.

poojagupta23 (Wed, 22 Jul 2020 08:49:55 GMT):
Hi, I am trying to run permission network for besu. I have cloned https://github.com/PegaSysEng/besu-sample-networks.git. When I execute, ./run-permissioning.sh, none of the nodes are coming up. It is throwing below error. Please suggest how to fix this. 020-07-22 04:29:08.927+00:00 | main | INFO | RocksDBKeyValueStorageFactory | No existing database detected at /opt/besu/data. Using version 1 2020-07-22 04:29:08.991+00:00 | main | ERROR | RocksDBKeyValueStorageFactory | Failed to retrieve the RocksDB database meta version: /opt/besu/data/DATABASE_METADATA.json (Permission denied) /opt/besu/data/DATABASE_METADATA.json (Permission denied)

keithers (Wed, 22 Jul 2020 18:19:52 GMT):
Has joined the channel.

keithers (Wed, 22 Jul 2020 18:19:52 GMT):
does #besu support any popular oracles? Provable things/

keithers (Wed, 22 Jul 2020 18:19:56 GMT):
?*

poojagupta23 (Thu, 23 Jul 2020 03:15:19 GMT):
Do we have permissioning model in besu similar to that in quorum? http://docs.goquorum.com/en/latest/Permissioning/Enhanced%20Permissions%20Model/Overview/

joshuafernandes (Thu, 23 Jul 2020 20:54:44 GMT):
Hi @poojagupta23 I'll look into this and get back to you

joshuafernandes (Thu, 23 Jul 2020 20:55:03 GMT):
@lucassaldanha ^

lucassaldanha (Thu, 23 Jul 2020 22:47:57 GMT):
Besu doesn't have a similar permissioning model out of the box. However, our permissioning model follows the EEA spec, that defines an interface for node and account permissioning, allowing anyone to bring their own smart contracts to manage the nodes and accounts. This is our reference implementation (https://github.com/PegaSysEng/permissioning-smart-contracts). You'll notice that the permissioning model that we have implemented here is quite simple (based on admin accounts). However, by implementing your own version of these contracts, you could achieve the same model as Quorum.

joshuafernandes (Thu, 23 Jul 2020 22:56:18 GMT):
Should be sorted now, this was becuase the data dir was mounted as a volume as the root user and in v1.5 of Besu we set a `besu` user

joshuafernandes (Thu, 23 Jul 2020 22:56:40 GMT):
this is fixed with https://github.com/PegaSysEng/besu-sample-networks/pull/87 so if you do a pull and run again it should be fine

poojagupta23 (Fri, 24 Jul 2020 03:41:48 GMT):
Thank you for the response. It makes sense

poojagupta23 (Fri, 24 Jul 2020 04:00:40 GMT):
Thanks a lot for fixing the issue. It is working now.

poojagupta23 (Fri, 24 Jul 2020 13:03:41 GMT):
the network has come up after the fix. But when I am running the dapp script, it is throwing below error and not running.

poojagupta23 (Fri, 24 Jul 2020 13:03:42 GMT):
poojagupta@Poojas-MacBook-Air besu-sample-networks % ./run-permissioning-dapp.sh ./.common.sh: line 55: NO_LOCK_REQUIRED: unbound variable

MariusVanDerWijden (Fri, 24 Jul 2020 13:43:53 GMT):
Has joined the channel.

MariusVanDerWijden (Fri, 24 Jul 2020 13:43:53 GMT):
Hey everyone, Marius from the geth team here, I'm currently trying to get our differential fuzzing framework goevmlab up to speed for BLS-12381. I'm wondering if there is an easy way to create a binary/command that we can invoke to tests a state test against besu?

poojagupta23 (Sat, 25 Jul 2020 03:55:04 GMT):
When I am running the dapp script for permissioning network, it is throwing below error and not running. poojagupta@Poojas-MacBook-Air besu-sample-networks % ./run-permissioning-dapp.sh ./.common.sh: line 55: NO_LOCK_REQUIRED: unbound variable

koshikraj (Sat, 25 Jul 2020 06:57:09 GMT):
Hi everyone, I was just wondering if anyone has created a Python client library for eea APIs ontop of Web3.py?

shemnon (Sat, 25 Jul 2020 20:40:27 GMT):
I think the evmtool is what you are looking for... ``` ./gradlew ethereum:evmTool:installDist ./ethereum/evmtool/build/install/evmtool/bin/evm --help ```

shemnon (Sat, 25 Jul 2020 20:42:07 GMT):
although we don't currently output any data to validate executions, other tahan gas used. What sort of outputs would you need?

shemnon (Sat, 25 Jul 2020 20:42:07 GMT):
although we don't currently output any data to validate executions, other than gas used. What sort of outputs would you need?

shemnon (Sat, 25 Jul 2020 20:59:06 GMT):
Some sample invocations are here - https://github.com/hyperledger/besu/tree/master/ethereum/evmtool/src/test/benchmarks

lucassaldanha (Sun, 26 Jul 2020 21:14:55 GMT):
Hi! Could you confirm what operational system you are using?

lucassaldanha (Sun, 26 Jul 2020 21:45:14 GMT):
btw, it looks like that you can get arround this issue by adding this to the script: `NO_LOCK_REQUIRED=false` We have a PR to fix it: https://github.com/PegaSysEng/besu-sample-networks/pull/88/files

Yathish_ram (Mon, 27 Jul 2020 06:31:33 GMT):
Has joined the channel.

MariusVanDerWijden (Mon, 27 Jul 2020 07:25:20 GMT):
Thanks, yes that's what I'm looking for. We (and parity) output every step of the evm on execution and a summary (gasUsed, StateRoot,...) at the end. We're currently thinking about formulating a standard for this for interoperability.

MariusVanDerWijden (Mon, 27 Jul 2020 08:56:01 GMT):
This is our starting point btw: https://github.com/ethereum/evmlab/wiki/howto-evm

MariusVanDerWijden (Mon, 27 Jul 2020 11:45:19 GMT):
We're started working today on an EIP to make all implementations compatible which would allow for easier fuzzing

chrisdotn (Mon, 27 Jul 2020 14:23:18 GMT):
Hi, I'm trying to setup a besu node in a private subnet on AWS. However, now besu refuses to start with the error msg "valid advertisement host required" What does that mean? Is it related to the peer discovery on port 30303? Or is that something else?

lucassaldanha (Mon, 27 Jul 2020 21:27:17 GMT):
Hi Chris! Could you provide the CLI option or config file that you are using so we can better help you? More specifically, this message is related to the network interface that the node will use to listen for P2P conenctions (`--p2p-interface`). But without knowing the options that you are using I can't figure out what is wrong. Here is the reference to the docs: https://besu.hyperledger.org/en/latest/Reference/CLI/CLI-Syntax/#p2p-interface

lucassaldanha (Mon, 27 Jul 2020 21:28:10 GMT):
From a quick investigation on the code, this msg could mean that you have specified the --p2p-interface property with an invalid value.

chrisdotn (Tue, 28 Jul 2020 05:05:25 GMT):
Hi Lucas, thanks for the pointer, that solved it. Indeed my p2p-interface wasn't setup properly. I'm using the ansible role for starting and it tried to get the public IP of the node and set it. Of course, because I move to the private subnet, that didn't work anymore. Now, that's working as expected

chrisdotn (Tue, 28 Jul 2020 07:00:31 GMT):
Not sure if this is the right place to drop it: I noticed that the images on your blog post https://pegasys.tech/setting-up-hyperledger-besu-in-aws/ and https://pegasys.tech/setting-up-monitoring-for-hyperledger-besu-in-aws/ don't show.

shemnon (Tue, 28 Jul 2020 20:05:13 GMT):
@here - We're beginning the release process for hyperledger/besu, please don't merge anything to release-1.5.1 until further notice

lucassaldanha (Tue, 28 Jul 2020 21:14:41 GMT):
Awesome!

shemnon (Tue, 28 Jul 2020 22:07:33 GMT):
@here - It's now safe to merge into master for hyperledger/besu again.

timbeiko (Wed, 29 Jul 2020 21:59:13 GMT):
:tada: :besu: *Besu 1.5.1 is now available* :besu: :tada: Relase notes & download info: https://github.com/hyperledger/besu/releases/1.5.1

madelinemurray (Fri, 31 Jul 2020 00:46:01 GMT):
Thanks for raising - I've followed this up so hopefully they should be back soon!

githubckgoh1439 (Sun, 02 Aug 2020 11:34:17 GMT):
Is there any relevant documentation for besu upgrade from 1.4 to 1.5.1?TQ for update.

lakshyakumar (Mon, 03 Aug 2020 09:24:15 GMT):
Has joined the channel.

lakshyakumar (Mon, 03 Aug 2020 09:24:16 GMT):
Hi, I am setting up a besu network with IBFT and orion for production, can you point the guide to generate `eth_accounts` to be kept in `alloc` section of my production network `ibftConfigFile.json`, Thanks.

lakshyakumar (Mon, 03 Aug 2020 10:07:47 GMT):
can we use geth to generate the `eth_account`?

shemnon (Mon, 03 Aug 2020 14:52:26 GMT):
Contirbutor call in ~ 24 hours - EMEA times - https://wiki.hyperledger.org/display/BESU/2020-08-04+Contributor+Call+Agenda

shemnon (Mon, 03 Aug 2020 14:52:26 GMT):
Contributor call in ~ 24 hours - EMEA times - https://wiki.hyperledger.org/display/BESU/2020-08-04+Contributor+Call+Agenda

islarose (Mon, 03 Aug 2020 16:26:03 GMT):
Has joined the channel.

islarose (Mon, 03 Aug 2020 16:26:03 GMT):
I have a similar question

islarose (Mon, 03 Aug 2020 16:27:24 GMT):
I set up the besu-quickstart subscription in Azure public cloud. I need to figure out how to generate accounts on an ubuntu VM, and how to run an ERC 20 smart contract in the environment. Right now I am unable to generate accounts. I cannot use metamask for this. someone plz advise

islarose (Mon, 03 Aug 2020 16:33:19 GMT):
I generated two accounts using geth, but cannot "attach" them and send transactions

TerryWBC (Tue, 04 Aug 2020 07:31:50 GMT):
A quick question regarding the new onchain privacy groups https://besu.hyperledger.org/en/stable/Concepts/Privacy/Onchain-PrivacyGroups/ Can any (non participating node/user) discover every privacy group or can each node/user only find the privacy groups where they are a member?

carlosho17 (Tue, 04 Aug 2020 10:27:54 GMT):
Has joined the channel.

arash009 (Tue, 04 Aug 2020 23:30:27 GMT):
Besu does not support account management directly. You will need to use an external service to create and manage accounts. Please refer to: https://besu.hyperledger.org/en/stable/HowTo/Send-Transactions/Account-Management/

YoussefAlaa (Wed, 05 Aug 2020 17:23:16 GMT):
Hello, can i have a mobile application running a node for hyperledger-besu?, just for submitting transactions I do not need to be a mining node, any advices would be useful.

shemnon (Wed, 05 Aug 2020 17:59:16 GMT):
I am unaware of anyone who has set up a Besu node on a mobile device. Block storage looks to be a critical issue.

shemnon (Wed, 05 Aug 2020 18:00:38 GMT):
Look into web3j.io - You don't need a full node to send and receive transactions. with web3j you can create the TX on-device and use an external node (or service such as infura or bloq) to send the transacitons.

YoussefAlaa (Wed, 05 Aug 2020 18:20:21 GMT):
my usecase need to apply decentralization on mobile devices so I need them to be actual nodes, so are there any alternatives to besu which can achieve that?

lucassaldanha (Wed, 05 Aug 2020 21:32:50 GMT):
Only the members of a privacy group are aware of its existence. The smart contract that manages the privacy group lives inside the privacy group itself, so others don't have access to it.

lucassaldanha (Wed, 05 Aug 2020 21:35:53 GMT):
For security reaosons, Besu doesn't provide key management. So you need to sign your transactions externally, using a wallet or EthSigner. - https://besu.hyperledger.org/en/latest/HowTo/Send-Transactions/Account-Management/ - https://docs.ethsigner.pegasys.tech/en/latest/

arash009 (Thu, 06 Aug 2020 06:13:16 GMT):
Yes there are. I recommend looking into some of the light ethereum clients specifically designed for mobile devices.

poojagupta23 (Fri, 07 Aug 2020 02:31:09 GMT):
Hi Besu Experts, Please help me answer below questions?how to define Besu network's PKI? what's the certificate hierarchy, what's the trust chains leading to transaction signatories, what cryptographic mechanisms does Besu use for certification, digital signatures, and encryption?

Anjali9088 (Fri, 07 Aug 2020 10:31:25 GMT):
Hi everyone, Is there any restrictions in besu for contract size,amount of gas,number of transactions..etc?

timbeiko (Fri, 07 Aug 2020 18:41:26 GMT):
Hi @Anjali9088 :smile: I don't believe there are any on private networks. It will all be dependent on your block size, which you can set to be arbitrarily large. See this for an example: https://besu.hyperledger.org/en/stable/HowTo/Configure/FreeGas/#1-set-the-block-size On public networks, the limitations are set by the protocol and not Besu. The current block gas limit on mainnet is roughly 12.5 million gas and blocks happen every 13 seconds or so.

madelinemurray (Sun, 09 Aug 2020 20:44:28 GMT):
@YashShukla - not sure if you found the answers to these back when you asked but: 1) Yes :-) 2) Private transaction on PoW or Clique networks is currently an early access feature - https://besu.hyperledger.org/en/stable/Concepts/Privacy/Privacy-Overview/#reorg-compatible-privacy

arash009 (Mon, 10 Aug 2020 00:29:32 GMT):
Hi @poojagupta23 Besu supports standard Ethereum cryptography for transaction signature and validation. These can be extended further through use of permissioning to create restrictions in a private networks as required: https://besu.hyperledger.org/en/stable/Concepts/Permissioning/Permissioning-Overview/ Besu also supports TLS encryption for added security between network applications: https://besu.hyperledger.org/en/stable/Concepts/TLS/

calvin.heo (Mon, 10 Aug 2020 06:09:10 GMT):
Has joined the channel.

poojagupta23 (Mon, 10 Aug 2020 06:38:52 GMT):
Thanks for responding. I have another question for clarification. When a transaction is received by a besu node in a permissioned network, it firstly goes through the ingress contract, then the account/node rule contract and finally through the application contract? or is it first received by the application contract which then sends it through the ingress contract?

arash009 (Mon, 10 Aug 2020 06:57:53 GMT):
Yes, the current implementation of the permissioning smart contracts use a static ingress contract that does not change to then call out to specific node/account contracts that can be changed over time. These contracts then respond to specific methods to Besu that determines if a transaction or connection is allowed or not. You can refer to the EEA specification here for more information: https://entethalliance.github.io/client-spec/spec.html#sec-permissioning-smart-contract

aldoborrero (Mon, 10 Aug 2020 09:10:30 GMT):
Hi guys, without doing too much spam, we have created an Awesome Besu (https://github.com/41north/awesome-besu) repository to list awesome resources that the community has done to this client! So if you want, feel free to PR to add your plugins and/or related resources and give it a star :blush:

rai (Mon, 10 Aug 2020 14:08:43 GMT):
thanks for this! starred it.

monafinfiquaro (Mon, 10 Aug 2020 17:42:49 GMT):
Has joined the channel.

monafinfiquaro (Mon, 10 Aug 2020 17:46:03 GMT):
Hi, so recently ive been creating a web app using besu clique consensua. Everything seems fine until when i try to connect a host to the node remotely via rcp http, it wont let me connect and i am using metamask. I have set the rpc http host with my node's ip machine, is there any step i mightve missed?

shemnon (Mon, 10 Aug 2020 19:04:14 GMT):
Perhaps the host allowlist? `--host-allowlist="*"` - by default we only let in localhost and 127.0.0.1.

shemnon (Mon, 10 Aug 2020 19:04:26 GMT):
note that prior to 1.5.1 this was `--host-whitelist`

monafinfiquaro (Mon, 10 Aug 2020 22:49:38 GMT):
Thanks shemnon for the responds, unfortunately i also had that configured. The thing is, when i use the ip's machine on --rpc-http-host i cant connect from 127.0 0.1 on metamask and can only connect via the ip's machine ip on the node's but from outside it wont let me connect. If any helps, i use --permissions-nodes-config-file and --config-file when running the node.

monafinfiquaro (Mon, 10 Aug 2020 22:49:38 GMT):
Thanks shemnon for the responds, unfortunately i also had that configured. The thing is, when i use the ip's machine on --rpc-http-host i cant connect from 127.0 0.1 on metamask and can only connect via the ip's machine ip on the node's but from outside it wont let me connect. If any helps, i use --permissions-nodes-config-file-enabled and --config-file when running the node.

monafinfiquaro (Mon, 10 Aug 2020 22:58:34 GMT):
Thank you shemnon for the responds, i am currently using besu version 1.4.0 and i cannot use the new host allowlist command. Does that mean the latest use of the besu is required?

monafinfiquaro (Mon, 10 Aug 2020 22:58:34 GMT):
Thank you shemnon for the responds and pointing that out i am not aware of the updare, however i am currently using besu version 1.4.0 and i cannot use the new host allowlist command. Does that mean the latest use of the besu is required?

monafinfiquaro (Mon, 10 Aug 2020 23:14:42 GMT):
I am trying to use besu 1.5.1, but i cannot find the cli executable file. Can someone guide me through the file? Thank you in advance

arash009 (Mon, 10 Aug 2020 23:26:40 GMT):
If you are on 1.4.0 the command will be `--host-allowlist`. Use the `--help` command to get you the correct options that can be used.

shemnon (Mon, 10 Aug 2020 23:36:24 GMT):
The command for 1.4.0 is `--host-whitelist` - Also, the performance of 1.5.0 is vastly improved.

monafinfiquaro (Mon, 10 Aug 2020 23:37:02 GMT):
Thanks arash009, in besu 1.4.0 i use --host-whitelist and i still cant connect from remote connection. However i am trying on 1.5.0 and it allows me the use of --host-allowlist and --host-whitelist but it still wont accept connection outside local

monafinfiquaro (Mon, 10 Aug 2020 23:53:47 GMT):
--host-whitelist

monafinfiquaro (Mon, 10 Aug 2020 23:57:25 GMT):
Is it possible that by default, my port got blocked (i checked netstat -an the port 8545 is listening on 0.0.0.0 ) or there is some configuration before i can connect from remote in besu?

monafinfiquaro (Mon, 10 Aug 2020 23:57:25 GMT):
So a little update, i can connect with the same subnetwork but when i use different network (mobile hotspot) it wont connect to the node so i am not sure if besu requires any configuration for this

monafinfiquaro (Tue, 11 Aug 2020 04:05:26 GMT):
So a little update, i can connect with the same subnetwork but when i use different network (mobile hotspot) it wont connect to the node so it is not a host problem and i am not sure if besu requires any configuration for this

arash009 (Tue, 11 Aug 2020 04:08:25 GMT):
Can you check the Besu logs to determine the exact error?

monafinfiquaro (Tue, 11 Aug 2020 07:43:22 GMT):
How can i check the logging?is there any additinional configuration for logging?

monafinfiquaro (Tue, 11 Aug 2020 08:05:36 GMT):
I see nothing on the log, theres only log about the communication between node. Do i need to enable rpc logging configuration?

monafinfiquaro (Tue, 11 Aug 2020 08:05:36 GMT):
I see nothing on the log, theres only log about the communication between node. Is there configuration for rpc logging?

shemnon (Tue, 11 Aug 2020 15:54:30 GMT):
Does your network have a firewall? If it's a residential network try `--nat-method=upnp` - which will ask the residential router to open up an external port. The address will be different and based on your residential router's WAN interface.

sandJohnson (Tue, 11 Aug 2020 21:34:34 GMT):
Has joined the channel.

shantaraam (Wed, 12 Aug 2020 13:45:06 GMT):
Has joined the channel.

shantaraam (Wed, 12 Aug 2020 13:45:07 GMT):
Hi, Had a query related to migration of Besu/Orion combo from (1.2.5/1.4.0) to (1.5.0/1.6.0), when there are no private transactions. Was looking at https://wiki.hyperledger.org/display/BESU/Critical+Issue+for+Privacy+Users which says there shouldn't be any issues if there are no private transaction. But besu nodes fails to startup after the upgrade and runs into org.rocksdb.RocksDBException: You have to open all column families. Column families not opened: �, �, �, �, �

rjones (Wed, 12 Aug 2020 19:19:56 GMT):
Has joined the channel.

rjones (Wed, 12 Aug 2020 19:19:56 GMT):
@besu-

rjones (Wed, 12 Aug 2020 19:19:56 GMT):
@besu-bot

rjones (Wed, 12 Aug 2020 19:20:30 GMT):
User User_1 added by rjones.

rjones (Wed, 12 Aug 2020 20:07:16 GMT):
ping

lucassaldanha (Wed, 12 Aug 2020 20:18:56 GMT):
Hi Shantaram. Let me try to help you out. Could you confirm the Besu and Orion versions that you are migrating from/to? Also, if you could share the whole startup logs it can help us trace this problem. Cheers!

lucassaldanha (Wed, 12 Aug 2020 20:18:56 GMT):
Hi Shantaram. Let me try to help you out. Could you share the whole startup logs it can help us trace this problem. Cheers!

lucassaldanha (Wed, 12 Aug 2020 20:20:16 GMT):
Also, if you don't have private transactions to migrate. You could try to start with a new database and re-sync with the network.

shantaraam (Wed, 12 Aug 2020 20:21:35 GMT):
Thanks Lucas. Was trying to confirm the behaviour. it works if i delete /database/private folder

lucassaldanha (Wed, 12 Aug 2020 20:22:27 GMT):
Yeah, I don't understand why it would fail if we don't have private txs. I'm interested in the logs to see if I can understand what might be going on.

shantaraam (Wed, 12 Aug 2020 20:22:53 GMT):
``` ```

shantaraam (Wed, 12 Aug 2020 20:23:08 GMT):
``` Setting logging level to INFO 2020-08-10 19:47:17.247+00:00 | main | INFO | AltBN128PairingPrecompiledContract | Using native alt bn128 2020-08-10 19:47:18.130+00:00 | main | INFO | SECP256K1 | Using native secp256k1 2020-08-10 19:47:18.134+00:00 | main | INFO | Besu | Starting Besu version: besu/v1.5.0/linux-x86_64/openj9-java-11 2020-08-10 19:47:18.555+00:00 | main | WARN | Besu | --min-gas-price has been ignored because --miner-enabled was not defined on the command line. 2020-08-10 19:47:18.723+00:00 | main | WARN | Besu | Permissions are disabled. Cannot enable PERM APIs when not using Permissions. 2020-08-10 19:47:18.837+00:00 | main | INFO | Besu | Connecting to 2 static nodes. 2020-08-10 19:47:18.843+00:00 | main | INFO | Besu | Security Module: localfile 2020-08-10 19:47:18.961+00:00 | main | INFO | KeyPairUtil | Loaded public key 0x2f235770795262f505dfc60d2a678ba63566a2e5479d75f19602a29275fb1934334ef90121bba779af7a303a29c9970dbba90a7a318321b408841003e565e4d0 from /qdata_decrypted/ethereum/nodekey 2020-08-10 19:47:18.980+00:00 | main | INFO | DatabaseMetadata | Lookup database metadata file in data directory: /qdata/ethereum 2020-08-10 19:47:18.986+00:00 | main | INFO | RocksDBKeyValuePrivacyStorageFactory | Existing private database detected at /qdata/ethereum. Version 0 2020-08-10 19:47:18.986+00:00 | main | INFO | DatabaseMetadata | Lookup database metadata file in data directory: /qdata/ethereum 2020-08-10 19:47:18.986+00:00 | main | INFO | RocksDBKeyValueStorageFactory | Existing database detected at /qdata/ethereum. Version 0 org.rocksdb.RocksDBException: You have to open all column families. Column families not opened: , , , , ```

jagpreet (Thu, 13 Aug 2020 12:56:43 GMT):
Has left the channel.

shantaraam (Thu, 13 Aug 2020 13:21:13 GMT):
Let me know when you have a update on this one or need any more information

monafinfiquaro (Thu, 13 Aug 2020 15:51:26 GMT):
`--nat-method=upnp`

monafinfiquaro (Thu, 13 Aug 2020 15:51:26 GMT):
``` etrieveRemoteDescriptors | Device descriptor retrieval failed, no response ```

monafinfiquaro (Thu, 13 Aug 2020 15:51:26 GMT):
``` RetrieveRemoteDescriptors | Device descriptor retrieval failed, no response ```

monafinfiquaro (Thu, 13 Aug 2020 15:51:26 GMT):
``` jupnp-12 | WARN | RetrieveRemoteDescriptors | Device descriptor retrieval failed, no response: ```

monafinfiquaro (Thu, 13 Aug 2020 15:51:26 GMT):
```jupnp-12 | WARN | RetrieveRemoteDescriptors | Device descriptor retrieval failed, no response: ```

monafinfiquaro (Thu, 13 Aug 2020 16:03:21 GMT):
it never gets any response from the default gateway, is this behavior caused by the network administrator disabled upnp?

monafinfiquaro (Thu, 13 Aug 2020 16:03:21 GMT):
it never gets any response from the default gateway, is this behavior caused by the network administrator disabled upnp? By the way I am using campus network

timbeiko (Thu, 13 Aug 2020 22:30:54 GMT):
:besu: Besu 1.5.2 is now available :besu: Release notes & download link: https://github.com/hyperledger/besu/releases/1.5.2 Highlights :stars: * A new (experimental!) state backup and restore option * Better ethstats support

timbeiko (Thu, 13 Aug 2020 22:30:54 GMT):
:besu: Besu 1.5.2 is now available :besu: Release notes & download link: https://github.com/hyperledger/besu/releases/1.5.2 Highlights :stars: * A new (early access!) state backup and restore option * Better ethstats support

deployer21 (Sun, 16 Aug 2020 16:58:57 GMT):
Has left the channel.

Anjali9088 (Tue, 18 Aug 2020 03:58:46 GMT):
Hi Besu Experts, can you please justify what are each of the term in the following which is got when besu starts minging...like what does this (0.0%)gas indicates?....what is the 0 om? And also what about the pool and thread?...etc 2020-08-17 09:27:42.715+05:30 | pool-9-thread-2 | INFO | BlockMiner | Produced and imported block #38 / 1 tx / 0 om / 786,506 (0.0%) gas / (0xb16bab907d361ebd67ca2cb91366cc78502591d327c6c87aa34762f1781ebf1f) in 0.714s 2020-08-17 09:27:43.155+05:30 | pool-9-thread-1 | INFO | BlockMiner | Produced and imported block #39 / 0 tx / 0 om / 0 (0.0%) gas / (0x4040c062377d3e8b0f6ec3871493af27a2ee71cae9a4bfc55d63a7942447ecd3) in 0.154s

bmg (Tue, 18 Aug 2020 08:18:37 GMT):
0 om means 0 ommers. Ommers is another term for uncles, this indicates there are no uncle blocks associated with the newly mined block.

bmg (Tue, 18 Aug 2020 08:20:22 GMT):
The pool and thread numbers indicate the thread being used to execute with and the thread pool to which it's associated. This is an internal implementation detail that isn't really that important

bmg (Tue, 18 Aug 2020 08:21:17 GMT):
The gas measurement indicates the amount of gas used by all the transactions within a block. I'm not sure what the % indicates though.

bmg (Tue, 18 Aug 2020 08:21:23 GMT):
@Anjali9088 hope that helps

Anjali9088 (Tue, 18 Aug 2020 08:55:22 GMT):
:thumbsup:

shemnon (Tue, 18 Aug 2020 12:51:01 GMT):
The % is what # of the block limit of gas is being used.

shemnon (Tue, 18 Aug 2020 12:51:01 GMT):
The % is what amount of the block limit of gas is being used.

LeonYangLi (Wed, 19 Aug 2020 13:48:56 GMT):
Has joined the channel.

LeonYangLi (Wed, 19 Aug 2020 13:48:57 GMT):
I want to send transation through web3.js.

LeonYangLi (Wed, 19 Aug 2020 13:48:57 GMT):
I want to send transation through web3.js and I use the besu-sample-networks. I use `curl -X POST --data '{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":1}' localhost:8545` to get the chainid is 0x7e2. Then I use web3.js to get the data 'const Web3 = require('web3') const web3 = new Web3('http://127.0.0.1:8545') var Tx = require('ethereumjs-tx').Transaction web3.eth.getBalance('0x627306090abaB3A6e1400e9345bC60c78a8BEf57', (err, wei) => { balance = web3.utils.fromWei(wei, 'ether')}) const account1 = '0x627306090abaB3A6e1400e9345bC60c78a8BEf57' const privateKey1 = Buffer.from('c87509a1c067bbde78beb793e6fa76530b6382a4c0241e5e4a9ec0a0f44dc0d3','hex') const account2 = '0xFE3B557E8Fb62b89F4916B721be55cEb828dBd73' web3.eth.getBalance(account1, (err, result) => { console.log(result)}) //web3.eth.sendTransaction({ from: account1, to: account2, value: web3.utils.toWei('1.27', 'ether')}) web3.eth.getTransactionCount(account1,(err, txCount) => { // 创建交易 const txObject = { nonce: web3.utils.toHex(txCount), chainId: "0x7e2", to: account2, value: web3.utils.toHex(web3.utils.toWei('1.27','ether')), gasLimit: web3.utils.toHex(2100), gasPrice: web3.utils.toHex(web3.utils.toWei('10','gwei')), } console.log(txObject) const tx = new Tx(txObject) tx.sign(privateKey1) const serializedTransaction = tx.serialize() const raw = '0x' + serializedTransaction.toString('hex') console.log('raw:', raw) // web3.eth.sendRawTransaction(serializedTx.toString('hex'), function(err, hash) { // console.log('Error:', err); // console.log('Hash:', hash); // }); })' Then I get the params:

LeonYangLi (Wed, 19 Aug 2020 13:48:57 GMT):
I want to send transation through web3.js and I use the besu-sample-networks. I use `curl -X POST --data '{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":1}' localhost:8545` to get the chainid is 0x7e2. Then I use web3.js to get the data `const Web3 = require('web3') const web3 = new Web3('http://127.0.0.1:8545') var Tx = require('ethereumjs-tx').Transaction web3.eth.getBalance('0x627306090abaB3A6e1400e9345bC60c78a8BEf57', (err, wei) => { balance = web3.utils.fromWei(wei, 'ether')}) const account1 = '0x627306090abaB3A6e1400e9345bC60c78a8BEf57' const privateKey1 = Buffer.from('c87509a1c067bbde78beb793e6fa76530b6382a4c0241e5e4a9ec0a0f44dc0d3','hex') const account2 = '0xFE3B557E8Fb62b89F4916B721be55cEb828dBd73' web3.eth.getBalance(account1, (err, result) => { console.log(result)}) //web3.eth.sendTransaction({ from: account1, to: account2, value: web3.utils.toWei('1.27', 'ether')}) web3.eth.getTransactionCount(account1,(err, txCount) => { const txObject = { nonce: web3.utils.toHex(txCount), chainId: "0x7e2", to: account2, value: web3.utils.toHex(web3.utils.toWei('1.27','ether')), gasLimit: web3.utils.toHex(2100), gasPrice: web3.utils.toHex(web3.utils.toWei('10','gwei')), } console.log(txObject) const tx = new Tx(txObject) tx.sign(privateKey1) const serializedTransaction = tx.serialize() const raw = '0x' + serializedTransaction.toString('hex') console.log('raw:', raw) })` Then I get the params: ["0xf86c048502540be40082083494fe3b557e8fb62b89f4916b721be55ceb828dbd7388119ff24570bf00008026a03958bd8ac5df893136bbe69c11e3fb0aa97bd2a218b4136535860958287c34aaa01813ed11b749646a456507e66f103734acc31df4e03ebb08c37d933f11acf0d3 89567992250999979000000 "] I use `curl -X POST --data '{"jsonrpc":"2.0","method":"eth_sendRawTransaction","params":["0xf86c048502540be40082083494fe3b557e8fb62b89f4916b721be55ceb828dbd7388119ff24570bf00008026a03958bd8ac5df893136bbe69c11e3fb0aa97bd2a218b4136535860958287c34aaa01813ed11b749646a456507e66f103734acc31df4e03ebb08c37d933f11acf0d3"],"id":1}' http://127.0.0.1:8545` But I got wrong result: `{ "jsonrpc" : "2.0", "id" : 1, "error" : { "code" : -32000, "message" : "Wrong chainId" } }` How can I use eth_sendRawTransaction?

LeonYangLi (Wed, 19 Aug 2020 13:48:57 GMT):
I want to send transation through web3.js and I use the besu-sample-networks. I use `curl -X POST --data '{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":1}' localhost:8545` to get the chainid is 0x7e2. { "jsonrpc" : "2.0", "id" : 1, "result" : "0x7e2" } Then I use web3.js to get the data `const Web3 = require('web3') const web3 = new Web3('http://127.0.0.1:8545') var Tx = require('ethereumjs-tx').Transaction web3.eth.getBalance('0x627306090abaB3A6e1400e9345bC60c78a8BEf57', (err, wei) => { balance = web3.utils.fromWei(wei, 'ether')}) const account1 = '0x627306090abaB3A6e1400e9345bC60c78a8BEf57' const privateKey1 = Buffer.from('c87509a1c067bbde78beb793e6fa76530b6382a4c0241e5e4a9ec0a0f44dc0d3','hex') const account2 = '0xFE3B557E8Fb62b89F4916B721be55cEb828dBd73' web3.eth.getBalance(account1, (err, result) => { console.log(result)}) //web3.eth.sendTransaction({ from: account1, to: account2, value: web3.utils.toWei('1.27', 'ether')}) web3.eth.getTransactionCount(account1,(err, txCount) => { const txObject = { nonce: web3.utils.toHex(txCount), chainId: "0x7e2", to: account2, value: web3.utils.toHex(web3.utils.toWei('1.27','ether')), gasLimit: web3.utils.toHex(2100), gasPrice: web3.utils.toHex(web3.utils.toWei('10','gwei')), } console.log(txObject) const tx = new Tx(txObject) tx.sign(privateKey1) const serializedTransaction = tx.serialize() const raw = '0x' + serializedTransaction.toString('hex') console.log('raw:', raw) })` Then I get the params: ["0xf86c048502540be40082083494fe3b557e8fb62b89f4916b721be55ceb828dbd7388119ff24570bf00008026a03958bd8ac5df893136bbe69c11e3fb0aa97bd2a218b4136535860958287c34aaa01813ed11b749646a456507e66f103734acc31df4e03ebb08c37d933f11acf0d3 89567992250999979000000 "] I use `curl -X POST --data '{"jsonrpc":"2.0","method":"eth_sendRawTransaction","params":["0xf86c048502540be40082083494fe3b557e8fb62b89f4916b721be55ceb828dbd7388119ff24570bf00008026a03958bd8ac5df893136bbe69c11e3fb0aa97bd2a218b4136535860958287c34aaa01813ed11b749646a456507e66f103734acc31df4e03ebb08c37d933f11acf0d3"],"id":1}' http://127.0.0.1:8545` But I got wrong result: `{ "jsonrpc" : "2.0", "id" : 1, "error" : { "code" : -32000, "message" : "Wrong chainId" } }` How can I use eth_sendRawTransaction?

shemnon (Wed, 19 Aug 2020 14:50:46 GMT):
I'm not familiar with web3.js, but somehow the generated RLP has a chainId of 1. So the javascript code is in error, although I don't know how.

davidwboswell (Wed, 19 Aug 2020 21:49:17 GMT):
Has joined the channel.

LeonYangLi (Thu, 20 Aug 2020 02:55:01 GMT):
I want to keep sending transactions in BESU to test transaction performance. Is there any easy way? I use sendRawtransaction but get a wrong chainid error, and I don't know how to modify it.

shemnon (Thu, 20 Aug 2020 03:22:35 GMT):
The web3.js community forums are here - https://gitter.im/ethereum/web3.js

LeonYangLi (Thu, 20 Aug 2020 04:21:43 GMT):
Finde the solution: https://besu.hyperledger.org/en/1.4.0-beta2/HowTo/Develop-Dapps/Use-web3js/

e-nikolov (Thu, 20 Aug 2020 16:30:54 GMT):
Hello, I have a question about besu with IBFT2 an orion. I found some examples: https://github.com/PegaSysEng/besu-sample-networks/blob/master/docker-compose_privacy_poa.yml https://github.com/PegaSysEng/besu-kubernetes/tree/master/kubectl/ibft2-with-privacy and in both the orion services are attached to besu nodes that aren't validators. Is there a reason for that? Would there be issues if I attach orion services to validating besu nodes?

e-nikolov (Thu, 20 Aug 2020 16:30:54 GMT):
Hello, I have a question about besu with IBFT2 and orion. I found some examples: https://github.com/PegaSysEng/besu-sample-networks/blob/master/docker-compose_privacy_poa.yml https://github.com/PegaSysEng/besu-kubernetes/tree/master/kubectl/ibft2-with-privacy and in both the orion services are attached to besu nodes that aren't validators. Is there a reason for that? Would there be issues if I attach orion services to validating besu nodes?

arash009 (Fri, 21 Aug 2020 01:54:39 GMT):
Hi. The general network topology recommended are that your validator nodes are seperate to your RPC nodes with user access that you submit transactions through, so the examples reflect that. However there is no reason why you cant have Orion working with a validator node instead.

jcldnatv (Sat, 22 Aug 2020 17:22:57 GMT):
Has joined the channel.

Helium (Mon, 24 Aug 2020 02:43:17 GMT):
Has joined the channel.

Helium (Mon, 24 Aug 2020 02:43:17 GMT):
is there support for web3py in besu?? because i was able to connect to besu node using web3py but couldn't get it to deploy smart contract

shemnon (Mon, 24 Aug 2020 03:32:20 GMT):
you are probably hitting this: https://web3py.readthedocs.io/en/latest/middleware.html#geth-style-proof-of-authority - Where it says Geth it actually applies to all PoA consensus, Clique, IBFT, IBFT2, etc.

shemnon (Mon, 24 Aug 2020 03:32:20 GMT):
you are probably hitting this: https://web3py.readthedocs.io/en/latest/middleware.html#geth-style-proof-of-authority - Where it says Geth it actually applies to all PoA consensus engines: Clique, IBFT, IBFT2, etc.

jbtwist (Tue, 25 Aug 2020 09:35:27 GMT):
Has joined the channel.

jbtwist (Tue, 25 Aug 2020 09:35:27 GMT):
Hi, I would like to ask if you know some real use cases for Besu

charyorde (Tue, 25 Aug 2020 14:29:11 GMT):
Has joined the channel.

charyorde (Tue, 25 Aug 2020 14:30:56 GMT):
One question, Besu is an alternative to fabric EVM?

grace.hartley (Tue, 25 Aug 2020 15:13:18 GMT):
Hi there! Thanks for the question! Because Besu is use case agnostic, you can build whatever blockchain application you want on top of Besu. A few live examples of use cases using Besu are LACChain, ZarX, Public Mint, and LiquidShare.

charyorde (Tue, 25 Aug 2020 15:16:02 GMT):
Good for running private nodes on Ethereum network?

charyorde (Tue, 25 Aug 2020 15:16:03 GMT):
Can Besu with used with Fabric EVM?

VijayMichalik (Tue, 25 Aug 2020 17:18:46 GMT):
Yep, that's one of the primary use cases for Besu! Check out the documentation for it here: https://besu.hyperledger.org/en/stable/Tutorials/Private-Network/Create-IBFT-Network/

VijayMichalik (Tue, 25 Aug 2020 17:21:04 GMT):
The Fabric EVM project relies on Burrow's modular EVM implementation, so I don't think it would be an easy project to port over to using Besu. Please reach out if its something you're interested in!

charyorde (Tue, 25 Aug 2020 18:16:53 GMT):
Thanks @VijayMichalik

charyorde (Tue, 25 Aug 2020 18:16:57 GMT):
How can I help?

charyorde (Tue, 25 Aug 2020 18:22:23 GMT):
What's the easiest path to interoperability with Besu from Fabric, considering we're already vested in Fabric EVM.

shemnon (Tue, 25 Aug 2020 18:49:33 GMT):
One thing to look into is the EvmTool we are using for fuzz testing. It can calculate state transitions from a CLI interface. While not directly portable to Burrow's interface I think there is room to create a stand alone EVM evaluator that can be made stateful across requests.

BharadwajVaranasi (Wed, 26 Aug 2020 05:05:14 GMT):
Has joined the channel.

BharadwajVaranasi (Wed, 26 Aug 2020 05:05:14 GMT):
Hi guys

BharadwajVaranasi (Wed, 26 Aug 2020 05:05:22 GMT):
I am new member

BharadwajVaranasi (Wed, 26 Aug 2020 05:05:27 GMT):
Can we use web.js apis to connect to the consortium networks of Hyperledger Besu ?

BharadwajVaranasi (Wed, 26 Aug 2020 05:06:01 GMT):
I tried and failed and posted this yesterday in stack exchange

ravinayag (Wed, 26 Aug 2020 12:24:47 GMT):
Has joined the channel.

ravinayag (Wed, 26 Aug 2020 13:42:10 GMT):
Hello besu world, Im new to besu network.

ravinayag (Wed, 26 Aug 2020 13:43:46 GMT):
im learning besu from this https://learn.consensys.net portal.

ravinayag (Wed, 26 Aug 2020 13:46:18 GMT):
I stuck here at besu --version. and get this mesg

ravinayag (Wed, 26 Aug 2020 13:46:19 GMT):
ravi@ubuntu:~/besu/besu-1.4.0$ bin/besu --version Unrecognized option: --add-opens Error: Could not create the Java Virtual Machine. Error: A fatal exception has occurred. Program will exit. ravi@ubuntu:~/besu/besu-1.4.0/bin$ java -version openjdk version "1.8.0_232" OpenJDK Runtime Environment (build 1.8.0_232-8u232-b09-0ubuntu1~16.04.1-b09) OpenJDK 64-Bit Server VM (build 25.232-b09, mixed mode)

ravinayag (Wed, 26 Aug 2020 13:47:04 GMT):
is anything to do with syntax.. ? i dont know where im missing..

poojagupta23 (Wed, 26 Aug 2020 13:53:13 GMT):
Hi Besu Experts, I am running besu permissionning network. I have cloned "https://github.com/PegaSysEng/besu-sample-networks". When I ran the script ./run-permissioning.sh, all the nodes have come up but the peers count for each of them is showing 0. Is something broken?

shemnon (Wed, 26 Aug 2020 14:29:56 GMT):
Besu requires Java 11. This is an expected failure when being run on Java 8.

shemnon (Wed, 26 Aug 2020 14:31:01 GMT):
Ubuntu 18.04 instructions on how to install Java 11 - https://tecadmin.net/install-oracle-java-11-on-ubuntu-16-04-xenial/

shemnon (Wed, 26 Aug 2020 14:33:59 GMT):
I'm not sure any of the maintainers are on Stack Exchange. Can you re-post the question?

rjones (Wed, 26 Aug 2020 14:53:13 GMT):
[This one](https://ethereum.stackexchange.com/questions/86904/i-could-not-use-web3-js-module-and-perform-getaccounts-etc-for-consortium-netwo), I think

ravinayag (Wed, 26 Aug 2020 15:50:49 GMT):
yes, I upgraded to java11 and the error gone. Thank you..

poojagupta23 (Thu, 27 Aug 2020 01:53:17 GMT):
Dear all, I have deployed my smart contract on the besu permissioned network. I want to interact it using truffle console. But I am getting below error. Please help how to resolve it? poojagupta@Poojas-MacBook-Air permissioning-smart-contracts % truffle console --network development Error: Mnemonic invalid or undefined at /Users/poojagupta/Desktop/world_wire/besu-sample-networks/permissioning-smart-contracts/node_modules/truffle-hdwallet-provider/dist/webpack:/truffle-hdwallet-provider/src/index.js:60:1 at new checkBIP39Mnemonic (/Users/poojagupta/Desktop/world_wire/besu-sample-networks/permissioning-smart-contracts/node_modules/truffle-hdwal

poojagupta23 (Thu, 27 Aug 2020 01:53:17 GMT):
Dear all, I have deployed my smart contract on the besu permissioned network. I want to interact with it using truffle console. But I am getting below error. Please help how to resolve it? poojagupta@Poojas-MacBook-Air permissioning-smart-contracts % truffle console --network development Error: Mnemonic invalid or undefined at /Users/poojagupta/Desktop/world_wire/besu-sample-networks/permissioning-smart-contracts/node_modules/truffle-hdwallet-provider/dist/webpack:/truffle-hdwallet-provider/src/index.js:60:1 at new checkBIP39Mnemonic (/Users/poojagupta/Desktop/world_wire/besu-sample-networks/permissioning-smart-contracts/node_modules/truffle-hdwal

valesken (Thu, 27 Aug 2020 17:02:01 GMT):
Has joined the channel.

timbeiko (Thu, 27 Aug 2020 20:12:28 GMT):
:partying_face: :besu: *Besu 1.5.3 is now available* :besu: :partying_face: Release notes & download link: https://github.com/hyperledger/besu/releases/1.5.3 *Highlights* :star2: - A long-standing known issue using permissioning with Kubernetes is now fixed :tada: - Early access DNS support :calling: - Updates to Onchain Privacy Group Management :man_detective_light_skin_tone:

RafaelAPB (Fri, 28 Aug 2020 12:31:33 GMT):
Has left the channel.

RamkumarVenkataraman (Sat, 29 Aug 2020 12:11:47 GMT):
Has joined the channel.

RamkumarVenkataraman (Sat, 29 Aug 2020 12:11:47 GMT):
Hi Besu devs, I am a newbie to Besu and blockchain in general. A couple of questions/design suggestions I need your advice on: We want to create a dapp on top of Besu with focus on privacy in the chain. Our system needs to have a UI, smart contracts that will be called from the UI, backend to generate signatures and a caching layer that caches the blockchain transactions. Our initial version was built on top of Quorum (without privacy) and the caching layer loops through the transactions in the chain and caches it in a DB. Now we wnat to add privacy to the data in the chain. 1. Correct my understanding if I am wrong: I can call eea_sendRawTransaction to send the transaction payload and the group ID to besu, which stores it in Orion and distributes it to the orion nodes of the participants that are involved in the private transaction. 2. For us, there are no participants or a consortium, but just different users in the system having different permissions. So for every combination of permission set I need to have, I should be creating a separate privacy group right? 3. If the above is true, I should also be deploying separate besu and orion nodes for each unique permission set I have (multiple users in our system can have the same permission set). I am ignoring multi-tenency because we need to use onchain privacy groups since group members will be modified over time 4. Now the crux: how do we make the caching system work? If the system reads the transactions in the chain, it only gets the marker transactions. So there is no way to get the private transaction from the marker? Or is there a way to read the private transactions from orion given the enclave key/private transaction hash? 5. Another requirement is to add validations to the private transactions in the chain? Our existing solution validates it in the contract (which the UI will send the data to) and writes it to the chain if valid. But in besu privacy mode, we cannot add validations before we write to Orion. So this means we need to add the validation in the private transaction processor (I am assuming that it will be a smart contract in itself, but then I am not sure what is a precompiled contract then! Maybe we can add the validation in the precompiled contract and update the private world state only if the transaction is valid?)

RamkumarVenkataraman (Sat, 29 Aug 2020 12:11:47 GMT):
Hi Besu devs, I am a newbie to Besu and blockchain in general. A couple of questions/design suggestions I need your advice on: We want to create a dapp on top of Besu with focus on privacy in the chain. Our system needs to have a UI, smart contracts that will be called from the UI, backend to generate signatures and a caching layer that caches the blockchain transactions. Our initial version was built on top of Quorum (without privacy) and the caching layer loops through the transactions in the chain and caches it in a DB. Now we want to add privacy to the data in the chain. 1. Correct my understanding if I am wrong: I can call eea_sendRawTransaction to send the transaction payload and the group ID to besu, which stores it in Orion and distributes it to the orion nodes of the participants that are involved in the private transaction. 2. For us, there are no participants or a consortium, but just different users in the system having different permissions. So for every combination of permission set I need to have, I should be creating a separate privacy group right? 3. If the above is true, I should also be deploying separate besu and orion nodes for each unique permission set I have (multiple users in our system can have the same permission set). I am ignoring multi-tenency because we need to use onchain privacy groups since group members will be modified over time 4. Now the crux: how do we make the caching system work? If the system reads the transactions in the chain, it only gets the marker transactions. So there is no way to get the private transaction from the marker? Or is there a way to read the private transactions from orion given the enclave key/private transaction hash? 5. Another requirement is to add validations to the private transactions in the chain? Our existing solution validates it in the contract (which the UI will send the data to) and writes it to the chain if valid. But in besu privacy mode, we cannot add validations before we write to Orion. So this means we need to add the validation in the private transaction processor (I am assuming that it will be a smart contract in itself, but then I am not sure what is a precompiled contract then! Maybe we can add the validation in the precompiled contract and update the private world state only if the transaction is valid?)

GregTheGreek (Sat, 29 Aug 2020 17:37:39 GMT):
Hey so i was browsing the roadmap, https://wiki.hyperledger.org/display/BESU/Roadmap, which is a bit out of date. I'm curious where the status of IBFT is right now? I saw this "Enhancing support for block rewards and transaction fees in gas-charged networks." as an upcoming feature, but wondering if it is already implemented?

GregTheGreek (Sat, 29 Aug 2020 17:40:33 GMT):
I heard @trent.mohay may have an answer :)

shemnon (Sat, 29 Aug 2020 19:13:31 GMT):
The roadmap you referenced is actually the current one and is up to date (updated 28 Aug, yesterday) since 1.6 is the next release in Octoberish (I don't have my calendar ready.)

shemnon (Sat, 29 Aug 2020 19:13:31 GMT):
The roadmap you referenced is actually the current one and is up to date (updated 28 Aug, yesterday) since 1.6 is the next release in Octoberish (I don't have my calendar handy.)

shemnon (Sat, 29 Aug 2020 19:18:05 GMT):
Apart from the gas fee improvements IBFT is awaiting consensus from EEA as to what the next version should include. The EEA BFT Task force hasn't released anything yet, their work is currently EEA members only access. (https://entethalliance.org/participate/working_groups/)

shemnon (Sat, 29 Aug 2020 19:21:13 GMT):
My understanding is that the reward is not TX execution but block production related. Currently miners get gas rewards but there is no block reward, and because it's BFT I don't think it's as simple as handing over a block reward to the block producer.

shemnon (Sat, 29 Aug 2020 19:22:24 GMT):
There is a Besu Contributor Call on tuesday, but the contributors who focus on consensus tend to call in tot he APAC calls, which the next one is in 3 weeks.

shemnon (Sat, 29 Aug 2020 19:22:24 GMT):
There is a Besu Contributor Call on Tuesday, but the contributors who focus on consensus tend to call in to the APAC calls, which the next one is in 3 weeks.

GregTheGreek (Sun, 30 Aug 2020 11:27:41 GMT):
hmm ok thanks @shemnon - so if I understand correctly their currently is no reward for a non-clique style PoA in Besu?

shemnon (Sun, 30 Aug 2020 16:53:52 GMT):
correct. IBFT networks rely on off-network (support contract) and/or intrinsic incentives (I have to validate if I want to participate)

shemnon (Sun, 30 Aug 2020 16:53:52 GMT):
correct. IBFT networks currently rely on off-network (support contract) and/or intrinsic incentives (I have to validate if I want to participate). There is no cryptoeconomic incentive.

lucassaldanha (Sun, 30 Aug 2020 22:08:53 GMT):
Hi, let me try to answer your questions :)

lucassaldanha (Sun, 30 Aug 2020 22:20:45 GMT):
1. Correct, you specify the privacyGroupId and it will be distributed to the participant nodes.

lucassaldanha (Sun, 30 Aug 2020 22:20:50 GMT):
2. What defines a user in your system? Besu privacy is based on the concept of participant nodes (identified by their Orion public key). So transactions are sent to a privacyGroup that represented a group of nodes that will have access to the private transaction.

lucassaldanha (Sun, 30 Aug 2020 22:20:55 GMT):
3. I'm not sure I understand this part of the question. Maybe if you share a bit more about what makes a user in your system and some use cases I might be able to help.

lucassaldanha (Sun, 30 Aug 2020 22:21:04 GMT):
4. You can read the private transaction from Orion using the payloadKey. However, you'd need to have some kind of protection layer to ensure that only participants allowed to read the transaction can call the api (maybe mapping your concept of users to Orion keys). Besu also exposes an api for reading private transactions, assuming the node is a participant (priv_getPrivateTransaction and priv_getTransactionReceipt). So your caching layer could use those apis. Just be aware that once the caching layer reads the information, it needs to ensure only the right participants have access to it.

lucassaldanha (Sun, 30 Aug 2020 22:21:15 GMT):
5. I'm not sure if I understood this part. You want to validate a private transaction based on what? If you have a smart contract that does the validation for you, you can deploy the contract in the privacy group and use the same logic. You'll need to deploy one validator contract per privacy group because there is no shared information between privacy groups. Also, if you need some sort of global information for validation (that applies to all groups), you can have the information in a public smart contract, and your private validator contract can read that information (private contracts can read information from the public state).

lucassaldanha (Sun, 30 Aug 2020 22:21:25 GMT):
I hope these answers help you a bit. Let me know if you have any further questions!

RamkumarVenkataraman (Mon, 31 Aug 2020 03:06:26 GMT):
Thanks @lucassaldanha for the answers. I have much better clarity now than before.

RamkumarVenkataraman (Mon, 31 Aug 2020 03:06:26 GMT):
Thanks @lucassaldanha for the answers. I have much better clarity now than before :pray:

RamkumarVenkataraman (Mon, 31 Aug 2020 03:09:22 GMT):
So the project scope is like this: a big bank that is there worldwide wants us to build a blockchain system that has utmost requirements for privacy on the chain. The blockchain nodes will be spawned by the bank. However, there will be employees in the bank and external clients of the bank, who would use the system and the chain. So the requirement for privacy on the chain. Users of the system will be employees in the bank and potential external clients (who cannot spawn nodes but can read off the chain and potentially use it alongside ZK proofs to show off their credibility etc.)

RamkumarVenkataraman (Mon, 31 Aug 2020 03:09:22 GMT):
So the project scope is like this: a big bank that is there worldwide wants us to build a blockchain system that has utmost requirements for privacy on the chain. The blockchain nodes will be spawned by the bank. However, there will be employees in the bank and external clients of the bank, who would use the system and the chain. So the requirement for privacy on the chain. Users of the system will be employees in the bank and potential external clients (who cannot spawn nodes on their own but can read off the chain and potentially use it alongside ZK proofs to show off their credibility etc.). The bank can spawn a node for the external clients and give them the keys.

RamkumarVenkataraman (Mon, 31 Aug 2020 03:09:22 GMT):
So the project scope is like this: a big bank that is there worldwide wants us to build a blockchain system that has utmost requirements for privacy on the chain. The blockchain nodes will be spawned by the bank. However, there will be employees in the bank and external clients of the bank, who would use the system and the chain. So the requirement for privacy on the chain. Users of the system will be employees in the bank and potential external clients (who cannot spawn nodes on their own but can read off the chain and potentially use it alongside ZK proofs to show off their credibility etc. - this part is still hazy at this point though, but whats clear is the bank has 100% control on if and when to spawn a besu node for each client) Also on securing the caching layer: yes we will have a separate security mechanism for this and make sure only the users with the right permissions can use it

RamkumarVenkataraman (Mon, 31 Aug 2020 03:09:22 GMT):
So the project scope is like this: a big (international) bank wants us to build a blockchain system that has utmost requirements for privacy on the chain. The blockchain nodes will be spawned by the bank. However, there will be employees in the bank and external clients of the bank, who would use the system and the chain. So the requirement for privacy on the chain. Users of the system will be employees in the bank and potential external clients (who cannot spawn nodes on their own but can read off the chain and potentially use it alongside ZK proofs to show off their credibility etc. - this part is still hazy at this point though, but whats clear is the bank has 100% control on if and when to spawn a besu node for each client) Also on securing the caching layer: yes we will have a separate security mechanism for this and make sure only the users with the right permissions can use it

RamkumarVenkataraman (Mon, 31 Aug 2020 03:21:43 GMT):
Here are a few followup questions that I would be grateful if you could help: 1. Now if we have user-A with permissions to do actions 1,2 and 3 and user-B who can do actions 2,3 and 4 and there is an admin user who can do all the actions. I am clear that we need to create separate privacy groups for the two sets of permissions. Do we need to create separate besu and orion nodes for the 2 privacy groups? 2. We woud be using onchain privacy groups, so does that make a difference in the number of besu and orion nodes we need to spawn? 3. Reading the private transaction: I saw that in this besu API documentation: https://besu.hyperledger.org/en/stable/Reference/API-Methods/#priv_getprivatetransaction, that I can only read the private transaction if I am a participant? So if I have an admin that is part of all privacy groups, I should be able to use the admin's secret key and read all the prvate transactions right? 4. Correct me if I am wrong if the workflow will work: the caching layer reads the marker transactions as the admin, get the privateTx hash and call either orion or besu to get the payload 5. On validation: there will be storage in the chain which caches the id and some metadata. This can be private. If the validator contract receives a payload with the same id, we check the metadata and accept or reject the transaction. So this means I can deploy a private contract, check the private world state and send it to orion only if valid? 6. If the above is correct, how do we call the validator contract from our system? I can see we have eea_sendrawtransaction to send the privateTx to orion, but here we have a private contract to be invoked, which has to validate and send it to orion if valid.

RamkumarVenkataraman (Mon, 31 Aug 2020 03:21:43 GMT):
Here are a few followup questions that I would be grateful if you could help: 1. Now if we have user-A with permissions to do actions 1,2 and 3 and user-B who can do actions 2,3 and 4 and there is an admin user who can do all the actions. I am clear that we need to create separate privacy groups for the two sets of permissions. Do we need to create separate besu and orion nodes for the 2 privacy groups? 2. We would be using onchain privacy groups, so does that make a difference in the number of besu and orion nodes we need to spawn? 3. Reading the private transaction: I saw that in this besu API documentation: https://besu.hyperledger.org/en/stable/Reference/API-Methods/#priv_getprivatetransaction, that I can only read the private transaction if I am a participant? So if I have an admin that is part of all privacy groups, I should be able to use the admin's secret key and read all the prvate transactions right? 4. Correct me if I am wrong if the workflow will work: the caching layer reads the marker transactions as the admin, get the privateTx hash and call either orion or besu to get the payload 5. On validation: there will be storage in the chain which caches the id and some metadata. This can be private. If the validator contract receives a payload with the same id, we check the metadata and accept or reject the transaction. So this means I can deploy a private contract, check the private world state and send it to orion only if valid? 6. If the above is correct, how do we call the validator contract from our system? I can see we have eea_sendrawtransaction to send the privateTx to orion, but here we have a private contract to be invoked, which has to validate and send it to orion if valid.

RamkumarVenkataraman (Mon, 31 Aug 2020 03:21:43 GMT):
Here are a few followup questions that I would be grateful if you could help: 1. Now if we have user-A with permissions to do actions 1,2 and 3 and user-B who can do actions 2,3 and 4 and there is an admin user who can do all the actions. I am clear that we need to create separate privacy groups for the two sets of permissions. Do we need to create separate besu and orion nodes for the 2 privacy groups? 2. We would be using onchain privacy groups, so does that make a difference in the number of besu and orion nodes we need to spawn? 3. Reagrding the private transaction API: I saw that in this besu API documentation: https://besu.hyperledger.org/en/stable/Reference/API-Methods/#priv_getprivatetransaction, that I can only read the private transaction if I am a participant? So if I have an admin that is part of all privacy groups, I should be able to use the admin's secret key and read all the prvate transactions right? 4. Correct me if I am wrong if the workflow will work: the caching layer reads the marker transactions as the admin, get the privateTx hash and call either orion or besu to get the payload 5. On validation: there will be storage in the chain which caches the id and some metadata. This can be private. If the validator contract receives a payload with the same id, we check the metadata and accept or reject the transaction. So this means I can deploy a private contract, check the private world state and send it to orion only if valid? 6. If the above is correct, how do we call the validator contract from our system? I can see we have eea_sendrawtransaction to send the privateTx to orion, but here we have a private contract to be invoked, which has to validate and send it to orion if valid.

jbtwist (Mon, 31 Aug 2020 12:17:01 GMT):
Hi, i have listened that besu is no longer a HL framewok, can any1 give me more information about that?

shemnon (Mon, 31 Aug 2020 14:25:38 GMT):
Where did you get that? Besu is still a HL framework.

jbtwist (Mon, 31 Aug 2020 16:08:28 GMT):
My teacher told me that xD

shemnon (Mon, 31 Aug 2020 16:19:00 GMT):
Where did your teacher get that info? I find it concerning that a teacher would spread such misinformation.

lucassaldanha (Mon, 31 Aug 2020 23:01:32 GMT):
Here we go with the followup answers! :)

lucassaldanha (Mon, 31 Aug 2020 23:01:36 GMT):
1 and 2. Privacy groups members are identified by their Orion public key, it doesn't really matter the number of nodes in the network. Although in most use cases you might have a pair of Besu and Orion nodes per participant, it is possible to have multiple participants using the same node (with Multi-tenancy this is quite common). I remember that you mentioned that you aren't considering multi-tenancy because you want to use flexible privacy groups. However, depending on your timeline, you might be ok. We are planning to release support for multi-tenancy for flexible privacy groups in our 1.6 version (should be released in a month or so).

lucassaldanha (Mon, 31 Aug 2020 23:01:42 GMT):
3. Correct. This pattern is really common when there is a regulator or some entity that must have access to all the information. As long as you add the admin as part of every group created, the admin will be able to read the information from that privacy group.

lucassaldanha (Mon, 31 Aug 2020 23:01:47 GMT):
4. Yep, this workflow is correct. You won't need to call Orion directly, I believe that prig_getPrivateTransaction will get the original private transaction from Orion for you. Once you read the PMT, you use the PMT hash to find the private transaction and the private transaction receipt from Besu.

lucassaldanha (Mon, 31 Aug 2020 23:01:53 GMT):
5. Let me try to explaing my thinking here. There are two different concepts here. A valid transaction at the protocol level isn't the same as a valid transaction based on some business logic rules. Upon receiving a "protocol valid" private tx (e.g. correct RLP, signature, etc), the transaction will be sent to Orion. However, when the transaction is being executed, let's say you are calling a smart contract. This smart contract will do you business level validation and can fail processing the tx. This will mark the tx execution as failed. Any business level validation would need to be done via smart contracts.

lucassaldanha (Mon, 31 Aug 2020 23:01:59 GMT):
6. Smart contracts can talk to each other. You can check solitidy docs on how to do it. Let's imagine the following scenario: a system that allow members of a privacy group to exchange tokens. You would have a private smart contract that has got the token exchange logic. A member of the group would send a tx to this contract to transfer tokens. When processing the transfer, the exchange contract can also read information from a public contract that has some business logic rules to check if the transfer is valid. This is what I think it would make business logic validation. I'm not sure if I'm being clear, let me know if it doesn't make any sense.

RamkumarVenkataraman (Tue, 01 Sep 2020 07:42:08 GMT):
Thanks @lucassaldanha for the help again :pray: Most of the things are clear except one small tiny bit (sorry for the newbie confusion): It is clear now that the privateTx gets added to Orion and the smart contract validates it later during the processing phase. Correct me if I am wrong: In a system without privacy, we can call the smart contract from web3 and the contract does business validation. If it is all fine, then the transaction gets mined and written to the chain. If not, nothing gets written on the chain. So our caching layer reads only the valid transactions from the chain. However, with privacy, both the privateTx and PMT get written before doing business validation. While procssing the transaction later, we can do validation in a smart contract. Now if it fails, the privateTx processing will fail but the PMT will already be there in the chain right? So when the caching layer reads the PMT and the privateTx from orion, it will not know if the business validation has failed? Now, how to ensure the caching layer only reads the valid privateTx? Or is there an API that given a PMT, we can find out if the smart contract execution failed?

nkl199 (Tue, 01 Sep 2020 13:35:15 GMT):
Has joined the channel.

jbtwist (Tue, 01 Sep 2020 21:02:54 GMT):
I dont know, I asked and he told me was a thought he had

lucassaldanha (Wed, 02 Sep 2020 02:22:26 GMT):
A PMT exists regardless of the status of the execution of the private tx. The goal with the PMT is to ensure all nodes will execute the Private TX at the same point. If the private tx is successful or not isn't defined by the PMT status, but by the private tx execution status. To find out if a Private TX succeeded, you should use priv_getPrivateTransactionReceipt, passing as a parameter the hash of the PMT. This API will retrieve the receipt of the execution of the private transaction associated with the PMT. And the receipt has got all the information re the private tx execution, including if it has failed or succeeded.

RamkumarVenkataraman (Wed, 02 Sep 2020 02:24:14 GMT):
Thanks @lucassaldanha for the response. Everything is clear now :slight_smile: Thanks for the help, you're the best!

SteveKIM (Wed, 02 Sep 2020 04:47:00 GMT):
Has joined the channel.

SteveKIM (Wed, 02 Sep 2020 04:47:00 GMT):
hi guys I have some question, I use orion first time, I got a trouble . when I process orion server in local pc, I get message "Failed to read password list" so how make passwordFile, Do you have any examples?? or solution?

SteveKIM (Wed, 02 Sep 2020 04:48:21 GMT):
privacy tutorial is not working, especially using orion,

arash009 (Wed, 02 Sep 2020 05:14:28 GMT):
Can you specify which tutorial you are following, and at what step in the process you are having issues? This tutorial should take you through the relevant steps: https://besu.hyperledger.org/en/stable/Tutorials/Privacy/Configuring-Privacy/#configure-a-network-for-private-transactions

SteveKIM (Wed, 02 Sep 2020 05:17:14 GMT):
second step. that mean that I make password file? so How? orion does not explain. and orion server does not work..

arash009 (Wed, 02 Sep 2020 05:26:09 GMT):
@GregTheGreek @shemnon just a clarification on this one. As per the roadmap, there has been some work done to date that includes support for block rewards to be specified when using an IBFT2 network. You can specify a reward amound and an address of where these rewards will go, however this cannot be currently adjusted once the network is up. See https://besu.hyperledger.org/en/latest/HowTo/Configure/Consensus-Protocols/IBFT/ Additional mechanism to support changing the reward amount and recipient are on the roadmap

arash009 (Wed, 02 Sep 2020 05:31:49 GMT):
You simply create a text file titled `passwordFile` specifying a password that you then use in step 3

SteveKIM (Wed, 02 Sep 2020 05:33:59 GMT):
yes i make passwordFile than included password. but orion does not decrypt.. do you give me a sample code in passwordFile?

SteveKIM (Wed, 02 Sep 2020 05:36:40 GMT):
my example {"hellobesu"}

SteveKIM (Wed, 02 Sep 2020 05:36:54 GMT):
inside passwordFile

SteveKIM (Wed, 02 Sep 2020 05:37:29 GMT):
and 3 t step. orion -g nodeKey

SteveKIM (Wed, 02 Sep 2020 05:38:17 GMT):
at that time, Orion require password on prompt so I typing password hellobesu

arash009 (Wed, 02 Sep 2020 05:40:52 GMT):
You need to make sure to type exactly the characters saved in the file, including any white space or return characters

SteveKIM (Wed, 02 Sep 2020 05:42:20 GMT):
well I check the file but file is good, passwordFile.txt ?? or just passwordFile is ok?

SteveKIM (Wed, 02 Sep 2020 05:45:34 GMT):
[INFO ] [main] 09-02-2020 14:45:06 n.c.o.c.Orion - starting orion [INFO ] [main] 09-02-2020 14:45:06 n.c.o.c.Orion - using /Users/andrekim/blockchain/prototype/IBFT-Network/Node-1/Orion/orion.conf provided config file [ERROR] [main] 09-02-2020 14:45:07 n.c.o.c.Orion - Unexpected exception upon starting Orion net.consensys.orion.enclave.EnclaveException: Key decryption failed it is error message

SteveKIM (Wed, 02 Sep 2020 05:46:31 GMT):
nodeurl = "http://127.0.0.1:8080/" nodeport = 8080 clienturl = "http://127.0.0.1:8888/" clientport = 8888 publickeys = ["/Users/andrekim/blockchain/prototype/IBFT-Network/Node-1/Orion/nodeKey.pub"] privatekeys = ["/Users/andrekim/blockchain/prototype/IBFT-Network/Node-1/Orion/nodeKey.key"] passwords = "passwordFile" tls = "off"

SteveKIM (Wed, 02 Sep 2020 05:46:39 GMT):
orion conf file

SteveKIM (Wed, 02 Sep 2020 05:50:15 GMT):
do you follow the tutorial? is it work? what kind of version orion and besu?

pinges (Wed, 02 Sep 2020 05:58:40 GMT):
Why don't you try to use a very simple password first? In your password file you could just have a simple word like "password", without the quotes and any line endings ...

SteveKIM (Wed, 02 Sep 2020 06:00:40 GMT):
I use that word but does not work

SteveKIM (Wed, 02 Sep 2020 06:05:41 GMT):
oh it work removed { and "

SteveKIM (Wed, 02 Sep 2020 06:05:47 GMT):
thanks guys

JonGeater (Wed, 02 Sep 2020 12:27:47 GMT):
Has joined the channel.

JonGeater (Wed, 02 Sep 2020 12:27:47 GMT):
Hi all,I'm looking for docker containers (or a compose file) to run some experiments locally. I've just searched this channel to see if my question was already answered and found reference to multiple image sources. What's the canonical location for supported and properly versioned docker files in HL Besu?

esaulpaugh (Wed, 02 Sep 2020 19:59:22 GMT):
Has joined the channel.

esaulpaugh (Wed, 02 Sep 2020 19:59:22 GMT):
ubuntu crashed and now I get "org.rocksdb.RocksDBException: While open a file for random read: /home/linuxbrew/.linuxbrew/Cellar/besu/1.5.3/database/131271.ldb: No such file or directory" when I try to start my node

diegoll (Wed, 02 Sep 2020 20:13:32 GMT):
Hello Jon, have you seen https://github.com/PegaSysEng/besu-sample-networks/?

esaulpaugh (Wed, 02 Sep 2020 20:14:15 GMT):
blarg, i forgot besu had a neomarxist CoC; gonna try geth

JonGeater (Wed, 02 Sep 2020 20:25:28 GMT):
Yes, that was one of the ones I found 🙂 if that’s canonical I’ll work on that one, thanks.

diegoll (Wed, 02 Sep 2020 20:26:43 GMT):
I'm not affiliated with PegaSys, but it seems pretty updated. I've used a few times for my own tests

diegoll (Wed, 02 Sep 2020 20:26:43 GMT):
I'm not affiliated with PegaSys, but it seems pretty updated. I've used it a few times for my own tests

shemnon (Wed, 02 Sep 2020 20:49:54 GMT):
Are you running this on linux or windows?

gregdhill (Thu, 03 Sep 2020 13:35:10 GMT):
Has left the channel.

joshuafernandes (Thu, 03 Sep 2020 23:40:46 GMT):
This is the best for Besu and there are multiple variants you can pick from.

joshuafernandes (Thu, 03 Sep 2020 23:40:46 GMT):
The sample-networks repo is the best for Besu and there are multiple variants you can pick from.

joshuafernandes (Fri, 04 Sep 2020 00:06:26 GMT):
the official image is https://hub.docker.com/r/hyperledger/besu and the versioned dockerfile is in the Besu codebase https://github.com/hyperledger/besu/tree/master/docker

joshuafernandes (Fri, 04 Sep 2020 00:06:59 GMT):
the sample-networks use the openjdk-11 image

nicexe (Fri, 04 Sep 2020 09:26:05 GMT):
Has joined the channel.

nicexe (Fri, 04 Sep 2020 09:26:05 GMT):
Hi people. Is there a way to migrate an already existing (Parity AuRA) chain to besu and start using iBFT2 from now on? I know that besu does not support the AuRA consensus protocol but is there a way to disable validation for blocks which were created under AuRA so we could import them and then seal with iBFT2 onwards.

shemnon (Fri, 04 Sep 2020 16:36:44 GMT):
There is currently no way to disable block validation. If we supported AuRa we could set a transition at a specific block to turn on IBFT. We also currently only support some parameters at transition points.

shemnon (Fri, 04 Sep 2020 16:43:04 GMT):
I see two possibilities. If the contracts don't rely on block numbers a custom transition software could be written to read the transactions from the old chain in raw form and re-post them to the IBFT chain. You wouldn't be able to change chainID.

shemnon (Fri, 04 Sep 2020 16:44:10 GMT):
Assuming AuRa does all it's magic in extradata Besu code change could be to allow PoW mining at transition points and set a fixed difficulty of zero so all blocks validate. But that is speculative and would require some code alterations inside Besu

shemnon (Fri, 04 Sep 2020 16:44:10 GMT):
Assuming AuRa does all it's magic in extradata Besu code could change to allow PoW mining at transition points and set a fixed difficulty of zero so all blocks validate. But that is speculative and would require some code alterations inside Besu. So the chain would report the old aura blocks as PoW and then transition to IBFT.

Amanullah68 (Fri, 04 Sep 2020 20:05:25 GMT):
Hi, I already created a project in ethereum which is running perfectly

Amanullah68 (Fri, 04 Sep 2020 20:05:37 GMT):
now i want to move it to besu

Amanullah68 (Fri, 04 Sep 2020 20:06:05 GMT):
what's better approach? Do I configure my own network or use docker image

Amanullah68 (Fri, 04 Sep 2020 20:06:25 GMT):
I want to make my transactions private and secure

carlosho17 (Sat, 05 Sep 2020 09:34:43 GMT):
New grafana dashboard for Besu : https://grafana.com/grafana/dashboards/12944

poojagupta23 (Mon, 07 Sep 2020 04:55:45 GMT):
Hello Besu experts, Is there a way by which we can get the query response to be signed by the validator nodes in the network? Suppose, I send a query request to a smart contract then the response which I received should have the signature from the vallidator.

poojagupta23 (Mon, 07 Sep 2020 06:33:44 GMT):
Is there a way by which a besu node returns a signed response for eth_call()?

lucassaldanha (Mon, 07 Sep 2020 20:58:04 GMT):
I'm not sure if I know what you mean by signed response. Could you provide a bit more context?

lucassaldanha (Mon, 07 Sep 2020 21:00:09 GMT):
When you say that you have created a project in Ethereum, do you mean that you have a private Ethereum network or are you deploying your contracts in a public network?

poojagupta23 (Tue, 08 Sep 2020 01:16:48 GMT):
I am sending a eth_call() from a validator node in the network. The validator node gets the response and add its signature and then return me response+its signature. Currently, there is no way by which we can get signed response from validators in the besu network like we have it in other permissioned network like corda and fabric where one can explicitly mention to get signature from these nodes.

poojagupta23 (Tue, 08 Sep 2020 01:16:48 GMT):
I am sending a eth_call() from a validator node in the network. The validator node gets the response and add its signature and then return me response+its signature to my dapp. Currently, there is no way by which we can get signed response from validators in the besu network like we have it in other permissioned network like corda and fabric where one can explicitly mention to get signature from these nodes.

poojagupta23 (Tue, 08 Sep 2020 01:16:48 GMT):
my dapp is sending eth_call request from a validator node in the network. The validator node gets the response and add its signature and then return the response+its signature to my dapp. Currently, there is no way by which we can get signed response from validators in the besu network like we have it in other permissioned network like corda and fabric where one can explicitly mention to get signature from these nodes.

lakshyakumar (Tue, 08 Sep 2020 08:49:26 GMT):
Hi Contributors, I am not able to deploy the smartcontract on my member nodes in besu production network, I am able to deploy the smartcontract only on the nodes that are added to `extraData` field in `genesis.json` file, the validator nodes. Can you help me with possible causes and fixes? Thanks in advance.

LeonYangLi (Tue, 08 Sep 2020 09:15:41 GMT):
Hi Contributors,

LeonYangLi (Tue, 08 Sep 2020 09:15:41 GMT):
Hi Contributors, I follow the tutorials to set three private networks(Clique, IBFT and Ethash), I can use Metamask send transactions on Clique, however there are same errors that "rpc error with pay load{...} on IBFT and Ethash networks". How can I use Metamask send transactions on IBFT and Ethash?

LeonYangLi (Tue, 08 Sep 2020 09:15:41 GMT):
Hi Contributors, I follow the tutorials to set three private networks(Clique, IBFT and Ethash), I can use Metamask send transactions on Clique, however there are same errors that "rpc error with pay load{...} on IBFT and Ethash networks". However, I can use Metamask to check the balance of account, so I think the rpc is enabled. How can I use Metamask send transactions on IBFT and Ethash?

shemnon (Tue, 08 Sep 2020 15:22:19 GMT):
Are you changing the `extraData` for a network that is currently running? That won't work. You can connect to the validating nodes with a non validating node and the transactions sohuld propagate to the validators.

shemnon (Tue, 08 Sep 2020 15:23:55 GMT):
Is there any more data about what the rpc error is form metamask? (perhaps in some logs on the console? Not deeply experienced with metamask so I am just guessing) Is rpc up on those nodes? are the correct RPC endpoints activated?

macfarla (Wed, 09 Sep 2020 01:26:10 GMT):
When changing the RPC provider that MetaMask is connecting to, you need to reset the account in MetaMask (this resets the account's tx nonce). I think the nonce being incorrect can cause this RPC error

lucassaldanha (Wed, 09 Sep 2020 01:53:10 GMT):
Sorry, I don't think I have the knowledge to help you out. Maybe someone else can jump in! :)

lakshyakumar (Wed, 09 Sep 2020 03:23:31 GMT):
No the extra`Data` is changed prior to the network setup, and I can see the list of validators using `ibft_getValidatorsByBlockNumber` api call to the member node.

shemnon (Wed, 09 Sep 2020 05:40:37 GMT):
Then there is some technical detail I must be missing. Soulds like it should work.

arash009 (Wed, 09 Sep 2020 06:31:42 GMT):
Hi @poojagupta23 The TLS communication support enabled on the RPC can be used to establish a trusted connection between a dapp and besu. Is there a any reason why this form of standard encryption is not suitable?

banhmi.eth (Wed, 09 Sep 2020 08:12:25 GMT):
Hi, how to run besu-sample-network with gasPrice = 0

banhmi.eth (Wed, 09 Sep 2020 08:12:26 GMT):
https://github.com/PegaSysEng/besu-sample-networks.git

Amanullah68 (Wed, 09 Sep 2020 12:45:48 GMT):
I'm currently using public network but wanted to shift it to private

shemnon (Wed, 09 Sep 2020 15:31:15 GMT):
In [`config.toml`](https://github.com/PegaSysEng/besu-sample-networks/blob/3c709c7cc6d0867cfad43e80eb6ad1c2e8d4d53f/config/besu/config.toml) add `min-gas-price=0`

shemnon (Wed, 09 Sep 2020 15:31:40 GMT):
config.toml is at besu-sample-networks/config/besu/config.toml

shemnon (Wed, 09 Sep 2020 15:32:04 GMT):
untested, but that's the only config.toml I see so I think it will be all the validators and all the other besu nodes too.

lucassaldanha (Wed, 09 Sep 2020 21:38:41 GMT):
You can setup your own network using Docker. Take a look at this repo with plenty of examples: https://github.com/PegaSysEng/besu-sample-networks

eum602 (Wed, 09 Sep 2020 22:46:09 GMT):
Hello everyone, please guys I would like to receive some ideas what could be happening in the following issue I am facing: I have an IBFT network that is operating for many months (currennlty ~15Million blocks and Free-cost of-gas) ultimately we are facing issues when trying to make transactions with some keys. What we have observed is the transactions are stuck in the Transaction pool. We have tested from many points (remix, nodejs and java) obtaining the same results. Can you please help me with some ideas what could be happening?

shemnon (Thu, 10 Sep 2020 01:06:30 GMT):
Is there a nonce gap? Is the lowest nonce for the address in the tx pool one more than the nonce on the chain?

shemnon (Thu, 10 Sep 2020 01:07:45 GMT):
If it's zero gas, I assume that the next pending tx has zero gas cost and/or the account has sufficient "ether" . If the TX has a non-zero gascost it may be hard to dislodge it from the mempool.

Amanullah68 (Thu, 10 Sep 2020 04:36:24 GMT):
okay, thanks

banhmi.eth (Thu, 10 Sep 2020 10:08:27 GMT):
I just modified docker-composer.yaml with min-gas-price for miner, bootnode, rpc and its work well

eum602 (Thu, 10 Sep 2020 18:42:26 GMT):
Hello @shemnon , * I can confirm that I am using the latest nonce (or the pending consecutive). * Also we do not send any ethers in the transaction. * The transaction is validated but sometimes it takes too long to be processed or is discarded if the transaction pool reached ~600 pooled transactions. * Also I have tested in two different nodes (with 1.4.1 and 1.5.1 version) I observe an intermitent behavior, that is, sometimes the transaction is validated accordinlgy but sometimes the transaction gets stuck in the transaction pool for a long time (3 minutes, 7 minutes or 1 hour) thus applications throws errors because of timeout (We have configured a maximum of 80 seconds before throwing an error).

eum602 (Thu, 10 Sep 2020 18:42:26 GMT):
Hello @shemnon , * I can confirm that I am using the latest nonce (or the pending consecutive). * Also we do not send any ethers in the transaction. * The transaction is validated but sometimes it takes too long to be processed or is discarded if the transaction pool reached ~600 txs. * Also I have tested in two different nodes (with 1.4.1 and 1.5.1 version) I observe an intermitent behavior, that is, sometimes the transaction is validated accordinlgy but sometimes the transaction gets stuck in the transaction pool for a long time (3 minutes, 7 minutes or 1 hour) thus applications throws errors because of timeout (We have configured a maximum of 80 seconds before throwing an error).

shemnon (Thu, 10 Sep 2020 18:51:57 GMT):
How full are the blocks?

shemnon (Thu, 10 Sep 2020 18:52:04 GMT):
as a % of the gas limit

eum602 (Thu, 10 Sep 2020 18:53:31 GMT):
Usually we have 60000 gas per block (at the current state) some peaks of 600 000 or 2Millions

eum602 (Thu, 10 Sep 2020 18:54:03 GMT):
as a percentage it is less than 1%.

shemnon (Thu, 10 Sep 2020 21:41:40 GMT):
Its hard to diagnose why the validators wouldn't be putting transactions into the block. Do you control a validator and can instrument it for debugging? A tx pool reaching 600 and 1% block useage sounds like there are deeper problems with block production.

timbeiko (Thu, 10 Sep 2020 23:17:57 GMT):
:besu: :partying_face: *Besu 1.5.4 is out!* :partying_face: :besu: Release notes & download link: https://github.com/hyperledger/besu/releases/1.5.4 Highlights :eyes: A new privacy JSON RPC API, priv_debugGetStateRoot :woman_detective_light_skin_tone: Better re-org logging :chains: A new debug API, debug_batchSendRawTransaction to send multiple txns with a single call :100:

timbeiko (Thu, 10 Sep 2020 23:17:57 GMT):
:besu: :partying_face: *Besu 1.5.4 is out!* :partying_face: :besu: Release notes & download link: https://github.com/hyperledger/besu/releases/1.5.4 Highlights :eyes: - A new privacy JSON RPC API, priv_debugGetStateRoot :woman_detective_light_skin_tone: - Better re-org logging :chains: - A new debug API, debug_batchSendRawTransaction to send multiple txns with a single call :100:

eum602 (Fri, 11 Sep 2020 01:46:13 GMT):
@shemnon thanks a lot for your support. I can confirm you that I had a gasLimit and nonce settup on each transaction in a way that transactions were stuck in the pool in favor of other lighter transactions. After setting an adequate amount of gasLimit and nonce (latest) I could send my transactions successfully.

Amanullah68 (Fri, 11 Sep 2020 07:45:33 GMT):

Screenshot from 2020-09-11 12-43-41.png

Amanullah68 (Fri, 11 Sep 2020 07:46:09 GMT):
Hi guy's, I'm facing this issue when I tried to deploy contract on privacy-enabled network

Amanullah68 (Fri, 11 Sep 2020 07:46:23 GMT):
I used the besu-sample-network

macfarla (Fri, 11 Sep 2020 10:56:47 GMT):
wrong chainId means the chain id used to create the web3 provider does not match that in your genesis file (or you can also set it on the command line). From a quick look the multiNodeExamplePrivacyGroup uses chainId of 2018. (In deployContract.js you will see the line `const web3 = new EEAClient(new Web3(besu.node1.url), 2018);`) What command are you using to run the sample network? I've just run the example successfully with `./run-privacy.sh -c ibft2 -e`

conor (Fri, 11 Sep 2020 14:48:11 GMT):
Has joined the channel.

poojagupta23 (Sat, 12 Sep 2020 02:12:59 GMT):
Hello experts, I want to include some more accounts for the testing purpose. There are three accounts given. How can I add more accounts?

lucassaldanha (Sun, 13 Sep 2020 21:03:20 GMT):
If you are starting up a new network, you can add more accounts in your genesis file (see https://github.com/hyperledger/besu/blob/master/config/src/main/resources/dev.json#L24-L39).

lucassaldanha (Sun, 13 Sep 2020 21:05:50 GMT):
You can create accounts in different ways, take a look at this article: https://medium.com/@hukenneth/how-do-you-get-ethereum-address-665f7594fd74

shemnon (Mon, 14 Sep 2020 04:29:34 GMT):
Contributor Call Tomorrow at 0100 UTC (11am AEST) - https://wiki.hyperledger.org/display/BESU/2020-09-15+Contributor+Call

shemnon (Mon, 14 Sep 2020 04:31:36 GMT):
Feel free to add agenda items

NicolasMassart (Mon, 14 Sep 2020 07:40:12 GMT):
Hi, I had a user feedback about the revert reason being only visible in log if TRACE level is activated. He argues that Ganache, used during the dev stage, shows more explicitly errors and the reason in the basic logs. Do you think of a simple way to ease the visibility of the revert reason in Besu without changing the logs to trace?

NicolasMassart (Mon, 14 Sep 2020 07:40:12 GMT):
Hi, I had a user feedback about the revert reason being only visible in log if TRACE level is activated. He argues that Ganache, used during the dev stage, shows more explicitly errors and the reason in the basic logs. Do you know a simple way to ease the visibility of the revert reason in Besu without changing the logs to trace?

joaquimpedrooliveira (Mon, 14 Sep 2020 13:43:56 GMT):
Has joined the channel.

joaquimpedrooliveira (Mon, 14 Sep 2020 13:43:56 GMT):
Hi, everyone. What types of elliptic curves does Besu support?

shemnon (Mon, 14 Sep 2020 14:05:00 GMT):
secp256k1 for accounts - the same one bitcoin uses. BN128 via smart contract function. Berlin (H1 2021) is working on BLS12-381 as a smart contract function.

joaquimpedrooliveira (Mon, 14 Sep 2020 14:28:17 GMT):
Thank you very much!

macfarla (Tue, 15 Sep 2020 00:33:43 GMT):
added the proposal to get more docs maintainers

azoumi (Tue, 15 Sep 2020 08:29:39 GMT):
Has joined the channel.

Amanullah68 (Tue, 15 Sep 2020 09:56:37 GMT):

Screenshot from 2020-09-15 14-55-46.png

Amanullah68 (Tue, 15 Sep 2020 09:57:01 GMT):
while starting the first node

Amanullah68 (Tue, 15 Sep 2020 09:57:14 GMT):
using clique private nnetwork

Amanullah68 (Tue, 15 Sep 2020 12:13:46 GMT):
How hyperledger besu works in public ethereum network?

hanseh (Wed, 16 Sep 2020 05:39:01 GMT):
Has joined the channel.

hanseh (Wed, 16 Sep 2020 05:39:02 GMT):
hi experts, im new as well. we have a dapp connected to the public net, gas price has been an issue for scaling. we are planning to move to a private net. is there a way to get the data from the public net? docs for besu are scarce at the moment, can anyone share a link for us to evaluate besu more

arash009 (Wed, 16 Sep 2020 06:49:47 GMT):
You can connect to mainnet or other known networks using the defined --network command: https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#network

arash009 (Wed, 16 Sep 2020 06:51:42 GMT):
Please follow the tutorial here and make sure to enter the node address correctly as stated: https://besu.hyperledger.org/en/stable/Tutorials/Private-Network/Create-Private-Clique-Network/

arash009 (Wed, 16 Sep 2020 06:55:02 GMT):
Can you clarify what you mean by move the data? Do you mean the transactions that you have executed on mainnet to a private network? You will need to re-execute those transactions on a private network that you are starting from scratch.

Amanullah68 (Wed, 16 Sep 2020 07:17:58 GMT):
but I can't see my transactions on ethereum main node nor on rinkeby

Amanullah68 (Wed, 16 Sep 2020 07:18:33 GMT):
I select rinkeby as my network and deploy the contract but can't see my transaction on etherscan

Amanullah68 (Wed, 16 Sep 2020 07:19:13 GMT):

Screenshot from 2020-09-16 12-18-59.png

Amanullah68 (Wed, 16 Sep 2020 07:20:20 GMT):
created permissioned network and try to send between whitelisted accounts but it's move into pending state

JonGeater (Wed, 16 Sep 2020 16:28:59 GMT):
Cool, thanks @joshuafernandes .

JonGeater (Wed, 16 Sep 2020 16:29:23 GMT):
Sorry for such a long silence - was working on something else the last couple weeks

shemnon (Wed, 16 Sep 2020 17:11:48 GMT):
What tooling are you using to deploy the contract? Do you have sufficient ether in your rinkeby account?

shemnon (Wed, 16 Sep 2020 19:28:15 GMT):
There is not enough to be sure of here, but my guess is you have the chainId set wrong.

shemnon (Wed, 16 Sep 2020 19:32:27 GMT):
Can you download the state logs and look for the "history" section? Look for any "stack" messages.

shemnon (Wed, 16 Sep 2020 19:32:50 GMT):
(settings/advanced/[download state logs])

Amanullah68 (Thu, 17 Sep 2020 04:29:39 GMT):
yes I have enough ethers, I even see it in besu private explorer but not on rinkeby

hanseh (Thu, 17 Sep 2020 06:33:12 GMT):
yes, you are correct. was looking for a way to migrate into the new besu setup. what does connecting to the public ethereum network imply? benefits?

Amanullah68 (Thu, 17 Sep 2020 10:59:32 GMT):

Screenshot from 2020-09-17 15-59-18.png

Amanullah68 (Thu, 17 Sep 2020 11:01:07 GMT):
Trying to configure multi tennact network but when running command on Node-1

Amanullah68 (Thu, 17 Sep 2020 11:01:13 GMT):
I got this error

Amanullah68 (Thu, 17 Sep 2020 11:01:15 GMT):
Authentication RPC public key could not be read

Amanullah68 (Thu, 17 Sep 2020 11:48:02 GMT):

Screenshot from 2020-09-17 16-47-48.png

Amanullah68 (Thu, 17 Sep 2020 11:48:46 GMT):
When running multiNodeExample and trying to deploy the contract, it gives me this error

Amanullah68 (Thu, 17 Sep 2020 11:48:58 GMT):
method not enabled

macfarla (Fri, 18 Sep 2020 01:28:35 GMT):
@Amanullah68 this will happen if you have privacy-onchain-groups-enabled=true for incompatible examples. At the bottom of your screenshot you will see the message to check your config. Only enable onchain groups for the onchain examples.

aaltenbernd (Fri, 18 Sep 2020 08:47:52 GMT):
Has joined the channel.

aaltenbernd (Fri, 18 Sep 2020 08:56:21 GMT):
Hi, everyone! As I read the besu docu it is possible to define a port for RPC calls and also define authentication for all RPC calls. I would like to only limit the access to "ADMIN" and "PERM" rpcs. Either by defining a different port for both. So I can be sure that access is only locally for those RPC calls. Or by defining authentication only for those RPC calls. All other RPC calls should be available from outside by all users. Would this be possible?

Amanullah68 (Fri, 18 Sep 2020 12:23:48 GMT):

Screenshot from 2020-09-18 17-22-45.png

Amanullah68 (Fri, 18 Sep 2020 12:23:52 GMT):
Supplied genesis block does not match stored chain data. Please specify a different data directory with --data-path or specify the original genesis file with --genesis-file

Amanullah68 (Fri, 18 Sep 2020 12:24:45 GMT):
what's wrong with this? I updated besu to 1.5.4 and try to run the command given in documentation but getting this error

Amanullah68 (Fri, 18 Sep 2020 12:55:23 GMT):
okay, I solved the issue

Amanullah68 (Fri, 18 Sep 2020 12:55:59 GMT):
I still not understand whether my transaction goes into etherscan or not?

Amanullah68 (Fri, 18 Sep 2020 12:56:33 GMT):
I'm selecting Rinkeby aas my network but can't see the transaction in etherscan

Amanullah68 (Fri, 18 Sep 2020 12:57:28 GMT):
just clear me whether it's goes into rinkeby public network or only remains into our private network

lucassaldanha (Mon, 21 Sep 2020 04:18:04 GMT):
I believe Besu does not provide a way to selectively protect different API methods. You either have all of them protected or not. One thing that is possible is to have granular method permissions per user. So you could have a "admin" user that can access the ADMIN and PERM methods, and other users that can access other methods. The downside with this approach is that either you'll need to have a user for each one of your clients or they would need to share a specific user. A second approach that could work would be exposing on the JSON-RPC API all the methods that you want to be publicly available, and perhaps using the WebSocket API to expose only the ADMIN and PERM methods. The JSON-RPC and the WebSocket servers have independent configurations, so you could have the latter only accepting local connections (and you can send JSON-RPC requests through WebSockets). The downside with this approach is that you'd need some kind of adapter that translates JSON-RPC calls to WebSocket calls.

lucassaldanha (Mon, 21 Sep 2020 04:19:30 GMT):
If you are running a private network, your transaction won't be visible in Etherscan. However, if you are connecting to the Rinkeby network, you should be able to see your tx in Etherscan as soon as it is propagated to one of their nodes.

lucassaldanha (Mon, 21 Sep 2020 04:20:41 GMT):
If you want to use some kind of block explorer to see your transactions in a private network, you can use something like this: https://besu.hyperledger.org/en/latest/Tutorials/Examples/Private-Network-Example/#block-explorer

Amanullah68 (Mon, 21 Sep 2020 06:03:11 GMT):
I want to create permissionable network with rinkeby

Amanullah68 (Mon, 21 Sep 2020 07:04:36 GMT):
I have created the permissioned network and send coins from the allowlist account which successfully sended.

Amanullah68 (Mon, 21 Sep 2020 07:04:51 GMT):
TRansaction performed successfully

Amanullah68 (Mon, 21 Sep 2020 07:06:38 GMT):
Ethers successfully transfered

Amanullah68 (Mon, 21 Sep 2020 07:06:59 GMT):
but still issue is there I can't see my tx on etherscna

Amanullah68 (Mon, 21 Sep 2020 07:14:57 GMT):
chainid is 1981

Amanullah68 (Mon, 21 Sep 2020 07:53:41 GMT):

Screenshot from 2020-09-21 12-53-27.png

Amanullah68 (Mon, 21 Sep 2020 07:53:53 GMT):
I change the chaincode id to 4

Amanullah68 (Mon, 21 Sep 2020 07:54:50 GMT):
but now my transactions gets failed

DelgadoTrueba (Mon, 21 Sep 2020 12:23:26 GMT):
Hi guys I have a question. Is there any way to obtain revertReason property when use privacy group? Currently, Private transaction receipt object returned by priv_getTransactionReceipt does not contain revertReason property.

lucassaldanha (Mon, 21 Sep 2020 21:28:51 GMT):
Hi! If you have started your network on a different chainId, you'll need to delete the node db and start a new sync. You can't change the chainId of an existing network.

lucassaldanha (Mon, 21 Sep 2020 21:56:08 GMT):
I can't remember if we have that implemented already or not. I'll take a look at the code and get back to you on this.

lucassaldanha (Tue, 22 Sep 2020 02:05:09 GMT):
Hi! I have just verified that we do include the revert reason for public and private transactions. However, only if Besu has the flag `revert-reason-enabled` set to true (https://besu.hyperledger.org/en/latest/Reference/CLI/CLI-Syntax/#revert-reason-enabled).

Amanullah68 (Tue, 22 Sep 2020 04:27:21 GMT):
I have delete all theen change the network id

Amanullah68 (Tue, 22 Sep 2020 04:28:01 GMT):
the issue is I can't see my transactions in rinkeby.etherscan

lucassaldanha (Tue, 22 Sep 2020 04:40:31 GMT):
But are your transactions being accepted by the node? Try enabling debug or trace log level on the node and see if you can get more details about the transactions that you are sending.

Amanullah68 (Tue, 22 Sep 2020 04:41:50 GMT):
okay, thanks. I will check it. Hopefully that will resolve my issue

Amanullah68 (Tue, 22 Sep 2020 05:16:58 GMT):

Screenshot from 2020-09-22 10-16-41.png

Amanullah68 (Tue, 22 Sep 2020 05:17:09 GMT):
2020-09-22 10:16:30.001+05:00 | pool-7-thread-2 | DEBUG | MainnetTransactionProcessor | Invalid transaction: transaction nonce 3 does not match sender account nonce 0.

Amanullah68 (Tue, 22 Sep 2020 05:17:19 GMT):
got this error

Amanullah68 (Tue, 22 Sep 2020 05:23:24 GMT):

Screenshot from 2020-09-22 10-16-41.png

Amanullah68 (Tue, 22 Sep 2020 05:23:37 GMT):
2020-09-22 10:16:30.001+05:00 | pool-7-thread-2 | DEBUG | MainnetTransactionProcessor | Invalid transaction: transaction nonce 3 does not match sender account nonce 0.

Amanullah68 (Tue, 22 Sep 2020 05:23:43 GMT):
got this error

lucassaldanha (Tue, 22 Sep 2020 06:02:35 GMT):
It looks like the transaction is being sent with the wrong nonce. In your case I believe it is happening because Metamask has cached the nonce from when you were running your node in the other network. Try resetting the account in the advanced setting in Metamask

lucassaldanha (Tue, 22 Sep 2020 06:02:56 GMT):

Clipboard - September 22, 2020 6:02 PM

lucassaldanha (Tue, 22 Sep 2020 06:03:13 GMT):
https://metamask.zendesk.com/hc/en-us/articles/360015488891-Resetting-an-Account#:~:text=To%20reset%20the%20account%3A,down%20and%20click%20Reset%20Account

Amanullah68 (Tue, 22 Sep 2020 07:17:12 GMT):

Screenshot from 2020-09-22 12-16-40.png

Amanullah68 (Tue, 22 Sep 2020 07:20:58 GMT):
Now this after deleting everything and started network again

Amanullah68 (Tue, 22 Sep 2020 07:32:36 GMT):
Sorry solve this, that's not an issue

Amanullah68 (Tue, 22 Sep 2020 07:56:35 GMT):
done this but still issue is there

lucassaldanha (Tue, 22 Sep 2020 08:15:20 GMT):
I think atm there isn't much I can do to help. From the logs it the txs are being sent with the wrong nonce, so they won't be distributed in the network and will never show up on etherscan. Maybe try using a new account?

ZappaBoy (Tue, 22 Sep 2020 11:40:23 GMT):
Has joined the channel.

ZappaBoy (Tue, 22 Sep 2020 11:40:23 GMT):
Hi all, I have a question, how much is the cost of use Hyperledger Besu for a project? It use Ethereum blockchain so there is a cost right?

Amanullah68 (Tue, 22 Sep 2020 12:53:19 GMT):
Yeah, I tried with new accounts but still same nonce issue

pogchamp (Tue, 22 Sep 2020 13:58:13 GMT):
Has joined the channel.

pogchamp (Tue, 22 Sep 2020 13:58:14 GMT):
Hi is there a minimum node that we can run in Hyperledger Besu private ethereum?

camohe90 (Tue, 22 Sep 2020 16:05:14 GMT):
Has joined the channel.

shemnon (Tue, 22 Sep 2020 17:59:08 GMT):
The node itself is free. You can set up and run your own private chains (with a different consensus mechanism like clique). However to post transactions on mainnet does require ethereum. There are testnets (ropsten, rinkeby, goerly) where you can get free tokens.

shemnon (Tue, 22 Sep 2020 18:00:41 GMT):
Depends on the usecase. For mainnet we recommend 4 cores, 16 GiB Memory, and an SSD. For smaller chains it can run on as little as 1 core and 4GiB. For chains other than mainnet this typically translates to a 't3.large' on AWS.

shemnon (Tue, 22 Sep 2020 18:00:53 GMT):
For mainnet, we recommend an i3.xlarge or larger

Amanullah68 (Wed, 23 Sep 2020 07:17:34 GMT):

Screenshot from 2020-09-23 12-16-48.png

Amanullah68 (Wed, 23 Sep 2020 07:17:36 GMT):

Screenshot from 2020-09-23 12-16-55.png

Amanullah68 (Wed, 23 Sep 2020 07:17:36 GMT):

Screenshot from 2020-09-23 12-17-11.png

Amanullah68 (Wed, 23 Sep 2020 07:17:36 GMT):

Screenshot from 2020-09-23 12-17-01.png

Amanullah68 (Wed, 23 Sep 2020 07:18:17 GMT):
Look ethers succesfully transfered but still can't see transaction in rinkeby.etherscan

lucassaldanha (Wed, 23 Sep 2020 08:13:43 GMT):
Could you share the config that you are using to run the node?

Amanullah68 (Wed, 23 Sep 2020 09:26:20 GMT):
{ "config":{ "chainId":4, "constantinoplefixblock": 0, "clique":{ "blockperiodseconds":15, "epochlength":30000 } }, "coinbase":"0x0000000000000000000000000000000000000000", "difficulty":"0x1", "extraData":"0x0000000000000000000000000000000000000000000000000000000000000000b7992399a84878fac7049fd619f2e889842367970000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "gasLimit":"0xa00000", "mixHash":"0x0000000000000000000000000000000000000000000000000000000000000000", "nonce":"0x0", "timestamp":"0x5c51a607", "alloc": { "fe3b557e8fb62b89f4916b721be55ceb828dbd73": { "privateKey": "8f2a55949038a9610f50fb23b5883af3b4ecb3c3bb792cbcefbd1542c692be63", "comment": "private key and this comment are ignored. In a real chain, the private key should NOT be stored", "balance": "0xad78ebc5ac6200000" }, "627306090abaB3A6e1400e9345bC60c78a8BEf57": { "privateKey": "c87509a1c067bbde78beb793e6fa76530b6382a4c0241e5e4a9ec0a0f44dc0d3", "comment": "private key and this comment are ignored. In a real chain, the private key should NOT be stored", "balance": "90000000000000000000000" }, "f17f52151EbEF6C7334FAD080c5704D77216b732": { "privateKey": "ae6ae8e5ccbfb04590405997ee2d52d2b330726137b875053c36d94e974d162f", "comment": "private key and this comment are ignored. In a real chain, the private key should NOT be stored", "balance": "90000000000000000000000" } }, "number":"0x0", "gasUsed":"0x0", "parentHash":"0x0000000000000000000000000000000000000000000000000000000000000000" }

Amanullah68 (Wed, 23 Sep 2020 12:09:42 GMT):

Screenshot from 2020-09-23 17-09-23.png

Amanullah68 (Wed, 23 Sep 2020 12:10:23 GMT):
I saw my transaction here in ethelio light explorer but not on rinkeby.etherscan

Amanullah68 (Thu, 24 Sep 2020 04:30:28 GMT):
Have you checked it?

lucassaldanha (Thu, 24 Sep 2020 04:32:28 GMT):
Not yet. I won't be able to look at it today, but could you also post the config file for the the node (or the CLI options that you are using to run it).

lucassaldanha (Thu, 24 Sep 2020 04:33:47 GMT):
The file that you shared before is the genesis file.

Amanullah68 (Thu, 24 Sep 2020 04:34:12 GMT):
https://besu.hyperledger.org/en/stable/Tutorials/Permissioning/Create-Permissioned-Network/#3-get-address-for-node-1

Amanullah68 (Thu, 24 Sep 2020 04:34:23 GMT):
I'm following this tutorial

Amanullah68 (Thu, 24 Sep 2020 04:35:25 GMT):
I run the node through command which is specified in the tutorial

lucassaldanha (Thu, 24 Sep 2020 04:35:34 GMT):
But this tutorial isn't about running a node on Rinkeby. To run a node on rinkeby, you'll need to change some of the config.

lucassaldanha (Thu, 24 Sep 2020 04:35:39 GMT):
https://besu.hyperledger.org/en/stable/HowTo/Get-Started/Starting-node/#run-a-node-on-rinkeby-testnet

lucassaldanha (Thu, 24 Sep 2020 04:36:03 GMT):
First and foremost, you'll need to start with the genesis file for Rinkeby :)

lucassaldanha (Thu, 24 Sep 2020 04:36:29 GMT):
(or just specify Rinkeby in the --network option)

Amanullah68 (Thu, 24 Sep 2020 04:36:38 GMT):
but I'm putting chainId=4 which is for rinkeby

Amanullah68 (Thu, 24 Sep 2020 04:37:08 GMT):
Can't add both genesis file as well --network sam time in command line

lucassaldanha (Thu, 24 Sep 2020 04:37:23 GMT):
Yeah, but the genesis file is what defines the "origin" of a network. If you aren't using a Rinkeby compatible genesis file, you won't be able to successfully be a part of the network

Amanullah68 (Thu, 24 Sep 2020 04:38:07 GMT):
okay, I will tried with --network instead of genesis file

Amanullah68 (Thu, 24 Sep 2020 05:16:08 GMT):
Do we still apply permissions in our network?

Amanullah68 (Thu, 24 Sep 2020 05:16:44 GMT):
By using --network=rinkeby instead of using genesis file?

lucassaldanha (Thu, 24 Sep 2020 05:17:07 GMT):
Yep, as long as you set the permissioning config options

Amanullah68 (Thu, 24 Sep 2020 05:17:29 GMT):
okay, thanks

lucassaldanha (Thu, 24 Sep 2020 05:17:44 GMT):
Let me know how it goes!

Amanullah68 (Thu, 24 Sep 2020 05:17:59 GMT):
sure

Amanullah68 (Thu, 24 Sep 2020 05:19:07 GMT):
besu --data-path=data --network=rinkeby --logging=DEBUG --permissions-nodes-config-file-enabled --permissions-accounts-config-file-enabled --rpc-http-enabled --rpc-http-api=ADMIN,ETH,NET,PERM,CLIQUE,WEB3 --host-allowlist="*" --rpc-http-cors-origins="*"

Amanullah68 (Thu, 24 Sep 2020 05:19:58 GMT):

Screenshot from 2020-09-24 10-19-44.png

Amanullah68 (Thu, 24 Sep 2020 05:20:20 GMT):
It's not importing any block

lucassaldanha (Thu, 24 Sep 2020 05:21:19 GMT):
Probably because you have added the node permissioning option without setting a node permissioning file to specify the nodes that you want to trust.

lucassaldanha (Thu, 24 Sep 2020 05:21:43 GMT):
Using permissioning in a public network can be tricky and is a quite advanced use case.

lucassaldanha (Thu, 24 Sep 2020 05:22:11 GMT):
If you enable node permissioning but don't trust any nodes, it won't connect to any other nodes. Therefore, it can't receive blocks.

Amanullah68 (Thu, 24 Sep 2020 05:23:16 GMT):
Yeah, most probably you are right. I will remove node-permissioning

Amanullah68 (Thu, 24 Sep 2020 05:23:35 GMT):
But I want to add permissioning

lucassaldanha (Thu, 24 Sep 2020 05:23:44 GMT):
Node permissioning?

Amanullah68 (Thu, 24 Sep 2020 05:23:50 GMT):
yeah

Amanullah68 (Thu, 24 Sep 2020 05:24:03 GMT):
for security

lucassaldanha (Thu, 24 Sep 2020 05:24:24 GMT):
Permissioning isn't really a security feature. For security I'd recommend using a firewall.

Amanullah68 (Thu, 24 Sep 2020 05:25:02 GMT):
Do you think besu is still in it's initial stage, I can't found documentation really helpful

lucassaldanha (Thu, 24 Sep 2020 05:25:05 GMT):
Node permissioning is more about defining a logical topology of your

lucassaldanha (Thu, 24 Sep 2020 05:25:05 GMT):
Node permissioning is more about defining the topology of your network

Amanullah68 (Thu, 24 Sep 2020 05:25:11 GMT):
No help on google

Amanullah68 (Thu, 24 Sep 2020 05:25:32 GMT):
okay, let me try without node-permissioning

Amanullah68 (Thu, 24 Sep 2020 05:25:56 GMT):
What's the actual purpose of permissioning?

lucassaldanha (Thu, 24 Sep 2020 05:26:41 GMT):
I don't think Besu is in its initial stages. Quite the opposite. Most features are production ready and we have had great feedback on our documentation.

Amanullah68 (Thu, 24 Sep 2020 05:29:46 GMT):
Received Wire DISCONNECT (UNKNOWN) from peer: PeerInfo{version=5, clientId='Parity-Ethereum/v2.7.2-stable-2662d19-20200206/x86_64-unknown-linux-gnu/rustc1.41.0', capabilities=[eth/62, eth/63, par/1, par/2, par/3, par/4, pip/1], port=30303, nodeId=0xdc7bec22e1d1eefdd30e64d59af9f5741c033ca4446793886ace402b774152d85c6810e3d3528d67e78f283a068f5102e413343342860b367703380dae03d224}

lucassaldanha (Thu, 24 Sep 2020 05:32:31 GMT):
I think it will probably be easier if you explain us your use case. If we know where you are trying to get we might be able to help you a bit better.

lucassaldanha (Thu, 24 Sep 2020 05:32:53 GMT):
Why are you setting up these nodes? What is the goal?

lucassaldanha (Thu, 24 Sep 2020 05:32:53 GMT):
Why are you setting up these nodes? What is the goal? What are the requirements?

Amanullah68 (Thu, 24 Sep 2020 05:38:48 GMT):
I'm just trying to create my own permissioned network so that only those account performed transactions which are white listed

lucassaldanha (Thu, 24 Sep 2020 05:39:32 GMT):
If all you need is account permissioning, you can just disable node permissioning.

lucassaldanha (Thu, 24 Sep 2020 05:42:06 GMT):
but on a public network, anyone can send transactions. So even though your node won't accept transactions from accounts that aren't allowed, you will still import blocks with transaction from other accounts that have been propagated in the network. I'm don't understand why you want to use account permissioning in a public network though. Could you clarify that for me?

Amanullah68 (Thu, 24 Sep 2020 05:45:44 GMT):
okay, Let me clear one thing first.

Amanullah68 (Thu, 24 Sep 2020 05:46:13 GMT):
Do besu allow permissioning in public network

Amanullah68 (Thu, 24 Sep 2020 05:46:15 GMT):
?

Amanullah68 (Thu, 24 Sep 2020 05:46:50 GMT):
Is Besu helpful for creating ethereum private network?

Amanullah68 (Thu, 24 Sep 2020 05:47:13 GMT):
How Besu is helpful for me in public network

Amanullah68 (Thu, 24 Sep 2020 05:47:24 GMT):
Just clear me that

lucassaldanha (Thu, 24 Sep 2020 05:52:22 GMT):
> Do besu allow permissioning in public network? Yes, Besu allow permissioning in public networks. But using permissioning in a public network is an advanced use case. > Is Besu helpful for creating ethereum private network? Yes, you can use Besu for creating a private network. As any other Ethereum client. > How Besu is helpful for me in public network? In a public network Besu will do the same as any other Ethereum client. Because this is how other clients can interop.

lucassaldanha (Thu, 24 Sep 2020 05:56:04 GMT):
I have to go now. I'm sorry I couldn't help you more. I have a suggestion though. It feels like you don't understand the concepts behind what you are using. Try watching some of our webinar that explain how permissioning works and maybe it will help you see if this is what you really need for your use case. It is hard for us to help you more without having a clear view of what you want to achieve. :)

Amanullah68 (Thu, 24 Sep 2020 06:13:55 GMT):
I have a project where there are lot of participants involve. I have created it in public network.

Amanullah68 (Thu, 24 Sep 2020 06:14:41 GMT):
I'm just trying to connect it with my own created node instead of directly connected with public network.

Amanullah68 (Thu, 24 Sep 2020 06:15:35 GMT):
I also want to put restriction on any account anytime so that it can't perform the transaction further more.

Amanullah68 (Thu, 24 Sep 2020 06:17:06 GMT):
Simply banned the account to perform transactions

Amanullah68 (Thu, 24 Sep 2020 06:18:18 GMT):
Currently I'm simply trying to run my node connected with rinkeby and just pass ethers between account and want to see the transaction in rinkeby.etherscan

Amanullah68 (Thu, 24 Sep 2020 06:21:07 GMT):
Simply trying to run a node, on metamask connect with my network, then send ether from one account to another upon successful transaction it will redirect me to rinkeby.etherscan where I can see my tx.

Amanullah68 (Thu, 24 Sep 2020 06:23:23 GMT):
Just the issue here I'm facing is, I can't see my successful transaction on rinkeby.etherscan but can see confirmation on etherlite explorer

Amanullah68 (Thu, 24 Sep 2020 06:45:47 GMT):
besu --data-path=data --networrinkeby --permissions-accounts-config-file-enabled --rpc-http-enabled --rpc-http-api=ADMIN,ETH,NET,PERM,CLIQUE,WEB3 --host-allowlist="*" --rpc-http-cors-origins="*"

Amanullah68 (Thu, 24 Sep 2020 06:45:59 GMT):
LOok I'm using this command

Amanullah68 (Thu, 24 Sep 2020 06:46:29 GMT):

Screenshot from 2020-09-24 11-46-16.png

Amanullah68 (Thu, 24 Sep 2020 06:48:02 GMT):
Look it's not synching

Amanullah68 (Thu, 24 Sep 2020 06:48:16 GMT):
I removed node permissioning

pogchamp (Thu, 24 Sep 2020 07:56:54 GMT):
Hi if i run more nodes in private ethereum it can be faster the per transaction blocked? or not?

nyshnt (Thu, 24 Sep 2020 08:01:06 GMT):
Has joined the channel.

nyshnt (Thu, 24 Sep 2020 08:01:07 GMT):
Hi everyone, I deployed an ERC 20 contract on besu. I am getting error "Wrong chainId" while sending transaction using web3.eth.sendSignedTransaction(). Please help!

aaltenbernd (Thu, 24 Sep 2020 08:08:53 GMT):
Thanks, that's exactly what I found out too. I think, I will go with the second option. Thanks, for the confirmation! :)

shemnon (Thu, 24 Sep 2020 15:31:56 GMT):
I'm not sure what is being asked. More nodes won't change the amount of time between blocks or the amount of transactions allowed per block.

timbeiko (Thu, 24 Sep 2020 20:35:56 GMT):
:besu: :mega: *Besu 1.5.5 is out!* :mega: :besu: *Release notes & download link: https://github.com/hyperledger/besu/releases/1.5.5* :star2: Highlights :star2: - The new version of the web3js-eea library (v0.10) supports the onchain privacy group management changes made in Besu v1.5.3 - Added debug_getBadBlocks JSON-RPC API to analyze and detect consensus flaws. - Fixed a long-standing issue with getting logs. This will be helpful for people wanting to validate Eth2 deposit contracts off Goerli with Besu.

shemnon (Thu, 24 Sep 2020 22:39:51 GMT):
Not a web3.js expert, but my guess is you need to set chainId in the call to `signTransaction` - https://web3js.readthedocs.io/en/v1.2.4/web3-eth-accounts.html#id6

shemnon (Thu, 24 Sep 2020 22:40:03 GMT):
Their gitter may be a better place to get more specific support - https://gitter.im/ethereum/web3.js

pogchamp (Fri, 25 Sep 2020 05:19:00 GMT):
Hi what is more faster in transaction IBFT2.0 or Proof of work (ethash)?

shemnon (Fri, 25 Sep 2020 05:48:14 GMT):
Neither is strictly faster. I don't recommend ethash outside cryptocurrency use.

shemnon (Fri, 25 Sep 2020 05:49:11 GMT):
IBFT2 has the advantage of more stable block times whereas ethash's blocks are on a poisson distribution (i.e. unpredictable). ethash blocks will settle at around 13 seconds. IBFT blocks can be configured for different block times. We benchmark at 2 seconds.

pogchamp (Fri, 25 Sep 2020 07:03:31 GMT):
Hi what do you recommended specs for Proof of work in order to maintain the private network and the speed transaction?

nyshnt (Fri, 25 Sep 2020 07:08:51 GMT):
Thanks, i fixed it. Issue was with "ethereumjs-tx" for signing transaction, by default it takes main network with chainId 1. Changed chainId with "ethereumjs-common" package.

shemnon (Fri, 25 Sep 2020 13:45:22 GMT):
Again, I don't recommend Proof of Work for private networks. The amount of hashpower to ensure security would rival mainnet. Use IBFT2 or Clique, you can keep the signing keys secure. Also, those consensus mechanisms have options to reduce the block time whereas ethash really doesn't and will always settle on 13-15 seconds.

shemnon (Fri, 25 Sep 2020 13:45:22 GMT):
Again, I don't recommend Proof of Work for private networks. The amount of hashpower needed to ensure security would rival mainnet. Use IBFT2 or Clique, you can keep the signing keys secure. Also, those consensus mechanisms have options to reduce the block time whereas ethash really doesn't and will always settle on 13-15 seconds.

EmcLab (Fri, 25 Sep 2020 16:57:16 GMT):
Has joined the channel.

EmcLab (Fri, 25 Sep 2020 16:57:16 GMT):
Hi is it possible to run private besu without miner? In document there are other consensus algorithm supported by besu in addition to POW.

shemnon (Fri, 25 Sep 2020 17:06:01 GMT):
Mostly yes. The other algorithms (clique and IBFT) each require a validator instead of a miner. Validator CPU load is much lower than miner CPU load.

shemnon (Fri, 25 Sep 2020 17:06:44 GMT):
Here's the docs section that goes in depth about those to algorithms: https://besu.hyperledger.org/en/stable/Concepts/Consensus-Protocols/Comparing-PoA/

EmcLab (Fri, 25 Sep 2020 17:53:00 GMT):
Sounds good and thanks. between clique and IBFT2.0, the doc says clique does not have immediate finality and may generate forks. Does the clique algorithm converge at the end by merging to mainchain? Or it require manual merge. I did not find more detail in the doc. Other than that, clique algorithm seems more fault tolerant and easier to operate compared with IBFT2.0.

EmcLab (Fri, 25 Sep 2020 18:35:58 GMT):
Also the besu doc says the private network is for testing and development purpose. Can private network also run as production permission based for business?

shemnon (Fri, 25 Sep 2020 18:50:56 GMT):
clique always converges to the chain with the most total difficulty. Clique is easier at the expense of finality. There is no manual merge for clique, the nodes figure it out automatically.

VladLupashevskyi (Fri, 25 Sep 2020 18:52:41 GMT):
Has joined the channel.

VladLupashevskyi (Fri, 25 Sep 2020 19:13:34 GMT):
Hi people, I was researching the IBFT specification and found out that for creating of the new block 66% signatures required, but only 50% votes are enough to add/remove the validator. Which means that 50% (not 66%) of malicious validators is enough to compromise the blockchain, since they can remove non-malicious ones and reach 66% majority. Doesn't it make sense to increase the threshold for voting or am I missing something? Also I was very interested in plugins system, and thought they can be useful with automation of the aforementioned voting, but then I found out that only getter methods are implemented there. I would be happy to contribute and implement voting API for plugins, but I'm not sure that introducing setters there is not against some "conventions" of the plugging architecture. I would be thankful if somebody could shed some light on that.

shemnon (Fri, 25 Sep 2020 21:08:35 GMT):
i'll defer on the consensus question. But I can talm about the plugins. The risk is that any new API becomes a somewhat long-term support commitment. Although admin tasks like adding/removing validators and adding/removing peers do seem reasonable. Because it's a LTS api I expect we will be fairly strict on the review and require it to be laser-focused.

shemnon (Fri, 25 Sep 2020 21:08:35 GMT):
I'll defer on the consensus question. But I can talk about the plugins. The risk is that any new API becomes a somewhat long-term support commitment. Although admin tasks like adding/removing validators and adding/removing peers do seem reasonable. Because it's a LTS API I expect we will be fairly strict on the review and require it to be laser-focused.

shemnon (Fri, 25 Sep 2020 21:39:18 GMT):
Proposal to change Besu to the CalVer versioning system - https://wiki.hyperledger.org/display/BESU/Proposal+-+CalVer+for+Besu+Releases We will discuss this at the next two contributor calls (next Tuesday and the 12/13th of October). If you support it or have concerns please add them to the wiki page.

shemnon (Fri, 25 Sep 2020 21:43:08 GMT):
Agenda for Tuesday's EMEA/AMER contributor call - https://wiki.hyperledger.org/display/BESU/2020-09-29+Besu+Contributor+Call

trent.mohay (Sat, 26 Sep 2020 02:46:35 GMT):
Hi @VladLupashevskyi I'm one of the consensus developers, and I’ll try to answer the 50% vs 66% issue. So, voting _could_ be changed to 66% to match block import, but I’m not sure it materially affects the security of the model. IBFT is based on PBFT, and is designed such that a network will progress in a valid manner, provided < 1/3 of the validators operate as expected. If more than 1/3 of the validators are compromised, no assurances can be made about the network - and all block creation _could_ cease. I.e. you’ve lost control of your network. So, for a byzantine party to have sufficient control to vote in their own validators (i.e. > 50% validators) - the network has already failed its IBFT block creation requirement (that no more than 33% of validators are byzantine). tl;dr: An IBFT network is only guaranteed to be valid if < 1/3 validators are byzantine - which is less than the 50% required to vote in new members.

VladLupashevskyi (Sat, 26 Sep 2020 12:55:42 GMT):
Hi @trent.mohay thank you very much for such a detailed answer :) Now I see that's obvious. Previously I messed up the 66% of non-malicious validators and 33% of malicious ones.

EmcLab (Sat, 26 Sep 2020 20:26:45 GMT):
Hi where can I find the document about how permission works in besu? Also is the purpose of besu just for testing or development of Ethererum mainchain?

shemnon (Sun, 27 Sep 2020 02:01:12 GMT):
https://besu.hyperledger.org/en/stable/Concepts/Permissioning/Permissioning-Overview/

shemnon (Sun, 27 Sep 2020 02:02:10 GMT):
Besu is not jsut for mainchain. It is also for enterprise ethereum chains. Those chains use a Proof of Authority Consensus instead of Proof of Work and have access to addded features like privacy and permissioning.

shemnon (Sun, 27 Sep 2020 02:02:10 GMT):
Besu is not just for mainchain. It is also for enterprise ethereum chains. Those chains use a Proof of Authority Consensus instead of Proof of Work and have access to addded features like privacy and permissioning.

shemnon (Sun, 27 Sep 2020 02:03:30 GMT):
Besu can _also_ be used for mainnet ethereum and classic ethereum. Mainnet compatibility is a feature allowing private networks access to all the current smart contract features and tooling that mainnet has.

arsulegai (Sun, 27 Sep 2020 12:19:13 GMT):
Has joined the channel.

arsulegai (Sun, 27 Sep 2020 12:20:00 GMT):
Hello Besu community from the Hyperledger India Chapter, we are calling for speakers to engage with the community in Asia Pacific, Europe and Africa. Please see our event details here https://www.linkedin.com/feed/update/urn:li:activity:6715897303481372672 Calling the tech enthusiasts, maintainers to be part of it.

coenie (Mon, 28 Sep 2020 08:07:37 GMT):
Morning! When using IBFT2, is the allowed clock drift between validators configurable?

nmvalera (Mon, 28 Sep 2020 16:48:39 GMT):
Has joined the channel.

nmvalera (Mon, 28 Sep 2020 16:48:39 GMT):
Hi Besu team, On Orchestrate we manage private transactions using `priv_distributeRawTransaction` and `eth_sendRawTransaction` for the marking transaction. After `priv_distributeRawTransaction` has returned the ``, we generate the marking transaction and we use `eth_estimateGas` to estimate the gas limit (we do not hard code the gas limit so we keep the execution of the marking transaction as close as possible to a regular public non-marking transaction and we are able adapt to upgrades of the privacy pre-compile), then we sign and send the marking transaction. Up to Besu `1.5.3` this flow is working perfectly fine and the marking transaction ends up being mined. On Besu `1.5.4` & `1.5.5` we get an `Invalid params` error on `eth_estimateGas`. Is this something I should open an issue for on Besu repo? Thanks a lot. Below are some details: - `eth_estimateGas` request: ``` {"jsonrpc":"2.0","id":5,"method":"eth_estimateGas","params":[{"data":"","from":"","to":"0x000000000000000000000000000000000000007e"}]} ``` - `eth_estimateGas` error response on Besu 1.5.5: ``` { "jsonrpc": "2.0", "id": 4, "error": { "code": -32602, "message": "Invalid params" } } ``` - Associated Besu logs ``` {"timestamp":"2020-09-28T16:00:58,621","container":"4801fba336e3","level":"ERROR","thread":"vert.x-worker-thread-18","class":"MainnetTransactionProcessor","message":"Critical Exception Processing Transaction","short_message":" null"} ```

shemnon (Mon, 28 Sep 2020 17:47:49 GMT):
Can you crank up the logging to debug? That should give us the exception.

shemnon (Mon, 28 Sep 2020 17:55:28 GMT):
Actually, the jog4j config is what's hiding the stack trace.

shemnon (Mon, 28 Sep 2020 17:55:28 GMT):
Actually, the log4j config is what's hiding the stack trace.

shemnon (Mon, 28 Sep 2020 17:58:56 GMT):
Adding `${exceptionPattern}` to the message section should help.

EmcLab (Tue, 29 Sep 2020 00:20:22 GMT):
Hi team! for permission based IBFT chain, what is the min number of nodes required to form a chain? Also is there React Native support of besu? I mean integrating Besu into React Native mobile app with wallet and ability to do transaction (not include mining/validator and storage of the whole database).

shemnon (Tue, 29 Sep 2020 01:06:02 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=phPR9cFYhoMc2tyGd) Minimum is 4 - https://besu.hyperledger.org/en/stable/HowTo/Configure/Consensus-Protocols/IBFT/#minimum-number-of-validators

shemnon (Tue, 29 Sep 2020 01:06:19 GMT):
Minimum is 4 - https://besu.hyperledger.org/en/stable/HowTo/Configure/Consensus-Protocols/IBFT/#minimum-number-of-validators

shemnon (Tue, 29 Sep 2020 01:06:52 GMT):
As for react.js, that depends on the library you use to communicate with Besu. I believe that web3.js is react friendly.

shemnon (Tue, 29 Sep 2020 01:06:52 GMT):
As for react native, that depends on the library you use to communicate with Besu. I believe that web3.js is react friendly.

shemnon (Tue, 29 Sep 2020 01:12:31 GMT):
There have been no changes to the RPC call itself for all of 1 5.x, so some other change caused it.

shemnon (Tue, 29 Sep 2020 01:12:56 GMT):
If you are using the quickstart can you find the log-config.xml and change `"short_message":"%throwable{short.message}"` to `"short_message":"%throwable"

EmcLab (Tue, 29 Sep 2020 04:54:50 GMT):
Hi, what is the hardware requirement for IBFT2.0 validator?

coenie (Tue, 29 Sep 2020 06:02:54 GMT):
Morning! When using IBFT2, is the allowed clock drift between validators configurable?

nmvalera (Tue, 29 Sep 2020 08:21:31 GMT):
Thanks this what I get ``` validator1-bootnode_1 | {"timestamp":"2020-09-29T08:20:13,842","container":"14d4328c4a9d","level":"DEBUG","thread":"vert.x-worker-thread-19","class":"JsonRpcHttpService","message":"JSON-RPC request -> eth_estimateGas", "exception":"","short_message":""} validator1-bootnode_1 | {"timestamp":"2020-09-29T08:20:13,854","container":"14d4328c4a9d","level":"DEBUG","thread":"vert.x-worker-thread-19","class":"PrivacyPrecompiledContract","message":"Processing private transaction 0x0821e577dfd3ee436f058137bdba6e58870c16898d72a1e47deca9946971de48 in privacy group 0x2772e4ac43f9d28f2572184bddbfde5ba9797dea0dc843cd9a8cf511314f8790", "exception":"","short_message":""} validator1-bootnode_1 | {"timestamp":"2020-09-29T08:20:13,854","container":"14d4328c4a9d","level":"ERROR","thread":"vert.x-worker-thread-19","class":"MainnetTransactionProcessor","message":"Critical Exception Processing Transaction", "exception":" java.lang.NullPointerException validator1-bootnode_1 | at org.hyperledger.besu.ethereum.privacy.PrivateStateRootResolver.resolveLastStateRoot(PrivateStateRootResolver.java:40) validator1-bootnode_1 | at org.hyperledger.besu.ethereum.mainnet.precompiles.privacy.PrivacyPrecompiledContract.compute(PrivacyPrecompiledContract.java:157) validator1-bootnode_1 | at org.hyperledger.besu.ethereum.mainnet.MainnetMessageCallProcessor.executePrecompile(MainnetMessageCallProcessor.java:133) validator1-bootnode_1 | at org.hyperledger.besu.ethereum.mainnet.MainnetMessageCallProcessor.start(MainnetMessageCallProcessor.java:61) validator1-bootnode_1 | at org.hyperledger.besu.ethereum.mainnet.AbstractMessageProcessor.process(AbstractMessageProcessor.java:163) validator1-bootnode_1 | at org.hyperledger.besu.ethereum.mainnet.MainnetTransactionProcessor.process(MainnetTransactionProcessor.java:426) validator1-bootnode_1 | at org.hyperledger.besu.ethereum.mainnet.MainnetTransactionProcessor.processTransaction(MainnetTransactionProcessor.java:339) validator1-bootnode_1 | at org.hyperledger.besu.ethereum.mainnet.MainnetTransactionProcessor.processTransaction(MainnetTransactionProcessor.java:49) validator1-bootnode_1 | at org.hyperledger.besu.ethereum.mainnet.TransactionProcessor.processTransaction(TransactionProcessor.java:253) validator1-bootnode_1 | at org.hyperledger.besu.ethereum.mainnet.TransactionProcessor.processTransaction(TransactionProcessor.java:183) validator1-bootnode_1 | at org.hyperledger.besu.ethereum.transaction.TransactionSimulator.process(TransactionSimulator.java:131) validator1-bootnode_1 | at org.hyperledger.besu.ethereum.transaction.TransactionSimulator.process(TransactionSimulator.java:84) validator1-bootnode_1 | at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.response(EthEstimateGas.java:71) validator1-bootnode_1 | at org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService.process(JsonRpcHttpService.java:602) validator1-bootnode_1 | at org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService.lambda$handleJsonSingleRequest$10(JsonRpcHttpService.java:473) validator1-bootnode_1 | at io.vertx.core.impl.ContextImpl.lambda$executeBlocking$2(ContextImpl.java:313) validator1-bootnode_1 | at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) validator1-bootnode_1 | at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) validator1-bootnode_1 | at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) validator1-bootnode_1 | at java.base/java.lang.Thread.run(Unknown Source) validator1-bootnode_1 | ","short_message":" null"} ```

Amanullah68 (Tue, 29 Sep 2020 09:23:03 GMT):
Do we apply permissions in rinkeby public network?

shemnon (Tue, 29 Sep 2020 15:49:44 GMT):
Not too heavy, that depends on teh chain load. t3.medium has worked, sometimes smaller. 2CPUs and 4GibBwould be the lower limit I think, but 8GiB is better.

shemnon (Tue, 29 Sep 2020 15:49:44 GMT):
Not too heavy, that depends on teh chain load. t3.medium has worked, sometimes smaller. 2CPUs and 4GiB would be the lower limit I think, but 8GiB is better.

shemnon (Tue, 29 Sep 2020 15:49:44 GMT):
Not too heavy, that depends on the chain load. t3.medium has worked, sometimes smaller. 2CPUs and 4GiB would be the lower limit I think, but 8GiB is better.

shemnon (Tue, 29 Sep 2020 15:54:11 GMT):
Logged as issue 1404 - https://github.com/hyperledger/besu/issues/1404

lucassaldanha (Tue, 29 Sep 2020 19:49:40 GMT):
Besu's permissioning behaviour is the same for public or private network. It will follow the configuration provided by the user. This link explains how permissioning works: https://besu.hyperledger.org/en/latest/Concepts/Permissioning/Permissioning-Overview/

trent.mohay (Tue, 29 Sep 2020 22:41:49 GMT):
Hey @coenie, when using IBFT2 with Besu, the timestamp in a block must not be more than 1 second ahead of the local node's system clock - this value is not current configurable.

trent.mohay (Tue, 29 Sep 2020 22:41:49 GMT):
Hey @coenie, when using IBFT2 with Besu, the timestamp in a block must not be more than 1 second ahead of the local node's system clock - this value is not currently configurable.

coenie (Wed, 30 Sep 2020 13:22:02 GMT):
thanks!

charyorde (Wed, 30 Sep 2020 15:48:33 GMT):
I fired up a node with docker to connect to rinkeby. But can't find the node after querying it

charyorde (Wed, 30 Sep 2020 15:48:40 GMT):
node address: Node address 0x62bd18eb26da0086ff3dc07f3c77b78484efa5c1

charyorde (Wed, 30 Sep 2020 15:48:40 GMT):
Node address 0x62bd18eb26da0086ff3dc07f3c77b78484efa5c1

charyorde (Wed, 30 Sep 2020 15:51:56 GMT):

Screenshot 2020-09-30 at 16.51.38.png

charyorde (Wed, 30 Sep 2020 17:37:51 GMT):
What's Besu private network based upon? That is, https://besu.hyperledger.org/en/stable/Tutorials/Examples/Private-Network-Example/

charyorde (Wed, 30 Sep 2020 17:39:09 GMT):
Can we achieve the same with Quorum?

m.terry (Thu, 01 Oct 2020 02:23:34 GMT):
Has joined the channel.

fgonzalezr (Thu, 01 Oct 2020 04:11:04 GMT):
Has joined the channel.

fgonzalezr (Thu, 01 Oct 2020 04:11:04 GMT):
hey, anyone who can mentor me? im interested in learning more about besu

Amanullah68 (Thu, 01 Oct 2020 05:25:53 GMT):
Go through documentation and try to build different networks

Amanullah68 (Thu, 01 Oct 2020 05:26:34 GMT):
and post your queries here if any, hopefully you got reasonable answer

arash009 (Thu, 01 Oct 2020 07:43:07 GMT):
Can you clarify what you mean by you cant find the node?

arash009 (Thu, 01 Oct 2020 07:45:41 GMT):
Besu uses Orion as its Private Transaction Manager for the purpose of transfering the private payload. You can find more information here https://besu.hyperledger.org/en/stable/Tutorials/Privacy/Configuring-Privacy/ GoQuorum is a seperate Go based client that has similar privacy offerings. Which to use depends on your use case and requirements.

Amanullah68 (Thu, 01 Oct 2020 07:55:46 GMT):
I'm using IBFT private network, using chainId=4 but my node not syncing, why?

Amanullah68 (Thu, 01 Oct 2020 07:56:04 GMT):

Screenshot from 2020-10-01 12-55-50.png

Amanullah68 (Thu, 01 Oct 2020 07:56:30 GMT):
I tried few times but same issue

Amanullah68 (Thu, 01 Oct 2020 12:12:40 GMT):

Screenshot from 2020-10-01 17-12-27.png

Amanullah68 (Thu, 01 Oct 2020 12:24:32 GMT):
Creating private network but nodes not syncing

Amanullah68 (Thu, 01 Oct 2020 12:24:44 GMT):
https://besu.hyperledger.org/en/stable/Tutorials/Privacy/Configuring-Privacy/

epiccoolguy (Thu, 01 Oct 2020 12:50:11 GMT):
Has joined the channel.

epiccoolguy (Thu, 01 Oct 2020 13:26:08 GMT):
Hi -- I'm running into a hard to figure out issue with Besu + Orion running in Kubernetes. The setup I'm running with is 4 validators (IBFT, doubling as RPC, one as bootnode) + 4 orion nodes on AKS. On multiple deployment attempts so far, I've always had one validator node being unable to find the bootnode (and subsequently not connecting to the others). The faulty validator just gets stuck in a loop of peer searching and waiting for peers. The validator connects properly to its enclave, but any (private) transactions sent are never mined (because there's no peers connected?). Deleting the pod and having Kubernetes recreate it allows the validator to properly connect to the peers and function as expected. Could someone point me in the right direction to figure out why the validator never connects until the pod is recreated? Here's an excerpt of the output that's repeatedly printed in the logs: ``` 2020-10-01 12:02:58.945+00:00 | vert.x-eventloop-thread-1 | DEBUG | LivenessCheck | Invoking liveness check. 2020-10-01 12:02:59.974+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2020-10-01 12:02:59.975+00:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2020-10-01 12:03:04.975+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2020-10-01 12:03:04.975+00:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2020-10-01 12:03:09.511+00:00 | vert.x-eventloop-thread-0 | DEBUG | PeerDiscoveryController | Peer table refresh triggered by insufficient peers 2020-10-01 12:03:09.511+00:00 | vert.x-eventloop-thread-0 | DEBUG | RecursivePeerRefreshState | Start peer search. 2020-10-01 12:03:09.511+00:00 | vert.x-eventloop-thread-0 | DEBUG | RecursivePeerRefreshState | Skipping bonding round because no candidates are available 2020-10-01 12:03:09.511+00:00 | vert.x-eventloop-thread-0 | DEBUG | RecursivePeerRefreshState | Iterative peer search complete. 0 peers processed over 1 rounds. 2020-10-01 12:03:09.975+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2020-10-01 12:03:09.976+00:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2020-10-01 12:03:14.976+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2020-10-01 12:03:14.976+00:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2020-10-01 12:03:19.977+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2020-10-01 12:03:19.977+00:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2020-10-01 12:03:24.977+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2020-10-01 12:03:24.977+00:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2020-10-01 12:03:28.945+00:00 | vert.x-eventloop-thread-1 | DEBUG | LivenessCheck | Invoking liveness check. 2020-10-01 12:03:29.977+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2020-10-01 12:03:29.978+00:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2020-10-01 12:03:34.978+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2020-10-01 12:03:34.978+00:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2020-10-01 12:03:39.511+00:00 | vert.x-eventloop-thread-0 | DEBUG | PeerDiscoveryController | Peer table refresh triggered by insufficient peers 2020-10-01 12:03:39.512+00:00 | vert.x-eventloop-thread-0 | DEBUG | RecursivePeerRefreshState | Start peer search. 2020-10-01 12:03:39.512+00:00 | vert.x-eventloop-thread-0 | DEBUG | RecursivePeerRefreshState | Skipping bonding round because no candidates are available 2020-10-01 12:03:39.512+00:00 | vert.x-eventloop-thread-0 | DEBUG | RecursivePeerRefreshState | Iterative peer search complete. 0 peers processed over 1 rounds. ```

epiccoolguy (Thu, 01 Oct 2020 13:26:08 GMT):
Hi -- I'm running into a hard to figure out issue with Besu + Orion running in Kubernetes. The setup I'm running with is 4 validators (IBFT2, doubling as RPC, one as bootnode) + 4 orion nodes on AKS. On multiple deployment attempts so far, I've always had one validator node being unable to find the bootnode (and subsequently not connecting to the others). The faulty validator just gets stuck in a loop of peer searching and waiting for peers. The validator connects properly to its enclave, but any (private) transactions sent are never mined (because there's no peers connected?). Deleting the pod and having Kubernetes recreate it allows the validator to properly connect to the peers and function as expected. Could someone point me in the right direction to figure out why the validator never connects until the pod is recreated? Here's an excerpt of the output that's repeatedly printed in the logs: ``` 2020-10-01 12:02:58.945+00:00 | vert.x-eventloop-thread-1 | DEBUG | LivenessCheck | Invoking liveness check. 2020-10-01 12:02:59.974+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2020-10-01 12:02:59.975+00:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2020-10-01 12:03:04.975+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2020-10-01 12:03:04.975+00:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2020-10-01 12:03:09.511+00:00 | vert.x-eventloop-thread-0 | DEBUG | PeerDiscoveryController | Peer table refresh triggered by insufficient peers 2020-10-01 12:03:09.511+00:00 | vert.x-eventloop-thread-0 | DEBUG | RecursivePeerRefreshState | Start peer search. 2020-10-01 12:03:09.511+00:00 | vert.x-eventloop-thread-0 | DEBUG | RecursivePeerRefreshState | Skipping bonding round because no candidates are available 2020-10-01 12:03:09.511+00:00 | vert.x-eventloop-thread-0 | DEBUG | RecursivePeerRefreshState | Iterative peer search complete. 0 peers processed over 1 rounds. 2020-10-01 12:03:09.975+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2020-10-01 12:03:09.976+00:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2020-10-01 12:03:14.976+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2020-10-01 12:03:14.976+00:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2020-10-01 12:03:19.977+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2020-10-01 12:03:19.977+00:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2020-10-01 12:03:24.977+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2020-10-01 12:03:24.977+00:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2020-10-01 12:03:28.945+00:00 | vert.x-eventloop-thread-1 | DEBUG | LivenessCheck | Invoking liveness check. 2020-10-01 12:03:29.977+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2020-10-01 12:03:29.978+00:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2020-10-01 12:03:34.978+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2020-10-01 12:03:34.978+00:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2020-10-01 12:03:39.511+00:00 | vert.x-eventloop-thread-0 | DEBUG | PeerDiscoveryController | Peer table refresh triggered by insufficient peers 2020-10-01 12:03:39.512+00:00 | vert.x-eventloop-thread-0 | DEBUG | RecursivePeerRefreshState | Start peer search. 2020-10-01 12:03:39.512+00:00 | vert.x-eventloop-thread-0 | DEBUG | RecursivePeerRefreshState | Skipping bonding round because no candidates are available 2020-10-01 12:03:39.512+00:00 | vert.x-eventloop-thread-0 | DEBUG | RecursivePeerRefreshState | Iterative peer search complete. 0 peers processed over 1 rounds. ```

epiccoolguy (Thu, 01 Oct 2020 13:26:08 GMT):
Hi -- I'm running into a hard to figure out issue with Besu + Orion running in Kubernetes. The setup I'm running with is 4 validators (IBFT2, doubling as RPC, one as bootnode) + 4 orion nodes on AKS. On multiple deployment attempts so far, I've had at most one validator node being unable to find the bootnode (and subsequently not connecting to the others). The faulty validator just gets stuck in a loop of peer searching and waiting for peers. The validator connects properly to its enclave, but any (private) transactions sent are never mined (because there's no peers connected?). Deleting the pod and having Kubernetes recreate it allows the validator to properly connect to the peers and function as expected. Could someone point me in the right direction to figure out why sometimes on of the validators does not connect until the pod is recreated? Here's an excerpt of the output that's repeatedly printed in the logs: ``` 2020-10-01 12:02:58.945+00:00 | vert.x-eventloop-thread-1 | DEBUG | LivenessCheck | Invoking liveness check. 2020-10-01 12:02:59.974+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2020-10-01 12:02:59.975+00:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2020-10-01 12:03:04.975+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2020-10-01 12:03:04.975+00:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2020-10-01 12:03:09.511+00:00 | vert.x-eventloop-thread-0 | DEBUG | PeerDiscoveryController | Peer table refresh triggered by insufficient peers 2020-10-01 12:03:09.511+00:00 | vert.x-eventloop-thread-0 | DEBUG | RecursivePeerRefreshState | Start peer search. 2020-10-01 12:03:09.511+00:00 | vert.x-eventloop-thread-0 | DEBUG | RecursivePeerRefreshState | Skipping bonding round because no candidates are available 2020-10-01 12:03:09.511+00:00 | vert.x-eventloop-thread-0 | DEBUG | RecursivePeerRefreshState | Iterative peer search complete. 0 peers processed over 1 rounds. 2020-10-01 12:03:09.975+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2020-10-01 12:03:09.976+00:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2020-10-01 12:03:14.976+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2020-10-01 12:03:14.976+00:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2020-10-01 12:03:19.977+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2020-10-01 12:03:19.977+00:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2020-10-01 12:03:24.977+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2020-10-01 12:03:24.977+00:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2020-10-01 12:03:28.945+00:00 | vert.x-eventloop-thread-1 | DEBUG | LivenessCheck | Invoking liveness check. 2020-10-01 12:03:29.977+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2020-10-01 12:03:29.978+00:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2020-10-01 12:03:34.978+00:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2020-10-01 12:03:34.978+00:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2020-10-01 12:03:39.511+00:00 | vert.x-eventloop-thread-0 | DEBUG | PeerDiscoveryController | Peer table refresh triggered by insufficient peers 2020-10-01 12:03:39.512+00:00 | vert.x-eventloop-thread-0 | DEBUG | RecursivePeerRefreshState | Start peer search. 2020-10-01 12:03:39.512+00:00 | vert.x-eventloop-thread-0 | DEBUG | RecursivePeerRefreshState | Skipping bonding round because no candidates are available 2020-10-01 12:03:39.512+00:00 | vert.x-eventloop-thread-0 | DEBUG | RecursivePeerRefreshState | Iterative peer search complete. 0 peers processed over 1 rounds. ```

epiccoolguy (Thu, 01 Oct 2020 13:49:18 GMT):

validator2-0.txt

epiccoolguy (Thu, 01 Oct 2020 13:49:21 GMT):

validator3-0.txt

epiccoolguy (Thu, 01 Oct 2020 13:49:21 GMT):

validator4-0.txt

epiccoolguy (Thu, 01 Oct 2020 13:49:25 GMT):

validator1-0.txt

shemnon (Thu, 01 Oct 2020 19:15:44 GMT):
This address is what the ethereum account address of the node's private key would be. The node address is not always the coinbase address when mining. There is a separate CLI flag for this.

lucassaldanha (Thu, 01 Oct 2020 20:04:47 GMT):
Using chainId 4 means that you are trying to connect to the Rinkeby network. I believe Rinkeby uses POA Clique consensus, so you won't be able to successfully join the network with a node running IBFT.

lucassaldanha (Thu, 01 Oct 2020 20:05:31 GMT):
Do you get any error in the logs? Can you provide any more info to help us understand what is happening?

lucassaldanha (Thu, 01 Oct 2020 20:10:04 GMT):
@fgonzalezr you want a step-by-step tutorial, take a look at this Besu Essentials course https://learn.consensys.net/catalog/info/id:195

dgt1nsty (Fri, 02 Oct 2020 14:30:37 GMT):
Has joined the channel.

Amanullah68 (Sat, 03 Oct 2020 04:30:59 GMT):
same issue with 2018

Amanullah68 (Sat, 03 Oct 2020 04:55:02 GMT):

Screenshot from 2020-10-03 09-54-48.png

Amanullah68 (Sat, 03 Oct 2020 04:55:22 GMT):

Screenshot from 2020-10-03 09-55-12.png

Amanullah68 (Sat, 03 Oct 2020 05:00:23 GMT):

Screenshot from 2020-10-03 10-00-10.png

Amanullah68 (Sat, 03 Oct 2020 12:53:46 GMT):
IBFT private network is not syncing?

Amanullah68 (Sat, 03 Oct 2020 12:54:10 GMT):

Screenshot from 2020-10-03 09-54-48.png

Amanullah68 (Sat, 03 Oct 2020 12:54:10 GMT):

Screenshot from 2020-10-03 10-00-10.png

Amanullah68 (Sat, 03 Oct 2020 12:54:10 GMT):

Screenshot from 2020-10-03 09-55-12.png

EmcLab (Sun, 04 Oct 2020 06:34:16 GMT):
Hi, for a private chain with IBFT2, what kind of token is used on chain? Can the facial value of token be arbitrary? ex, equal to $1.

Amanullah68 (Mon, 05 Oct 2020 04:50:32 GMT):
Hi, IBFT2 private network is not syching, is this besu version issue or anything else? I'm using latest version

Amanullah68 (Mon, 05 Oct 2020 04:52:02 GMT):
https://besu.hyperledger.org/en/latest/Tutorials/Private-Network/Create-IBFT-Network/

Amanullah68 (Mon, 05 Oct 2020 04:53:20 GMT):
I'm following this tutorial

Amanullah68 (Mon, 05 Oct 2020 04:59:24 GMT):
No sync target, waiting for peers: 3

Amanullah68 (Mon, 05 Oct 2020 05:00:10 GMT):

Screenshot from 2020-10-05 09-59-47.png

hanseh (Mon, 05 Oct 2020 09:40:17 GMT):
we updated the default requesttimeoutseconds in the config from 4 to 10. this is for load testing the besu private setup. afterwards, we are getting this error : Replacement transaction underpriced. Any ideas?

shemnon (Mon, 05 Oct 2020 16:52:32 GMT):
You are sending a transaction with the same nonce, and it is already waiting in the memory pool. Does this network use Ether or is it zero cost? If it is not zero cost simply increas your gas cost by 10% and it will have priority over th eold transaction.

shemnon (Mon, 05 Oct 2020 16:53:46 GMT):
An alternative is that you are preparing a new transaction with an incomplete view of the memory pool and are picking the next nonce off of old data. One approach I've used is to make sure that only one node emits transactions for each account, so it's recollection of the nonces is always up to date.

EmcLab (Tue, 06 Oct 2020 04:21:14 GMT):
someone posted this year running a Ether full node using a rasperry pi 4 with 4GB RAM quard core CORTEX, USB3 500GB SSD

EmcLab (Tue, 06 Oct 2020 04:21:14 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=3PyEMnXn4vo5C22yL) for validator, does validator quantity matter? for example, one 8GB RAM validate vs 2 x 4GB validators. Which one is better?

shemnon (Tue, 06 Oct 2020 14:52:47 GMT):
I would stick with 8GiB for validators.

Sandeepk40 (Wed, 07 Oct 2020 04:27:14 GMT):
Has joined the channel.

schroedingerscode (Wed, 07 Oct 2020 18:18:56 GMT):
Has joined the channel.

SuperSeiyan (Thu, 08 Oct 2020 03:51:29 GMT):
Has joined the channel.

rjones (Thu, 08 Oct 2020 18:16:17 GMT):
One ping only

shemnon (Thu, 08 Oct 2020 19:13:23 GMT):
Huh?

rjones (Thu, 08 Oct 2020 19:21:06 GMT):
[I was testing the discord bridge and didn't delete my message](https://www.youtube.com/watch?v=jr0JaXfKj68)

shemnon (Thu, 08 Oct 2020 19:25:57 GMT):
ok

EmcLab (Fri, 09 Oct 2020 06:40:26 GMT):
Hi besu folks, can I issue ERC20 token on besu chain running IBFT2.0?

Amanullah68 (Fri, 09 Oct 2020 11:31:12 GMT):
JSON RPC connection refused when calling from other servers

Amanullah68 (Fri, 09 Oct 2020 11:31:40 GMT):
Works perfectly in local server

Amanullah68 (Fri, 09 Oct 2020 11:31:47 GMT):
bin/besu --data-path=data --genesis-file=../genesis.json --permissions-nodes-config-file-enabled --permissions-accounts-config-file-enabled --rpc-http-enabled --rpc-http-api=ETH,NET,IBFT,WEB3,PERM,EEA,PRIV --host-allowlist="*" --rpc-http-cors-origins="all" --privacy-enabled --privacy-url=http://127.0.0.1:8888 --privacy-public-key-file=Orion/nodeKey.pub --min-gas-price=0

Amanullah68 (Fri, 09 Oct 2020 11:32:25 GMT):
but not from outside local

shemnon (Fri, 09 Oct 2020 15:15:38 GMT):
add ` --rpc-http-host=0.0.0.0` - by default it is 127.0.0.1 (which is why only local can get it)

shemnon (Fri, 09 Oct 2020 15:16:26 GMT):
All of Besu's networking flags default safe (off, localhost, no remote access, etc).

shemnon (Fri, 09 Oct 2020 15:16:26 GMT):
All of Besu's RPC flags default safe (off, localhost, no remote access, etc).

rjones (Fri, 09 Oct 2020 16:46:51 GMT):
ping

Amanullah68 (Mon, 12 Oct 2020 05:10:07 GMT):
but it will be accessible for anyone, I want to put limitation, only specific ip addresses

EmcLab (Mon, 12 Oct 2020 06:28:41 GMT):
If the validator is in cloud, how to securely store the private key for IBFT2.0? The HSM requires hardware installation which is not possible for a could validator.

EmcLab (Mon, 12 Oct 2020 06:28:41 GMT):
If the validator is in cloud, how to securely store the private key for IBFT2.0? The HSM requires hardware installation which is not possible for a cloud validator.

atoulme (Mon, 12 Oct 2020 20:27:12 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=PwkkfTMFvYk7MBcHy) that's not really a Besu question, but a HSM question. 2 options that are practical: use AWS KMS to encrypt symmetrically your keys. Or look at Unbound for a cloud HSM system. If you intend to use your HSM with a cloud solution, you need more thinking and prep, like VPN to your data center.

trent.mohay (Mon, 12 Oct 2020 21:22:12 GMT):
Hi @EmcLab, There's a lot of pieces to the puzzle, but @atoulme's suggestion is a good place to start. Having said that - there's a few things worth considering: 1. Besu doesn't natively support using HSM for the node key - you'll need to write (or get?) a plugin to let you do this. 2. The HSM and Besu node need to be geographically close together - ideally in the same data centre, otherwise the latency in the link means cryptographic operations are sufficiently slow that nodes don't connect, and blocks don't get mined.

robbiek.eth (Tue, 13 Oct 2020 01:43:47 GMT):
Has joined the channel.

shemnon (Tue, 13 Oct 2020 01:44:04 GMT):
your best bet then is to look at the `--rpc-http-authentication` series of options. You can require standard http authentication or JWT authentication. You can also turn on https via the `--rpc-http-tls` series flags and require client certificates.

shemnon (Tue, 13 Oct 2020 01:45:14 GMT):
It's also best to put machines accessing it in a subnet and firewall off access to the RPC ports using firewall rules.

Manzik (Tue, 13 Oct 2020 03:30:10 GMT):
Has joined the channel.

al0818 (Tue, 13 Oct 2020 17:37:43 GMT):
Has joined the channel.

al0818 (Tue, 13 Oct 2020 17:37:44 GMT):
Hi what do we need to setup, in genesis file for ibftconfig like chainID do we need to set that in to unique id? or we can use the 2018 chainID?

atoulme (Tue, 13 Oct 2020 18:27:39 GMT):
you should start here: https://besu.hyperledger.org/en/stable/Tutorials/Private-Network/Create-IBFT-Network/

al0818 (Wed, 14 Oct 2020 05:19:42 GMT):
i notice that chainID is 2018 (dev) is it okay to use that in production?

Amanullah68 (Wed, 14 Oct 2020 10:01:31 GMT):
Hi, is the explorer is accessible for all or restricted to only limted users like if there any login/signup page in private-permissioned network?

Amanullah68 (Wed, 14 Oct 2020 10:02:13 GMT):
I'm using Alethio Light explorer which iss accessible for all if they have link of it

timbeiko (Wed, 14 Oct 2020 14:42:25 GMT):
:besu: :warning: *Besu 20.10.0-RC1 is out* :warning: :besu: _This is the first release candidate towards our 20.10.0 so there may still be some rough edges. Stability issues have been observed on mainnet and are being worked on. If you want to try the latest and greatest, this has it, but please wait until 20.10.0 to update production nodes._ :star2: Highlights :star2: - Support added for the YOLOv2 ephemeral testnet - Added a few debugging APIs: debug_standardTraceBlockToFile and debug_standardTraceBadBlockToFile - Added --start-block and --end-block to the blocks import command - Added support for multi-tenancy when using the early access feature of onchain privacy group management - Fixed a longstanding eth/65 issue - … and last but not least, as you’ve probably noticed, Besu is moving to CalVer! Here is a short explanation, and expect a proper blog post soon: https://wiki.hyperledger.org/display/BESU/Proposal+-+CalVer+for+Besu+Releases

mwaser (Wed, 14 Oct 2020 15:24:37 GMT):
Has joined the channel.

mwaser (Wed, 14 Oct 2020 15:24:37 GMT):
I'm trying to use the Hyperledger Besu Quickstart on Azure. Deployment is failing -- it looks like due to a missing package (docker-ce) Building dependency tree... Reading state information... Package docker-ce is not available, but is referred to by another package. This may mean that the package is missing, has been obsoleted, or is only available from another source Installing docker compose... besu-quickstart/besu-quickstart/list.sh nbesu-quickstart/docker-compose.yml

joshuafernandes (Wed, 14 Oct 2020 20:17:32 GMT):
Thanks @mwaser we'll have a look and push a fix out

shemnon (Wed, 14 Oct 2020 20:30:16 GMT):
I would recommend a different chainid. It prevents replay across different chains, probably not an issue in private networks but if you run a testnet to try out contracts you want to make sure the chainIDs are different so you don't accidentally deploy dev work.

al0818 (Thu, 15 Oct 2020 16:16:50 GMT):
is anynumber will do for chainID?

atoulme (Thu, 15 Oct 2020 16:18:28 GMT):
any would do. Pick a positive integer. 10 is used by quorum a bunch so stay out of that too.

atoulme (Thu, 15 Oct 2020 16:18:42 GMT):
It won't matter as you are going to run a permissioned private network.

atoulme (Thu, 15 Oct 2020 16:19:11 GMT):
It just will help you avoid confusing your dev stuff locally and your network. Give it something meaningful - it's its id.

al0818 (Thu, 15 Oct 2020 16:19:36 GMT):
we use the chainID 2018 in IBFT2 setup, is that okay?

al0818 (Thu, 15 Oct 2020 16:24:12 GMT):
thanks atoulme

atoulme (Thu, 15 Oct 2020 16:24:54 GMT):
again just an id you pick. 2018 is used by the dev network of besu when you play with it so it may be confusing down the road, is all.

atoulme (Thu, 15 Oct 2020 16:25:24 GMT):
(just basically saying, again, what Danno is saying)

al0818 (Thu, 15 Oct 2020 16:26:56 GMT):
Hi what is the proper work for the server bootnode, when one of the node is down how do we handle that?

al0818 (Thu, 15 Oct 2020 16:39:03 GMT):
how would i know that my chainID is not the same in the other IBFT2 Setup?

MarkThompsonPH (Thu, 15 Oct 2020 16:40:23 GMT):
Has joined the channel.

MarkThompsonPH (Thu, 15 Oct 2020 16:40:23 GMT):
Hey guys. I have a dev IBFT Besu network with 2 boot nodes and 3 worker nodes. When I remove one of the worker nodes for maintenance, the network seems to stall, with the boot nodes stating "Waiting for 1 peers to connect". How do I take a single node out for maintenance without bringing the network to a halt?

atoulme (Thu, 15 Oct 2020 17:01:57 GMT):
you can see all the genesis files of besu here: https://github.com/hyperledger/besu/tree/master/config/src/main/resources Other than that, there is no hard and fast rule.

aaltenbernd (Thu, 15 Oct 2020 17:21:17 GMT):
Hey, I'm currently running a permissioned IBFT Besu Network where membership is managed by a different application by modifying the local permissions file. When an account added a transaction to the blockchain and gets later removed from the accounts-allowlist i'm running into troubles when a new node likes to join the network and tries to sync with the other nodes. Then a block exists were a transaction is signed by this unallowed account. The result is a InvalidBlockException and the node can't connect to the network. It is possible to disable "--permissions-accounts-config-file-enabled", sync with the network, and restart again with "--permissions-accounts-config-file-enabled" enabled. But this is not very user friendly. Is there any suggestion to that issue? Thanks for you help. :)

mwaser (Thu, 15 Oct 2020 18:41:30 GMT):
Thank you! If you could let me know when it is good to go, I would be very appreciative.

lucassaldanha (Thu, 15 Oct 2020 19:54:35 GMT):
This is not the expected behaviour. Local account permissioning shouldn't be applied on block importing. If you take a look at the diagram at the bottom of this page https://besu.hyperledger.org/en/latest/Concepts/Permissioning/Permissioning-Overview/, you'll see that we don't expect local permissioning to affect block import. Would you please share the configuration options of you Besu node> And also what version you are using? Cheers!

trent.mohay (Thu, 15 Oct 2020 20:08:25 GMT):
Hi @MarkThompsonPH, When you say the network appears to stall - I'm assuming that means that no blocks are being produced. For IBFT to continue to mine blocks, its important that each validator has at least 1 connection to another validator, such that all validators are connected to each other (even if its in a long chain). If a validator is left orphaned, i.e. connected to the network, but cannot see another validator, it will not be able to participate in consensus. In a large network, losing a single validator (either through orphaning or failure) may be ok, as there's still enough validators communicating to continue mining, but in a small network (eg 4 or 5 validators) losing a single validator may be sufficient to halt the network. Best way to ensure propagation: * Always have at least 6 validators (allowing for 1 validator to go offline at anytime) * Make sure all validators connect to each other, either through initial bootnode setting, or by connecting them via the add_peer json rpc

trent.mohay (Thu, 15 Oct 2020 21:53:51 GMT):
Can I rephrase some of that? In a network of 4 validators, you are able to lose 1 validator, and continue operating - with a network of 6 validators, you can actually lose 2 validators and continue. My apologies, the prior statements were made before coffee.

joshuafernandes (Thu, 15 Oct 2020 22:48:57 GMT):
:thumbsup: We've got plans to update that and bring it in line with the what we have here https://consensys.net/quorum/developers/ (click the blue 'Get started' button)

joshuafernandes (Thu, 15 Oct 2020 22:50:04 GMT):
If its time critical running 'npx quorum-dev-quickstart' on your VM in Azure will get you going with the same setup

joshuafernandes (Thu, 15 Oct 2020 22:50:04 GMT):
If its time critical running `npx quorum-dev-quickstart` on your VM in Azure will get you going with the same setup

MarkThompsonPH (Fri, 16 Oct 2020 00:43:50 GMT):
Hey Trent. That's for the help. We have network of 5 nodes, 2 of which are acting as boot nodes. The worker nodes all start up with the --bootnodes parameter set to include the enode URLs of the two bootnodes. In this case, are the non-bootnodes validators? When I shut down a single node, the bootnodes complained with ``` nioEventLoopGroup-3-8 | INFO | WaitForPeersTask | Waiting for 1 peers to connect ```. I thought the network in this state would be able to lose one node without losing consensus. I'm quite new to this system and don't yet know all of the characteristics. Even if I have two boot nodes, should I have at least 4 non-boot nodes? Thanks again for your advice.

aaltenbernd (Fri, 16 Oct 2020 06:57:18 GMT):
Hey, sure: `../../besu-1.5.0/bin/besu --data-path=data --genesis-file=../genesis.json --permissions-nodes-config-file-enabled --permissions-accounts-config-file-enabled --rpc-http-enabled --rpc-http-api=ADMIN,PERM,ETH,NET,IBFT,TXPOOL --rpc-ws-enabled --rpc-ws-api=ADMIN,ETH,NET,PERM,IBFT --host-allowlist="*" --rpc-http-cors-origins="*" --p2p-port=30307 --rpc-http-port=8553 --rpc-ws-port=8554`

aaltenbernd (Fri, 16 Oct 2020 06:57:25 GMT):
It's version 1.5

aaltenbernd (Fri, 16 Oct 2020 06:57:48 GMT):
I tried also besu-20.10.0-RC1

MarkThompsonPH (Fri, 16 Oct 2020 10:13:20 GMT):
As it turns out, we had sync mode set to FAST, instead of FULL. I believe this caused the issue.

mwaser (Fri, 16 Oct 2020 14:24:02 GMT):
I'll probably wait until Monday. People wouldn't be happy if I went non-standard. :-P

mwaser (Fri, 16 Oct 2020 20:29:42 GMT):
Hi Joshua, I did try the npx command on both the Azure virtual machine that the quickstart tried to set up and on a local vm that was already loaded with node/npm/npx already loaded. The Azure vm failed due to an npx not found error. The local vm failed because it couldn't find ~/.npm/_npx/3221 Did I want to do a git clonefrom somewhere first?

marcdk (Sun, 18 Oct 2020 05:21:12 GMT):
Hi @ftgha, @shemnon Did you you guys manage to get Besu running on the s390x? I've gotten so far as to build the JNI and start Besu, but I get the following fatal error: `A fatal error has been detected by the Java Runtime Environment:` ``` # Problematic frame: # C [librocksdbjni-linuxs390x.so+0x25360e] Java_org_rocksdb_BlockBasedTableConfig_newTableFactoryHandle+0xae6 ``` (I can send a complete error log file) I've also tried with a pervious version of RocksDB as per https://github.com/facebook/rocksdb/issues/5487, but I run into other problems :/ Kind Regards

marcdk (Sun, 18 Oct 2020 05:21:12 GMT):
Hi @ftgha, @shemnon Did you guys manage to get Besu running on the s390x? I've gotten so far as to build the JNI and start Besu, but I get the following fatal error: `A fatal error has been detected by the Java Runtime Environment:` ``` # Problematic frame: # C [librocksdbjni-linuxs390x.so+0x25360e] Java_org_rocksdb_BlockBasedTableConfig_newTableFactoryHandle+0xae6 ``` (I can send a complete error log file) I've also tried with a pervious version of RocksDB as per https://github.com/facebook/rocksdb/issues/5487, but I run into other problems :/ Kind Regards

marcdk (Sun, 18 Oct 2020 05:21:12 GMT):
Hi @ftgha, @shemnon Did you guys manage to get Besu running on the s390x? I've gotten so far as to build the JNI and start Besu, but I get the following fatal error: `A fatal error has been detected by the Java Runtime Environment:` ``` # Problematic frame: # C [librocksdbjni-linuxs390x.so+0x25360e] Java_org_rocksdb_BlockBasedTableConfig_newTableFactoryHandle+0xae6 ``` (I can send a complete error log file) I've also tried with a pervious version of RocksDB as per https://github.com/facebook/rocksdb/issues/5487, but I ran into other problems :/ Kind Regards

marcdk (Sun, 18 Oct 2020 05:21:12 GMT):
Hi @ftgha, @shemnon Did you guys manage to get Besu running on the s390x? I've gotten so far as to build the JNI and start Besu, but I get the following fatal error: `A fatal error has been detected by the Java Runtime Environment:` ``` # Problematic frame: # C [librocksdbjni-linuxs390x.so+0x25360e] Java_org_rocksdb_BlockBasedTableConfig_newTableFactoryHandle+0xae6 ``` (I can send a complete error log file) I've also tried with a previous version of RocksDB as per https://github.com/facebook/rocksdb/issues/5487, but I ran into other problems :/ Kind Regards

joshuafernandes (Sun, 18 Oct 2020 21:20:19 GMT):
The `npx quorum-dev-quickstart` is our new standard going forward (has been for a few weeks :) ). Its precursor is https://github.com/ConsenSys/besu-sample-networks (The azure setup has one of the examples here) What version of nodejs do you have locally? I believe it needs 10+ to run

joshuafernandes (Sun, 18 Oct 2020 21:21:17 GMT):
Essentially its a dev/test setup with 5 nodes on a VM with our monitoring dashboards and such built it

mackcom (Mon, 19 Oct 2020 17:30:22 GMT):
Hi all, I'm testing besu node on moder ETC testnet, and it looks like it's synced correctly, I see that it's in sync according to this: https://mordor.fork.fault.dev/, however I see that blockscout's explorer is ahead on a different block: https://blockscout.com/etc/mordor. @shemnon it seems like it's syncing correctly, could it be that blockscout is using a different (non-correct) fork?

shemnon (Mon, 19 Oct 2020 17:50:14 GMT):
Blockscout is using a buggy version of core-geth.

shemnon (Mon, 19 Oct 2020 17:52:31 GMT):
They have a node running a not really Thanos version. Claims to fork at 2520000 but actually is using full DAGs

mackcom (Mon, 19 Oct 2020 17:54:30 GMT):
Ok, so I think besu is syncing correctly, have you seen any issues?

shemnon (Mon, 19 Oct 2020 17:54:51 GMT):
These two are following real thanos - https://blockexplorer.one/etc/mordor https://explorer.anyblock.tools/ethereum/classic/mordor

shemnon (Mon, 19 Oct 2020 17:55:02 GMT):
not on the besu end.

shemnon (Mon, 19 Oct 2020 17:55:58 GMT):
can you review https://github.com/hyperledger/besu/pull/1474 so it gets in tomorrow's RC2 release?

Amanullah68 (Tue, 20 Oct 2020 06:19:20 GMT):
Hi, Why I can't see my transactions in rinkeyby.etherscan ?

Amanullah68 (Tue, 20 Oct 2020 06:22:07 GMT):
I saw them in lite explorer but not in rinkeby.etherscan

lucassaldanha (Tue, 20 Oct 2020 06:49:04 GMT):
@aaltenbernd FYI I have raised a ticket to track this: https://github.com/hyperledger/besu/issues/1476

lucassaldanha (Tue, 20 Oct 2020 06:49:09 GMT):
We'll get to it ASAP :)

BilelZaghdoudi (Tue, 20 Oct 2020 11:46:30 GMT):
Hey, we are currently running a an IBFT Besu Network with 4 validators on 4 VMs. We are conducting a performance study on

BilelZaghdoudi (Tue, 20 Oct 2020 12:08:33 GMT):
Hey, We are currently running an IBFT 2.0 Besu Network with 4 validators on 4 separate VMs. Our objectif right now is to run some benchmark testing to get the network performance results for executing a scenario which is : ERC20 transfert transaction with some additional data like id_transfert... Above 4000 transactions we are having issues with executing transactions : for example if 5000 txs are sent to the JSON-RPC HTTP provider, only about 4300 Txs are executed and confirmed in blocks the rest of transactions are lost... Any transactions that we sent above this limit are always lost and we can see that just those 4300 are added to Blocks... Is there a limit of the JSON-RPC HTTP? How to explain these results?? and how to resolve the issue ??

shemnon (Tue, 20 Oct 2020 16:31:45 GMT):
have your transactions been committed to a block? I don't think etherscan provides visibility into the mempool.

shemnon (Tue, 20 Oct 2020 16:33:01 GMT):
Are you adjusting the gas limit or the block time or the memory pool size? It could be that the nodes memory pools are full because of low block bandwidth and the transactions are being dropped.

shemnon (Tue, 20 Oct 2020 19:21:27 GMT):
The initial max tx pool size (set by `--tx-pool-max-size`) is 4096. So if a large amount of TXes were loaded in all at once the blockchain may get one or two blocks out with the TXes acounting for the 204 beyond the limit. Alternatives are to (a) increase the tx pool max size or (b) dribble in new TXes at the same rate they are committed to the blockchain, after an initial load of a thousand or so.

jonathansmirnoff (Tue, 20 Oct 2020 20:06:58 GMT):
Has joined the channel.

jonathansmirnoff (Tue, 20 Oct 2020 20:06:58 GMT):
Hi! How are you? I follow the example of create a besu network with docker from here: https://besu.hyperledger.org/en/1.2.0/Tutorials/Private-Network-Quickstart/ It is working perfect. I have detected an issue, possible a configuration issue. I could deploy contracts with 0 gas cost but when I try to exec transaction I received this message: Gas price below configured minimum gas price I checked this https://besu.hyperledger.org/en/stable/HowTo/Configure/FreeGas/ and it is supposed to be OK configure but I don't understand where is the problem.

jonathansmirnoff (Tue, 20 Oct 2020 20:29:15 GMT):
Also when I call to eth_gasPrice, I have this result: 0x3e8. And I expected 0.

shemnon (Wed, 21 Oct 2020 00:42:09 GMT):
Do you have the `--min-gas-price` flag set (https://besu.hyperledger.org/en/stable/HowTo/Configure/FreeGas/#3-start-besu-with-a-minimum-gas-price-of-zero)? This error should only occur in this case if the min gas price is greater than zero.

aaltenbernd (Wed, 21 Oct 2020 06:52:47 GMT):
Cool! Thank you very much :)

BilelZaghdoudi (Wed, 21 Oct 2020 09:43:28 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=mNt66Dc35gMDJmLbs) For the moment we are executing the scenario with loading Txs at once and see how besu is treating a large amount of TXes, the time needed for that and the number of blocks... For example when we loaded 3000 TXes at once, it took 8,63 s to be accepted (get the hash of all txes back) and transactions are splitted on 9 Blocks in respect for gas transaction and block gas limit. Next experimentation scenarios for sure it will be adjusting metrics like you said.

BilelZaghdoudi (Wed, 21 Oct 2020 09:45:32 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=BmCGmfynB3uevZrjg) We will try your a and b proposals and get back to you with results us i think thats a good way to test it...

jonathansmirnoff (Wed, 21 Oct 2020 11:16:21 GMT):
I think that yes, I follow this: https://github.com/ConsenSys/besu-sample-networks. And I started the network with the command `./run.sh` and I check that all the nodes have the min-gas-price flag. I don't know where I doing wrong the things...

jonathansmirnoff (Wed, 21 Oct 2020 11:16:42 GMT):
I think that yes, I follow this: https://github.com/ConsenSys/besu-sample-networks. And I started the network with the command ./run.sh and I check that all the nodes have the min-gas-price flag. I don't know where I doing wrong the things...

timbeiko (Wed, 21 Oct 2020 18:42:30 GMT):
:besu: :relieved: Besu 20.10.0-RC2 is out :relieved: :besu: :warning: This is our second release candidate towards our 20.10.0 release. It should be more stable than RC1, but still isn’t intended for production use. :warning: :star2: Highlights :star2: - Reverted our eth/65 fix and having it enabled by default as we keep investigating :man_detective_medium_light_skin_tone: - Support for the latest ETC fork, Thanos - Added the Open Telemetry Java agent to report traces to a remote backend - Added EvmTool binary to the distribution, which is a CLI that can execute EVM bytecode and execute ethereum state tests :hammer_and_wrench: You can get the release here: https://github.com/hyperledger/besu/releases/tag/20.10.0-RC2

Jonathancj (Wed, 21 Oct 2020 23:56:40 GMT):
Has joined the channel.

mwaser (Thu, 22 Oct 2020 12:01:34 GMT):
Node version is 14.4 It is running now. Thank you! I'm seeing seven peers though (i.e. eight nodes) validator[1-4] member[1-3]besu rpcnode

EmcLab (Fri, 23 Oct 2020 02:21:01 GMT):
Hi after a private besu network running IBFT2.0 is up and running, is it OK to shut all nodes down for a couple of month and restart the network when there is traffic?

shemnon (Fri, 23 Oct 2020 03:19:43 GMT):
perfectly fine. Getting the nodes talking together to restart the network is the only difficult part if thieir IPs changed underneath in the interim.

charyorde (Sun, 25 Oct 2020 09:29:15 GMT):
Can anyone suggest where to get Besu/ETH developers?

charyorde (Sun, 25 Oct 2020 09:55:24 GMT):
@arash009 I checked rinkeby.etherscan.io but can't find the node ID listed

ramkri123 (Sun, 25 Oct 2020 21:12:59 GMT):
Has joined the channel.

ramkri123 (Sun, 25 Oct 2020 21:12:59 GMT):
https://github.com/ConsenSys/besu-kubernetes/tree/master/kubectl/quorum-besu/ibft2-with-privacy

ramkri123 (Sun, 25 Oct 2020 21:13:10 GMT):
I tried bringing up a k8s deployment using ./deploy.sh

ramkri123 (Sun, 25 Oct 2020 21:13:19 GMT):
besu node-1 0/1 Running 0 87s besu node1privacy-0 0/1 Error 4 4m30s besu node2privacy-0 0/1 CrashLoopBackOff 4 4m

ramkri123 (Sun, 25 Oct 2020 21:13:45 GMT):
besu node1privacy-0 0/1 CrashLoopBackOff 10 34m besu node2privacy-0 0/1 CrashLoopBackOff 10 34m

ramkri123 (Sun, 25 Oct 2020 21:14:41 GMT):
The system is very unstable and often (every 2 minutes) goes into the above state

ramkri123 (Sun, 25 Oct 2020 21:15:08 GMT):
Anything I am missing or is a known issue. Thanks much in advance.

arash009 (Mon, 26 Oct 2020 05:52:44 GMT):
That shows you the transactions that have been processed on the network and ethereum accounts that they were from and to. Your node ID will not show up there.

atoulme (Mon, 26 Oct 2020 17:05:38 GMT):
Are you looking to hire?

sankara 5 (Tue, 27 Oct 2020 08:44:54 GMT):
Has joined the channel.

sankara 5 (Tue, 27 Oct 2020 08:44:55 GMT):
I have tried to run hyperledger besu for ETC from docker , i am getting issue with param "--data-path" as invalid parameter. if i tried using -v,not sure where the data is getting saved., help me ojn this i used below command sudo docker run -d -p 9535:9535 -v /nodeetc/data:/root hyperledger/besu:latest --rpc-http-enabled --rpc-ws-enabled --network=classic --rpc-http-host=0.0.0.0 --rpc-http-port=9535 --sync-mode=FULL --rpc-http-api=ETH,NET,WEB3,TRACE

sankara 5 (Tue, 27 Oct 2020 08:44:55 GMT):
I have tried to run hyperledger besu for ETC from docker , I am getting issue with param "--data-path" as invalid parameter. if i tried using -v,not sure where the data is getting saved., help me on this i used below command sudo docker run -d -p 9535:9535 -v /nodeetc/data:/root hyperledger/besu:latest --rpc-http-enabled --rpc-ws-enabled --network=classic --rpc-http-host=0.0.0.0 --rpc-http-port=9535 --sync-mode=FULL --rpc-http-api=ETH,NET,WEB3,TRACE

shemnon (Tue, 27 Oct 2020 13:45:36 GMT):
In just over an hour (1:15 to be precise) we will have Besu Office Hours (FKA the contributor call). After business we will have an open discussion on Ethereum Hard Forks. - https://wiki.hyperledger.org/display/BESU/2020-10-27+Office+Hours

shemnon (Tue, 27 Oct 2020 13:48:11 GMT):
The --data-path in a docker container would be the path _within_ the container. so I would change to `-v /nodeetc/data:/data` and add to besu `--data-path=/data`. On your host system the data would wind up in /nodeetc/data.

shemnon (Tue, 27 Oct 2020 13:49:06 GMT):
I think /nodeetc/data needs to exist prior to the call.

shemnon (Tue, 27 Oct 2020 13:49:22 GMT):
I would also recommend --sync-mode=FAST unless you explicitly need all archive data.

shemnon (Tue, 27 Oct 2020 13:49:22 GMT):
I would also recommend `--sync-mode=FAST` unless you explicitly need all archive data.

shemnon (Tue, 27 Oct 2020 13:51:30 GMT):
Full sync will take about 2 weeks, fast sync. Fast sync ~6 hours on a i3.xlarge. Not sure how that translates to your docker image.

shemnon (Tue, 27 Oct 2020 15:00:16 GMT):
Office Hours zoom - https://consensys.zoom.us/j/199741148

sankara 5 (Wed, 28 Oct 2020 06:19:25 GMT):
Thanks shemnon, for the help. I didn't get how to set the a --data-path=/data to besu. Will connect on besu hours on mentioned link.

sankara 5 (Wed, 28 Oct 2020 06:19:25 GMT):
Thanks shemnon, for the help. I didn't get how to set the a --data-path=/data to besu. Will connect on besu hours on mentioned link, around 8.30PM IST.

shemnon (Wed, 28 Oct 2020 13:37:52 GMT):
That meeting already happened.

shemnon (Wed, 28 Oct 2020 13:38:07 GMT):
next office hours is apac time in two weeks.

sankara 5 (Wed, 28 Oct 2020 13:55:50 GMT):
oh ok, can you give me an idea on how to set the path --data-path=/data to besu

sankara 5 (Wed, 28 Oct 2020 13:55:50 GMT):
oh ok, can you give me an idea on how to set the path --data-path=/data to besu? I have tried with sudo docker run -d -p 9535:9535 -v /nodeetc/data:/data hyperledger/besu:latest --rpc-http-enabled --rpc-ws-enabled --network=classic --rpc-http-host=0.0.0.0 --rpc-http-port=9535 --sync-mode=FULL --rpc-http-api=ETH,NET,WEB3,TRACE. it is synching. But data is getting saved in root

sankara 5 (Wed, 28 Oct 2020 13:55:50 GMT):
oh ok, can you give me an idea on how to set the path --data-path=/data to besu? I have tried with sudo docker run -d -p 9535:9535 -v /nodeetc/data:/data hyperledger/besu:latest --rpc-http-enabled --rpc-ws-enabled --network=classic --rpc-http-host=0.0.0.0 --rpc-http-port=9535 --sync-mode=FULL --rpc-http-api=ETH,NET,WEB3,TRACE. it is synching. But data is getting saved in root. Please help in setting the besu path. or some commands to do this

shemnon (Wed, 28 Oct 2020 16:33:21 GMT):
just add it to the end, ``` sudo docker run -d -p 9535:9535 -v /nodeetc/data:/data hyperledger/besu:latest --rpc-http-enabled --rpc-ws-enabled --network=classic --rpc-http-host=0.0.0.0 --rpc-http-port=9535 --sync-mode=FULL --rpc-http-api=ETH,NET,WEB3,TRACE --data-path=/data ```

sankara 5 (Wed, 28 Oct 2020 16:54:54 GMT):
Thanks shemon, I have tried the above one and got the below issue and container stopped 2020-10-28 16:53:05.028+00:00 | main | INFO | StaticNodesParser | StaticNodes file /data/static-nodes.json does not exist, no static connections will be created. 2020-10-28 16:53:05.030+00:00 | main | INFO | Besu | Connecting to 0 static nodes. 2020-10-28 16:53:05.041+00:00 | main | INFO | Besu | Security Module: localfile Cannot store generated private key.

somerb (Wed, 28 Oct 2020 18:54:20 GMT):
Has joined the channel.

EmcLab (Wed, 28 Oct 2020 20:44:56 GMT):
Hi Besu folks, to interact with Besu 1.5.0 network such as sending transaction and deploying smart contract, can dapp use web3.js API?

EmcLab (Wed, 28 Oct 2020 21:07:35 GMT):
After besu is started once, there is "key" file generated and it is the private key. How can I find the corresponding public key on command line?

EmcLab (Wed, 28 Oct 2020 21:29:24 GMT):
$besu public-key export --to=pub-key is the command to export public key for a node

shemnon (Wed, 28 Oct 2020 22:42:58 GMT):
`/nodeetc/data` needs to exist and be writable

shemnon (Wed, 28 Oct 2020 22:43:15 GMT):
on the nost

EmcLab (Thu, 29 Oct 2020 06:15:15 GMT):
2 bootnodes are started on a IBFT2 private network. Here is the output of the log:

EmcLab (Thu, 29 Oct 2020 06:15:46 GMT):

EmcLab - Wed Oct 28 2020 23:15:37 GMT-0700 (Pacific Daylight Time).txt

EmcLab (Thu, 29 Oct 2020 06:16:22 GMT):
Is this node running normal?

sankara 5 (Thu, 29 Oct 2020 06:44:02 GMT):
Thanks shemon, only difference I did was , the way of specifying data folder, i have used drive space and it started working, thanks a lot.

sankara 5 (Thu, 29 Oct 2020 13:28:17 GMT):
Hi Shemon,

sankara 5 (Thu, 29 Oct 2020 13:28:17 GMT):
Hi Shemon, node started synching and responding to curl queries as well. But when tried to query from postman getting "message": "Host not authorized." error .Please help me on this.

sankara 5 (Thu, 29 Oct 2020 13:28:17 GMT):
Hi Shemon, node started synching and responding to curl queries as well. But when tried to query from postman getting "message": "Host not authorized." error .Please help me on this. found this --host-allowlist=[,...]... or "*"

EmcLab (Thu, 29 Oct 2020 18:28:05 GMT):
Hi Besu folks, is there a way I can see the log output of running nodes? ibft2 node is started with besu --config-file=myconfig.toml on ssh terminal and gets disconnected after a some time.

shemnon (Thu, 29 Oct 2020 19:36:45 GMT):
You need 4 nodes minimum to produce blocks in IBFT2. So yes, that's normal.

shemnon (Thu, 29 Oct 2020 19:37:52 GMT):
for ssh I would run it as a `nohup` process and pipe the log out to some other location. `nohup &> ~/log.txt`

antonispoulakis (Thu, 29 Oct 2020 21:54:18 GMT):
Hi, I am trying to run the 1.5.5 version of besu on kubernetes using the kubectl template from here: https://github.com/ConsenSys/quorum-kubernetes/tree/master/kubectl/quorum-besu/clique I'm using do-block-storage for the data-path. When I deploy everything, I'm getting an error in the validator1 logs (shown below). The rpc-node and validator2 keep failing on the init stage due to a curl error. ``` Setting logging level to INFO 2020-10-29 21:29:39.841+00:00 | main | INFO | AltBN128PairingPrecompiledContract | Using native alt bn128 2020-10-29 21:29:41.532+00:00 | main | INFO | SECP256K1 | Using native secp256k1 2020-10-29 21:29:41.550+00:00 | main | INFO | Besu | Starting Besu version: besu/v1.5.5/linux-x86_64/oracle_openjdk-java-11 2020-10-29 21:29:42.120+00:00 | main | WARN | TomlConfigFileParser | Write access denied for file at: %s. Configuration modification operations will not be permitted. 2020-10-29 21:29:42.147+00:00 | main | WARN | TomlConfigFileParser | Write access denied for file at: %s. Configuration modification operations will not be permitted. 2020-10-29 21:29:42.157+00:00 | main | WARN | TomlConfigFileParser | Write access denied for file at: %s. Configuration modification operations will not be permitted. 2020-10-29 21:29:42.171+00:00 | main | INFO | StaticNodesParser | StaticNodes file /data/static-nodes.json does not exist, no static connections will be created. 2020-10-29 21:29:42.174+00:00 | main | INFO | Besu | Connecting to 0 static nodes. 2020-10-29 21:29:42.184+00:00 | main | INFO | Besu | Security Module: localfile 2020-10-29 21:29:42.260+00:00 | main | INFO | KeyPairUtil | Loaded public key 0xf32f4f4cfbc10bd83cf496798e59effeeab81772a54823f55918454bc8be34c80a540dcf4bf9466908b5b1a0305458df04b23024f5a0859346ed1eb8f30d448c from /secrets/key 2020-10-29 21:29:42.314+00:00 | main | INFO | RocksDBKeyValueStorageFactory | No existing database detected at /data. Using version 1 2020-10-29 21:29:42.326+00:00 | main | ERROR | RocksDBKeyValueStorageFactory | Failed to retrieve the RocksDB database meta version: /data/DATABASE_METADATA.json (Permission denied) /data/DATABASE_METADATA.json (Permission denied) To display full help: besu [COMMAND] --help ``` I'm thinking maybe it has to do with the `config.toml` permissions config files, which I have left uncommented as I don't understand what they are / how to use/generate them. Thanks!

joshuafernandes (Fri, 30 Oct 2020 03:55:23 GMT):
Hi @antonispoulakis any change to the manifests apart from the version?

joshuafernandes (Fri, 30 Oct 2020 04:05:18 GMT):
Could you explain what `do-block-storage` for the data path is please? That needs to be a path on the local filesystem ie `/data` etc where you mount a PVC or the like

joshuafernandes (Fri, 30 Oct 2020 04:05:18 GMT):
Could you explain what `do-block-storage` for the data path is please? That needs to be a path on the local filesystem ie `/data` etc where you mount a PVC or the like. If you're on Digital Ocean, create a PV using the appropriate storageClass, then a PV claim and mount that to somewhere on the container eg: `/data`. That path is then what you'd specify for `data-dir`

joshuafernandes (Fri, 30 Oct 2020 04:06:58 GMT):
Besu can be configured using cmd line or config file or env vars. In these examples we've gone with with the config file approach ie. config.toml. Details here https://besu.hyperledger.org/en/stable/HowTo/Configure/Using-Configuration-File/

antonispoulakis (Fri, 30 Oct 2020 09:41:41 GMT):
Hi @joshuafernandes. The `do-block-storage` is on Digital Ocean

antonispoulakis (Fri, 30 Oct 2020 09:46:52 GMT):
Hi @joshuafernandes. The `do-block-storage` is on Digital Ocean and we are mounting it as you said. We had to run `chmod` on the data directory for the permissions to be fixed. So, it wasn't a configuration issue. Thanks for the help!

carlosho17 (Fri, 30 Oct 2020 11:20:18 GMT):
Hi folks, is Oracle Java a requirement, or has Besu been tested with openjdk ?

shemnon (Fri, 30 Oct 2020 14:01:28 GMT):
Oracle Java is not a requirement. Java 11+ is. We have docker images for openjdk latest (15 right now), oracle jdk, and graalvm. Oracle is just the default VM right now.

joshuafernandes (Fri, 30 Oct 2020 22:30:44 GMT):
Any JDK is fine, our docker images are openjdk and graalvm - https://github.com/hyperledger/besu/tree/master/docker. We also test with Coretto JDK

EmcLab (Sat, 31 Oct 2020 06:51:49 GMT):
$ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":1}' localhost:8545 curl: (7) Failed to connect to localhost port 8545: Connection refused

EmcLab (Sat, 31 Oct 2020 06:51:49 GMT):
$ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":1}' localhost:8545 curl: (7) Failed to connect to localhost port 8545: Connection refused The connection refused by the node. The config.toml has rpc-http-port and rpc-http-host specified. What is missing here?

carlosho17 (Sat, 31 Oct 2020 10:06:18 GMT):
thank you, I'm finishing an ansible playbook to install besu, and Oracle jdk was extremely difficult to install, I'm relieved now :sweat:

shemnon (Sat, 31 Oct 2020 15:33:37 GMT):
What's rpc-http-host set to? I'd recommend `0.0.0.0`, if you used the actual IP of the host you need to connect to :8545 and not localhost. all zeros will listen on all addresses on the first IPv4 interface.

shemnon (Sat, 31 Oct 2020 15:34:38 GMT):
Also, I'm assuming you aren't in a docker container or k8s, those have weird interactions with exposed ports.

EmcLab (Sat, 31 Oct 2020 21:27:27 GMT):
Hi team, how to specify --host-allowlist in config.toml file? I did the following but was not working (besu won't start) and have to do it in command line as --host-allowlist="ip1", "ip2": host-allowlist="*"

joshuafernandes (Sat, 31 Oct 2020 21:50:26 GMT):
No worries :) We've got a playbook that you can use and customise to suit here https://galaxy.ansible.com/pegasyseng/hyperledger_besu

EmcLab (Sat, 31 Oct 2020 21:55:47 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=d3wgQgXmfLLHdt4XM) Not in docker container. Is there security concern in production when setting rpc-http-host to 0.0.0.0? It is not recommended by besu to set host-allowlist to "*". I am not sure if they are resetting the same param.

shemnon (Mon, 02 Nov 2020 06:12:03 GMT):
``` host-allowlist=["ip1","ip2"] ```

EmcLab (Tue, 03 Nov 2020 06:25:49 GMT):
Hello, how to setup a public ip access of a besu node? So dapp can call via API by http.

joshuafernandes (Tue, 03 Nov 2020 09:49:45 GMT):
:thumbsup:

joshuafernandes (Tue, 03 Nov 2020 09:50:34 GMT):
:thumbsup: that sounds about right Will keep you posted

shemnon (Tue, 03 Nov 2020 14:59:15 GMT):
If you are in docker or k8s besu should sniff it out automatically. you can use `--nat-method=DOCKER` or `--nat-method=KUBERNETES` to help the auto detection as appropriate. If you are behind a residential router `--nat-method=UPNP` will set up the port forwarding.

shemnon (Tue, 03 Nov 2020 15:03:16 GMT):
if you have to manually set up the port forwarding or firewall rules `--p2p-host=` will change the IP address that is advertised to peers, this should be the external address. you will also need to set `--rpc-http-host` to be the IP address that your port forwarding will re-direct to (such as your nodes LAN address, not WAN address). `0.0.0.0` is an easy shortcut to listen to all inbound addresses as it will also open up localhost and 127.0.0.1, but if you specify your lan address localhost won't worn.

shemnon (Tue, 03 Nov 2020 15:04:05 GMT):
If you have multiple network interfaces you will need to set `--p2p-interface` to the network interface you want the P2P to listen to.

EmcLab (Wed, 04 Nov 2020 04:34:20 GMT):
I download the tar file and un-tar it. This probably is the manually setup. Yes, the node is behind a router and needs port forwarding. Also shall reverse proxy (such as nginx) be used for security?

carlosho17 (Wed, 04 Nov 2020 12:04:28 GMT):
Hi there, is there any option to make a 1.5.x node work in a network where validators and bootnodes are 1.4.x ? I wasn't able to get any single block in such scenario trying all versions from 1.5.0 to 1.5.5

shemnon (Wed, 04 Nov 2020 14:35:44 GMT):
Can you share the details of your genesis file and other configuration options?

shemnon (Wed, 04 Nov 2020 14:37:09 GMT):
Also, a set of logs where `--logging=DEBUG` is set as a CLI option (or config.toml has `logging="DEBUG") would help diagnose the issue too.

carlosho17 (Wed, 04 Nov 2020 15:01:13 GMT):
data-path="/data/besu/data" genesis-file="/data/besu/config/besu/genesis.json" host-whitelist=["*"] metrics-enabled=true metrics-host="0.0.0.0" metrics-port="9545" min-gas-price=0 p2p-host="185.180.8.164" # *** You will need to change this to your node IP *** p2p-port=30303 permissions-accounts-contract-address="0x0000000000000000000000000000000000008888" permissions-accounts-contract-enabled=false permissions-nodes-contract-address="0x0000000000000000000000000000000000009999" permissions-nodes-contract-enabled=false privacy-enabled=false #privacy-marker-transaction-signing-key-file="signer.key" #privacy-public-key-file="orion/nodekey.pub" #privacy-url="http://127.0.0.1:8888" # orion clienturl rpc-http-api=["ETH","NET","IBFT","PERM","EEA","PRIV"] rpc-http-cors-origins=["all"] rpc-http-enabled=true rpc-http-host="127.0.0.1" rpc-http-port=8545 rpc-ws-enabled=true rpc-ws-host="0.0.0.0" rpc-ws-port=8546 logging="DEBUG"

carlosho17 (Wed, 04 Nov 2020 15:01:43 GMT):
and a list of bootnodes ... same config.toml works on 1.4.6 , but not on 1.5.x

carlosho17 (Wed, 04 Nov 2020 15:02:26 GMT):
the genesis.json includes a SC

carlosho17 (Wed, 04 Nov 2020 15:02:46 GMT):

carlosho17 - Wed Nov 04 2020 16:02:38 GMT+0100 (hora estándar de Europa central).txt

carlosho17 (Wed, 04 Nov 2020 15:05:48 GMT):
2020-10-31 15:05:52.399+00:00 | vert.x-eventloop-thread-2 | DEBUG | RecursivePeerRefreshState | Received neighbours packet with 12 neighbours 2020-10-31 15:05:52.622+00:00 | nioEventLoopGroup-3-10 | DEBUG | RlpxAgent | Failed to connect to peer 0x82da125409e6dd5e123803aebf6ab4d3507f57ab747242fda065f17f2309d32dc64c6119a7a9017b1285048e8e2e79c85d49b59ae3a05f56d764c9bec7ffd9be: java.util.concurrent.TimeoutException: Timed out waiting to establish connection with peer: 0x82da125409e6dd5e123803aebf6ab4d3507f57ab747242fda065f17f2309d32dc64c6119a7a9017b1285048e8e2e79c85d49b59ae3a05f56d764c9bec7ffd9be 2020-10-31 15:05:52.691+00:00 | vert.x-eventloop-thread-2 | DEBUG | RecursivePeerRefreshState | Bonding round timed out 2020-10-31 15:05:52.691+00:00 | vert.x-eventloop-thread-2 | DEBUG | RecursivePeerRefreshState | Iterative peer search complete. 763 peers processed over 101 rounds. 2020-10-31 15:05:52.697+00:00 | nioEventLoopGroup-3-6 | DEBUG | AbstractHandshakeHandler | Handshake error: Decrypting an incoming handshake message failed 2020-10-31 15:05:52.777+00:00 | nioEventLoopGroup-3-5 | DEBUG | AbstractHandshakeHandler | Sending framed hello 2020-10-31 15:05:52.777+00:00 | nioEventLoopGroup-3-5 | DEBUG | AbstractHandshakeHandler | Successfully wrote hello message 2020-10-31 15:05:52.777+00:00 | nioEventLoopGroup-3-5 | DEBUG | DeFramer | Received HELLO message: PeerInfo{version=5, clientId='qk_node/qk_client 1.0.1.218 0x60836AAA0B794952f134252267168881d5DB6243/v1.9.23-stable/windows-amd64/go1.15.2', capabilities=[qki/63, qki/64, qki/65], port=0, nodeId=0xca8051e1ef435f502276122eb0cfb7b550e2a324c687b6179817797fc78406b5cfe6a7f0e95befd7d0e07b7d37d6c22e78c5ee73cee1c9d601646d55bdab5c3d} 2020-10-31 15:05:52.777+00:00 | nioEventLoopGroup-3-5 | DEBUG | DeFramer | Enable compression for p2pVersion: 5 2020-10-31 15:05:52.777+00:00 | nioEventLoopGroup-3-5 | DEBUG | DeFramer | Disconnecting because no capabilities are shared: PeerInfo{version=5, clientId='qk_node/qk_client 1.0.1.218 0x60836AAA0B794952f134252267168881d5DB6243/v1.9.23-stable/windows-amd64/go1.15.2', capabilities=[qki/63, qki/64, qki/65], port=0, nodeId=0xca8051e1ef435f502276122eb0cfb7b550e2a324c687b6179817797fc78406b5cfe6a7f0e95befd7d0e07b7d37d6c22e78c5ee73cee1c9d601646d55bdab5c3d} 2020-10-31 15:05:52.777+00:00 | nioEventLoopGroup-3-5 | DEBUG | AbstractPeerConnection | Disconnecting (0x03 USELESS_PEER) from PeerInfo{version=5, clientId='qk_node/qk_client 1.0.1.218 0x60836AAA0B794952f134252267168881d5DB6243/v1.9.23-stable/windows-amd64/go1.15.2', capabilities=[qki/63, qki/64, qki/65], port=0, nodeId=0xca8051e1ef435f502276122eb0cfb7b550e2a324c687b6179817797fc78406b5cfe6a7f0e95befd7d0e07b7d37d6c22e78c5ee73cee1c9d601646d55bdab5c3d} 2020-10-31 15:05:53.296+00:00 | nioEventLoopGroup-3-7 | DEBUG | RlpxAgent | Failed to connect to peer 0x7aabc01b2612f6f48be405b4f84b10de0c8e79cbeccb178ca90b3fd51b70c1fcbd98044a2b35fe3ddf39a9cbbb1bc1aa6a1fcf2b80d2fa28b5e0f061f92221f4: io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: /152.136.67.47:30303 2020-10-31 15:05:53.381+00:00 | nioEventLoopGroup-3-6 | DEBUG | RlpxAgent | Failed to connect to peer 0x13f8d1b288694279ba4e9a4fdebd8cb09e970f3f90659707b07b48489134a39e8e3b46e75379386f6d481b94091dae8efcf8cea79110edd40fc386cae2fd73ad: java.util.concurrent.TimeoutException: Timed out waiting to establish connection with peer: 0x13f8d1b288694279ba4e9a4fdebd8cb09e970f3f90659707b07b48489134a39e8e3b46e75379386f6d481b94091dae8efcf8cea79110edd40fc386cae2fd73ad

carlosho17 (Wed, 04 Nov 2020 15:07:05 GMT):
I tried quickly different versions with an ansible playbook ... and it started working as soon as I installed a 1.4.x version (1.4.6 to be more precise)

carlosho17 (Wed, 04 Nov 2020 15:07:50 GMT):
these debug logs correspond to the timeframe where it ran some 1.5.x version (I tried from 1.5.0 to 1.5.5)

carlosho17 (Wed, 04 Nov 2020 15:49:31 GMT):
I've seen this message "Disconnecting because no capabilities are shared:" which shows up after connecting to a bootnode

shemnon (Wed, 04 Nov 2020 15:53:30 GMT):
Are the logs you posted from 1.5.x or 1.4.x?

crypto_beep (Wed, 04 Nov 2020 17:07:53 GMT):
Has joined the channel.

shantaraam (Wed, 04 Nov 2020 17:28:15 GMT):
In case of Besu IBFT, how does one get information about proposer of the block?, In case of quorum ibft , it can be recovered from proposer seal in block.extraData

rai (Wed, 04 Nov 2020 17:56:18 GMT):
@carlosho17 I managed to repo this! I'll be making an issue to track it

carlosho17 (Wed, 04 Nov 2020 17:58:44 GMT):
@shemnon these are logs from 1.5.x when trying to speak to bootnodes that are 1.4

carlosho17 (Wed, 04 Nov 2020 18:11:19 GMT):
I found a similar issue in https://github.com/hyperledger/besu/issues/1533

shemnon (Wed, 04 Nov 2020 18:38:45 GMT):
It can also be extracted from the extra data, but there are a few JSON-RPC APIs that can do that automatically: https://besu.hyperledger.org/en/stable/Reference/API-Methods/#ibft_getvalidatorsbyblockhash https://besu.hyperledger.org/en/stable/Reference/API-Methods/#ibft_getvalidatorsbyblocknumber https://besu.hyperledger.org/en/stable/Reference/API-Methods/#ibft_getsignermetrics You will need to enable the IBFT APIs, ideally on a non-validating node.

shemnon (Wed, 04 Nov 2020 20:11:43 GMT):
Reverse proxy is a good security step. We also have a means to turn on password verification, https client certs, and jwt, although I'd have to ask my teammates how those work.

EmcLab (Wed, 04 Nov 2020 20:29:44 GMT):
Thank you for offering more details, especially jwt. I am using jwt in mobile app and it would be very interesting for me to setup jwt to allow mobile app to talk with besu node/validator. I am new to setup private besu network and is still in the process of learning. Any reading or post would be helpful.

shantaraam (Wed, 04 Nov 2020 21:47:44 GMT):
How does one do it from extraData. Quorum ibft has proposer seal in extradata. But I don't see how could one recover form ibft2 block. Is order of seals somehow deterministic to get proposer seal in extradata

trent.mohay (Wed, 04 Nov 2020 23:10:51 GMT):
Provided you haven't specified a mining beneficiary on the commandline, the coinbase of a block should be the proposers address

shantaraam (Wed, 04 Nov 2020 23:13:10 GMT):
Thanks. that matches my understanding. But want to confirm if that can't be extracted using extraData

trent.mohay (Wed, 04 Nov 2020 23:14:48 GMT):
IBFT2 stores it in the coinbase only, not the extradata

trent.mohay (Wed, 04 Nov 2020 23:17:51 GMT):
What do you need the proposer for? It normally wouldn't mean much outside of the IBFT block-creation process

trent.mohay (Wed, 04 Nov 2020 23:20:04 GMT):
Apologies! The coinbase will always be the proposer's address, regardless of the mining-beneficiary on the cmdline.

shantaraam (Wed, 04 Nov 2020 23:27:37 GMT):
Thanks. Had a application logic to get proposer from quorum ibft. though same thing might work besu. Wanted to know if it is as all possible to determine proposer from extradata. Yes it might not mean much outside of consensus. but it is good to know it can be determined from a given block's data , independent of the history

shantaraam (Wed, 04 Nov 2020 23:27:37 GMT):
Thanks. Had a application logic to get proposer from quorum ibft. though same thing might work with besu. Wanted to know if it is as all possible to determine proposer from extradata. Yes it might not mean much outside of consensus. but it is good to know it can be determined from a given block's data , independent of the history

trent.mohay (Wed, 04 Nov 2020 23:46:21 GMT):
:thumbsup:

mikiasda (Thu, 05 Nov 2020 08:33:05 GMT):
Hi, I am having some problems with chain development using clique with 3 signers

mikiasda (Thu, 05 Nov 2020 08:33:18 GMT):

image.png

mikiasda (Thu, 05 Nov 2020 08:33:44 GMT):
There are 3 nodes and 3 signers, any idea about why is this happening?

mikiasda (Thu, 05 Nov 2020 08:34:26 GMT):

image (1).png

mikiasda (Thu, 05 Nov 2020 08:35:38 GMT):
PoA clique algorithm provide tx finality?

lucassaldanha (Thu, 05 Nov 2020 20:11:13 GMT):
Hi! Clique doesn't provide tx finality. IBFT2 does.

lucassaldanha (Thu, 05 Nov 2020 20:11:34 GMT):
What problem are you talking about? The logs here seems to be fine :)

shemnon (Fri, 06 Nov 2020 02:23:10 GMT):
I think it's the repeated block numbers that are coming from out of order signers, i.e. this is demonstrating a lack of finality. This is a know weakness in Clique which is why we tend to recommend IBFT if you can get the minimum 4 validators.

shemnon (Fri, 06 Nov 2020 02:23:52 GMT):
It also looks like the period is too low. I wouldn't go below 2 (seconds).

shemnon (Fri, 06 Nov 2020 02:25:02 GMT):
and a 200M gas limit... are you load testing?

lucassaldanha (Fri, 06 Nov 2020 03:18:06 GMT):
Gosh, I look at these logs every day and can't spot issues... There is no hope for me... Thanks Danno!

aim8526 (Sat, 07 Nov 2020 16:56:47 GMT):
Has joined the channel.

ramkri123 (Sun, 08 Nov 2020 00:58:38 GMT):
A gentle reminder since didn't hear back from anybody ramkri123 October 25, 2020 2:12 PM https://github.com/ConsenSys/besu-kubernetes/tree/master/kubectl/quorum-besu/ibft2-with-privacy vmware@localhost:~$ kubectl get pods --all-namespaces NAMESPACE NAME READY STATUS RESTARTS AGE besu node1privacy-0 0/1 CrashLoopBackOff 35 169m besu node2privacy-0 0/1 CrashLoopBackOff 35 169m besu orion1-0 1/1 Running 0 169m besu orion2-0 1/1 Running 0 169m besu validator1-0 1/1 Running 0 169m besu validator2-0 1/1 Running 1 169m besu validator3-0 1/1 Running 0 169m besu validator4-0 1/1 Running 1 16 Used the recommended deploy.sh diff --git a/kubectl/quorum-besu/ibft2-with-privacy/statefulsets/node2privacy-statefulset.yaml b/kubectl/quorum-besu/ibft2-with-privacy/statefulsets/node2privacy-statefulset.yaml index 9322ea5..2a55528 100644 --- a/kubectl/quorum-besu/ibft2-with-privacy/statefulsets/node2privacy-statefulset.yaml +++ b/kubectl/quorum-besu/ibft2-with-privacy/statefulsets/node2privacy-statefulset.yaml @@ -102,7 +102,7 @@ spec: configMap: name: orion-configmap items: - - key: orion1PubKey + - key: orion2PubKey path: orion.pub - name: genesis-config configMap: @@ -112,4 +112,4 @@ spec: name: besu-config-toml-configmap - name: data found one potential issue and fix above still didn't help also tried removing node-statefulset.yaml from the deployment since it didn't seem to be useful that also didn't help Any help would be much appreciated.

VladLupashevskyi (Tue, 10 Nov 2020 14:37:07 GMT):
Hi everybody, I’ve noticed that getting logs on besu takes substantially more time than on other clients. it takes around 20 seconds to get Transfer logs for one contract on the chain with 12M blocks and the same query on the same chain but with Parity takes 0,1 seconds. The chain is almost empty. Is there something which is missing in my configuration or is it an expected behaviour? I have transaction log bloom caching enabled and full sync mode.

shemnon (Tue, 10 Nov 2020 15:02:54 GMT):
That matches our measuremet. If I understand their arcitecture correctly Parity creates an index of thelogs, which is the only way it can asses 12M blocks in 100ms. Currently we still walk a cached index of the block headers.

shemnon (Tue, 10 Nov 2020 15:02:54 GMT):
That matches our measuremet. If I understand their arcitecture correctly Parity creates an index of thelogs, which is the only way it can asses 12M blocks in 100ms. Currently we still walk a cached copy of the log field in the block headers.

VladLupashevskyi (Tue, 10 Nov 2020 15:31:58 GMT):
@shemnon Thank you for a quick reply. Yeah, I was assuming something like this. Are there any plans on the roadmap for besu to implementing indexing to improve the logs accessibility speed?

mharrison (Tue, 10 Nov 2020 16:35:37 GMT):
Has joined the channel.

mharrison (Tue, 10 Nov 2020 16:35:38 GMT):
@shemnon Is there office hours today?

shemnon (Tue, 10 Nov 2020 16:43:17 GMT):
not at the moment. our current roadmap is here - https://wiki.hyperledger.org/display/BESU/Roadmap

VladLupashevskyi (Tue, 10 Nov 2020 17:18:09 GMT):
Thank you :)

shemnon (Tue, 10 Nov 2020 19:12:44 GMT):
This week was APAC/AMER times, and it didn't happen (it was 18 hours ago)

shemnon (Tue, 10 Nov 2020 19:13:08 GMT):
EMEA/AMER office hours are in two weeks.

AchilleasRaptis (Thu, 12 Nov 2020 12:55:56 GMT):
Has joined the channel.

AchilleasRaptis (Thu, 12 Nov 2020 12:55:56 GMT):
Hello, I am trying to deploy Besu through Azure Marketplace but I am getting errors at newuserscript execution. Anyone has any clue?

NicolasMassart (Thu, 12 Nov 2020 16:57:56 GMT):
Hi, we are indeed in the process of fixing this and it involves some 3rd party. I will ask our team what the progress is on this and tell you.

NicolasMassart (Thu, 12 Nov 2020 17:01:18 GMT):
Hi it look like an isse we already spotted and did not yet fix. We suggest a workaround in this thread If its time critical running `npx quorum-dev-quickstart` on your VM in Azure will get you going with the same setup

NicolasMassart (Thu, 12 Nov 2020 17:01:18 GMT):
Hi it look like an isse we already spotted and did not yet fix. We suggest a workaround in this thread https://chat.hyperledger.org/channel/besu?msg=S9Eq48B4PwPnFTFur

feazzu (Fri, 13 Nov 2020 08:41:04 GMT):
Has joined the channel.

feazzu (Fri, 13 Nov 2020 08:41:04 GMT):
Hi All, i've created an IBFT2 private network with 5 Validator Nodes. Client Version 1.5.0. Then i tried to connect a leecher node with the new client release (20.10), but i cant sync this node with the blockchain. I'm getting an "Invalid block detected error". How can i solve this? Has anyone encountered this problem?

shemnon (Fri, 13 Nov 2020 14:23:12 GMT):
are the genesis files the same? Can you add --logging=DEBUG to the CLI? (it should add more colour as to why it was rejected)

feazzu (Fri, 13 Nov 2020 16:21:01 GMT):
yes, same genesis, and tried with --logging=DEBUG and --logging=TRACE, but it does not log nothing more. Invalid Headers at block#200 and error while downloading block #400 #600 #800 and then disconnect from peers.

shemnon (Fri, 13 Nov 2020 17:10:58 GMT):
we should be getting something at debug and trace, that's odd.

madelinemurray (Mon, 16 Nov 2020 03:51:12 GMT):
@feazzu - are you able to paste the actual logs so we can see the specific error you're getting?

sankara 5 (Mon, 16 Nov 2020 12:52:42 GMT):
Hi Team, I have deployed a ETC Besu node. Node reached 7M after that the node sync became slow from last 7 days only 300k blocks synched and it is now at 7.3 M. Node is able to connect 2 to 3 peers. can you please let me know how to increase the peers connection?

shemnon (Mon, 16 Nov 2020 19:05:23 GMT):
No other mechanisms exist for peer discovery in ETC other than Devp2p discovery exist. * you can manually add known peers via the `admin_addPeer`. * Make sure your node has a valid external address (set `--p2p-host` to your natted external adddress or use `--nat-method=upnp` if behind a residential gateway)

shemnon (Mon, 16 Nov 2020 19:05:23 GMT):
No mechanisms for peer discovery in ETC other than Devp2p discovery exist. * you can manually add known peers via the `admin_addPeer`. * Make sure your node has a valid external address (set `--p2p-host` to your natted external adddress or use `--nat-method=upnp` if behind a residential gateway)

shemnon (Mon, 16 Nov 2020 19:06:35 GMT):
There are many nodes that won't accept external peer requests but will try to externally connect to yours, so it is essential you configure your node to broadcast a globally accessible enode address.

shemnon (Mon, 16 Nov 2020 19:07:10 GMT):
Also, many peers disconnect full sync and fast sync nodes when they download too many blocks or exert too much bandwidth.

shemnon (Mon, 16 Nov 2020 19:08:39 GMT):
If you set `--p2p-host` also set `--p2p-interface` with either 0.0.0.0 or the local IPv4 address of the network interface local to your lan (such as 192.168.1.10)

shemnon (Mon, 16 Nov 2020 19:09:28 GMT):
if you only have one Network Card `0.0.0.0` is the easiest value for the interface as it will use the first enumerated network card.

andrewhong5297 (Mon, 16 Nov 2020 19:13:39 GMT):
Has joined the channel.

andrewhong5297 (Mon, 16 Nov 2020 19:13:39 GMT):
Hey everyone! I'm trying to get started with hyperledger, already experienced in ethereum development. I see npx quorum-dev-quickstart is recommended for besu/quorum, but I don't know what next steps to take after starting a chain. Can I deploy and test smart contracts the same way using truffle and solidity? I also have heard I need to learn different messaging and event systems like kafka and rabbit md, don't know where to find tutorials for this.

andrewhong5297 (Mon, 16 Nov 2020 19:25:29 GMT):
any directions for tutorials on connecting these things would be helpful too!

reviz0r (Mon, 16 Nov 2020 20:24:05 GMT):
Has joined the channel.

madelinemurray (Mon, 16 Nov 2020 22:07:23 GMT):
hi @andrewhong5297 - yes you can deploy and test smart contracts in the same way using Truffle and Solidity. This tutorial walks through that - https://besu.hyperledger.org/en/stable/Tutorials/Examples/Private-Network-Example/

andrewhong5297 (Mon, 16 Nov 2020 22:15:52 GMT):
Awesome, thank you!

andrewhong5297 (Mon, 16 Nov 2020 22:17:40 GMT):
How do use orion and ethsigner? I don't understand the use of either, Is orion for limiting who can transact with who, and ethsigner is just a wallet?

andrewhong5297 (Mon, 16 Nov 2020 22:18:39 GMT):
also sorry one more question, are there any differences between besu and geth other than besu being private?

madelinemurray (Tue, 17 Nov 2020 01:16:06 GMT):
Orion is the private transaction manager to enable private transactions (that is, transactions that are only visible to participants). The overview doc on privacy is here: https://besu.hyperledger.org/en/stable/Concepts/Privacy/Privacy-Overview/ And a tutorial on setting up a network with privacy: https://besu.hyperledger.org/en/stable/Tutorials/Privacy/Configuring-Privacy/ EthSigner is a transaction signer. Besu doesn't support transaction signing inside the client - https://besu.hyperledger.org/en/stable/HowTo/Send-Transactions/Account-Management/ If you've got specific questions about Orion and EthSigner, there's Orion and Ethsigner channels on the ConsenSys Discord (invite link - https://discord.com/invite/5U9Jwp7)

andrewhong5297 (Tue, 17 Nov 2020 02:42:32 GMT):
Got it - thanks! I'm looking through the cakeshop toolkit for my local besu now

andrewhong5297 (Tue, 17 Nov 2020 02:42:35 GMT):
What are peers?

andrewhong5297 (Tue, 17 Nov 2020 02:42:43 GMT):
or documentation where I can learn about peers

andrewhong5297 (Tue, 17 Nov 2020 02:43:01 GMT):
I don't see it here https://besu.hyperledger.org/en/stable/Tutorials/Examples/

andrewhong5297 (Tue, 17 Nov 2020 02:44:32 GMT):
ah nevermind, I see docker includes a few members and validators

madelinemurray (Tue, 17 Nov 2020 03:22:20 GMT):
Re the differences between Geth and Besu. Like Geth, Besu runs on the Ethereum public networks. Besu also has a number of enterprise features to ensure it meets the demands of enterprise solutions. Permissioning, privacy, Apache 2 license, IBFT 2.0 consensus, and a plugin framework for extensibility are some of these.

madelinemurray (Tue, 17 Nov 2020 03:24:58 GMT):
Re peers - there's the following doc: https://besu.hyperledger.org/en/stable/HowTo/Find-and-Connect/Managing-Peers/

madelinemurray (Tue, 17 Nov 2020 03:27:18 GMT):
Besu has a plugin interface (https://besu.hyperledger.org/en/stable/Reference/Plugin-API-Interfaces/) and the event streaming plugin is open-source (https://doc.quorumplugins.consensys.net/en/latest/Concepts/Besu-Plugins/Event-Streams/)

sankara 5 (Tue, 17 Nov 2020 05:19:16 GMT):
Hi shemnon, Thank you for the information, in Besu do we have file which stores the peers info? like peers.dat in parity. If exists can you let me know where it will sit, and can we modify it.

PriyaPillai (Tue, 17 Nov 2020 11:15:36 GMT):
Has joined the channel.

sankara 5 (Tue, 17 Nov 2020 13:24:23 GMT):
Hi shemnon, Is there any possibility, on the peer information, which we can use by adding to our node?

sankara 5 (Tue, 17 Nov 2020 13:24:23 GMT):
Hi shemnon, Is there any possibility, on the peer information, which we can use by adding to our node, to increase our peers to speed up sync process?

shemnon (Tue, 17 Nov 2020 18:19:41 GMT):
If there was an ethereum classic version of https://ethernodes.org/ you could hand feed peers into the `admin_addPeer` APIs

shemnon (Tue, 17 Nov 2020 18:20:26 GMT):
we don't keep a peers.dat file. It would make for a good feature request.

belmix (Wed, 18 Nov 2020 11:17:47 GMT):
Has joined the channel.

belmix (Wed, 18 Nov 2020 11:17:48 GMT):
Hi how to create a new account in besu - ./besu account new?

belmix (Wed, 18 Nov 2020 11:50:08 GMT):
If use --network=mordor what will be the default id

shemnon (Wed, 18 Nov 2020 14:51:59 GMT):
Besu doesn't have wallet management features, by design (secure by default).

shemnon (Wed, 18 Nov 2020 14:52:22 GMT):
you could use tools like metamask or ethsigner to access account RPCs (https://github.com/ConsenSys/ethsigner)

NicolasMassart (Wed, 18 Nov 2020 14:53:06 GMT):
https://besu.hyperledger.org/en/stable/HowTo/Interact/APIs/API/#account-management

sichen (Wed, 18 Nov 2020 17:58:55 GMT):
Has joined the channel.

sichen (Wed, 18 Nov 2020 18:01:06 GMT):
Hello - I tried the tutorial https://besu.hyperledger.org/en/stable/Tutorials/Private-Network/Create-IBFT-Network/ and got the IBFT network working. Now I want to test deploying transactions and a contract to it. The "Next Steps" in that tutorial linked to https://besu.hyperledger.org/en/stable/Tutorials/Examples/Private-Network-Example/#creating-a-transaction-using-metamask which then asks me to create a new network with npx quorum-dev-quickstart Is there any way to use the existing IBFT network to deploy a contract and test some transactions?

mharrison (Wed, 18 Nov 2020 19:19:56 GMT):
Hello, I'm currently testing permissioned and private networks with Orion, we are attempting to validate the transaction by using https://github.com/zmitton/eth-proof . It is returning an error `Error: BlockHash mismatch` . I have verified proofs on public test networks and it works as expected. Does Besu support patricia merkle tree proofs? Thanks!

sichen (Wed, 18 Nov 2020 19:42:19 GMT):

Screen Shot 2020-11-18 at 11.31.01 AM.png

sichen (Wed, 18 Nov 2020 19:42:19 GMT):

Screen Shot 2020-11-18 at 11.31.01 AM.png

sichen (Wed, 18 Nov 2020 19:43:23 GMT):
How are you deploying contracts to Besu? Using truffle?

madelinemurray (Wed, 18 Nov 2020 19:59:03 GMT):
@belmix - the network and chain IDs for modor are listed here: https://besu.hyperledger.org/en/stable/Concepts/NetworkID-And-ChainID/

mharrison (Wed, 18 Nov 2020 20:01:31 GMT):
you need to sign the transaction with your private key using HDWalletProvider in truffle

sichen (Wed, 18 Nov 2020 20:13:43 GMT):
OK thanks. That is better now with https://besu.hyperledger.org/en/stable/HowTo/Develop-Dapps/Truffle/

Mightypenguin (Thu, 19 Nov 2020 06:05:58 GMT):
Has joined the channel.

Mightypenguin (Thu, 19 Nov 2020 06:05:59 GMT):
synching besu to eth mainnet and every time I start it it seems to start synching from ~6%, even if I get close to 90% the previous run Is that normal? fast-sync and pruning enabled

eum602 (Thu, 19 Nov 2020 15:54:36 GMT):
Hello everyone, I am reading the official documentation in order to stay updated with besu; please I would like to understand how the process of removing and adding new validators, without involving the voting process, works. According to the documentation (here https://besu.hyperledger.org/en/stable/HowTo/Configure/Consensus-Protocols/IBFT/#adding-and-removing-validators-without-voting) the scenario can be applied when the majority of validators are not working on the network. So I such case I assume that the network is halted and thus not producing blocks. In that context, I wonder how the network will reach a future block, specified in the genesis, where new validators will take place and current inactive validators will be removed??

TillFruehauf (Thu, 19 Nov 2020 17:09:53 GMT):
Has joined the channel.

TillFruehauf (Thu, 19 Nov 2020 17:09:54 GMT):
Hi guys, I just got a new ARM mac and try to install besu (binary distribution) there with rosetta 2 (installed brew already that way) but I get a message that I should habe JDK installed (which I have of course). Do you think thats an issue because its only compatible with the Intel Macs somehow or because something is wrong with JDK? Is this maybe something for the Apple Forum instead of here?

TillFruehauf (Thu, 19 Nov 2020 17:11:45 GMT):
" besu: Java 11+ is required for this software. "

shemnon (Thu, 19 Nov 2020 17:21:40 GMT):
how did you install besu? homebrew?

shemnon (Thu, 19 Nov 2020 17:21:50 GMT):
or extracting the zip somewhere?

TillFruehauf (Thu, 19 Nov 2020 17:32:15 GMT):
i didnt yet, I'm trying to

TillFruehauf (Thu, 19 Nov 2020 17:32:19 GMT):
with homebrew yes

TillFruehauf (Thu, 19 Nov 2020 17:36:30 GMT):
didnt yet install it but try to using homebrew.

shemnon (Thu, 19 Nov 2020 20:30:22 GMT):
So if you have rosetta i expect it should work. To improve performance we should look into testing with ARM JDKs (builds are starting to show up) as well as building our native libraries to ARM. Our crypto libraries have Java fallbacks but I think even via rosetta the native libs will be faster.

shemnon (Thu, 19 Nov 2020 20:31:03 GMT):
We don't depend on virtualization and from what I've read that's the only hard stop right now. (For stuff like Docker)

timbeiko (Thu, 19 Nov 2020 20:58:07 GMT):
:besu: *Besu 20.10.1 is out* :besu: :star2: Highlights :star2: - Two new JSON RPC endpoints to get miner rewards data, `eth_getMinerDataByBlockHash` & `eth_getMinerDataByBlockNumber` - A new JSON RPC endpoint to change the gas limit, miner_changeTargetGasLimit - The transaction pool now prioritizes transactions by gas prices - EVMTool is now part of the binary distribution - We now provide a new metric to track performance during block import: MegaGas/Seconds - We have support for OpenTelemetry metrics - We added support for qip714block config parameter in genesis file, paving the way towards permissioning interoperability between Besu and GoQuorum. You can get the release here: https://github.com/hyperledger/besu/releases/tag/20.10.1

timbeiko (Thu, 19 Nov 2020 20:58:07 GMT):
:besu: *Besu 20.10.1 is out* :besu: :star2: Highlights :star2: - Two new JSON RPC endpoints to get miner rewards data, `eth_getMinerDataByBlockHash` & `eth_getMinerDataByBlockNumber` - A new JSON RPC endpoint to change the gas limit, `miner_changeTargetGasLimit` - The transaction pool now prioritizes transactions by gas prices - EVMTool is now part of the binary distribution - We now provide a new metric to track performance during block import: MegaGas/Seconds - We have support for OpenTelemetry metrics - We added support for qip714block config parameter in genesis file, paving the way towards permissioning interoperability between Besu and GoQuorum. You can get the release here: https://github.com/hyperledger/besu/releases/tag/20.10.1

tasd (Thu, 19 Nov 2020 21:08:17 GMT):
Has joined the channel.

tasd (Thu, 19 Nov 2020 21:08:17 GMT):
Hi guys, I installed Besu on a new machine (my HW, not cloud) running Ubuntu 20, and I'm trying to sync with mainnet (fast sync). It runs for a few hours and then I get errors like this: 020-11-19 11:54:22.975-08:00 | EthScheduler-Services-9 (importBlock) | ERROR | PipelineChainDownloader | Chain download failed. Restarting after short delay. java.util.concurrent.CompletionException: org.hyperledger.besu.plugin.services.exception.StorageException: org.rocksdb.RocksDBException: block checksum mismatch: expected 3484042056, got 3599251239 in /chaindata/besu/database/027677.sst offset 415841 size 8152 2020-11-19 12:48:53.992-08:00 | EthScheduler-Services-9 (importBlock) | ERROR | PipelineChainDownloader | Chain download failed. Restarting after short delay. java.util.concurrent.CompletionException: org.hyperledger.besu.plugin.services.exception.StorageException: org.rocksdb.RocksDBException: block checksum mismatch: expected 3484042056, got 3599251239 in /chaindata/besu/database/027677.sst offset 415841 size 8152

trent.mohay (Thu, 19 Nov 2020 21:12:20 GMT):
Hey @eum602, You're absolutely right, the transitions are used for making a step change in the validator list. The two main uses are:

trent.mohay (Thu, 19 Nov 2020 21:12:20 GMT):
Hey @eum602, You're absolutely right, the transitions are used for making a step change in the validator list. The main uses are: 1. Network has halted 2. Validator pool compromised, or 3. Planned network split For the third option - we recommend setting a date in the future, and allowing the network to split when it reaches the transition block. In the instance of a halted network (or recognised compromised validators), we'd recommend stopping the network, inserting a transition 1 block ahead of the current chain length, then restarting. Thus, the next block proposed would contain the validators specified in the transition, and the network would continue on.

shemnon (Thu, 19 Nov 2020 21:45:48 GMT):
Mainnet sync is very hard on I/O. Is this an SSD or HDD? mainnet may be too much four your hw setup.

tasd (Thu, 19 Nov 2020 21:50:39 GMT):
It's SSD (1 TB).

shemnon (Thu, 19 Nov 2020 22:00:39 GMT):
the error is a low level DB issue. There's not much support we can offer, probably an issue with rocksdb.

eum602 (Thu, 19 Nov 2020 22:57:38 GMT):
Thanks a lot @trent.mohay , that is clear for me. Is it also possible for a regular node to declare it as a validator for the next block, change the networkId, start the network where it is the unique node in that netowork and then join new participants in that forked chain?

belmix (Thu, 19 Nov 2020 23:22:29 GMT):
Hi

belmix (Thu, 19 Nov 2020 23:28:54 GMT):
CLIENT: Hyperledger Besu CHAIN: Mining Pool: ethc Coin Type: ETC [ETC] Network Connected: Mainnet-Mordor Detected Reward Type: POW Current Block Height: 2724453 Current Connect Peers: 6 Network Difficulty: 8133460 LOG: [W] [ethc] Target: 0x0000020fce25b46f6cc680e1734ca00206450c460ce96f6acd60975d9dfce80c [W] [ethc] Block Target: 0000020fce25b46f6cc680e1734ca00206450c460ce96f6acd60975d9dfce80c [I] [ethc] New work at height 2724463 and header 0x4b57fed6dfaddc12049ec7e0ed52e3707c16efbd3f1b6ce62966d9821d605f9f detected [POLL] [W] [ethc] ResultValue: 16f5a60cfbe24ceb408d3c03b6aa2eb0d710edfbcf26b0c2247c52c5b225ac6e [W] [ethc] isBlockCandidate: False [I] [ethc] [0HM4CRRU90AO7] Share rejected: Not found block target (False) Condition: var isBlockCandidate = resultValue <= blockTarget; Code: var target = blockTemplate.Target; // get blockTarget blockTarget = new uint256(target.HexToReverseByteArray()); ... if(!dag.Compute(logger, BlockTemplate.Header.HexToByteArray(), fullNonce, out var mixDigest, out var resultBytes)) // get resultValue var resultValue = new uint256(resultBytes); DAG: [I] [ethc] Generating DAG for epoch 45 [I] [ethc] Done generating DAG for epoch 45 after 00:00:01.5038594 [I] [ethc] Pre-generating DAG for epoch 46 [I] [ethc] Generating DAG for epoch 46 [I] [ethc] Done generating DAG for epoch 46 after 00:00:01.4032052 i am trying to add support for ethereum classic in miningcore https://github.com/coinfoundry/miningcore

belmix (Thu, 19 Nov 2020 23:28:54 GMT):
CLIENT: Hyperledger Besu CHAIN: Mining Pool: ethc Coin Type: ETC [ETC] Network Connected: Mainnet-Mordor Detected Reward Type: POW Current Block Height: 2724453 Current Connect Peers: 6 Network Difficulty: 8133460 LOG: [W] [ethc] Target: 0x0000020fce25b46f6cc680e1734ca00206450c460ce96f6acd60975d9dfce80c [W] [ethc] Block Target: 0000020fce25b46f6cc680e1734ca00206450c460ce96f6acd60975d9dfce80c [I] [ethc] New work at height 2724463 and header 0x4b57fed6dfaddc12049ec7e0ed52e3707c16efbd3f1b6ce62966d9821d605f9f detected [POLL] ... [W] [ethc] ResultValue: 16f5a60cfbe24ceb408d3c03b6aa2eb0d710edfbcf26b0c2247c52c5b225ac6e [W] [ethc] isBlockCandidate: False [I] [ethc] [0HM4CRRU90AO7] Share rejected: Not found block target (False) Condition: var isBlockCandidate = resultValue <= blockTarget; Code: var target = blockTemplate.Target; // get blockTarget blockTarget = new uint256(target.HexToReverseByteArray()); ... if(!dag.Compute(logger, BlockTemplate.Header.HexToByteArray(), fullNonce, out var mixDigest, out var resultBytes)) // get resultValue var resultValue = new uint256(resultBytes); DAG: [I] [ethc] Generating DAG for epoch 45 [I] [ethc] Done generating DAG for epoch 45 after 00:00:01.5038594 [I] [ethc] Pre-generating DAG for epoch 46 [I] [ethc] Generating DAG for epoch 46 [I] [ethc] Done generating DAG for epoch 46 after 00:00:01.4032052 i am trying to add support for ethereum classic in miningcore https://github.com/coinfoundry/miningcore

belmix (Thu, 19 Nov 2020 23:28:54 GMT):
CLIENT: Hyperledger Besu CHAIN: Mining Pool: ethc Coin Type: ETC [ETC] Network Connected: Mainnet-Mordor Detected Reward Type: POW Current Block Height: 2724453 Current Connect Peers: 6 Network Difficulty: 8133460 LOG: [W] [ethc] Target: 0x0000020fce25b46f6cc680e1734ca00206450c460ce96f6acd60975d9dfce80c [W] [ethc] Block Target: 0000020fce25b46f6cc680e1734ca00206450c460ce96f6acd60975d9dfce80c [I] [ethc] New work at height 2724463 and header 0x4b57fed6dfaddc12049ec7e0ed52e3707c16efbd3f1b6ce62966d9821d605f9f detected [POLL] ... [W] [ethc] ResultValue: 16f5a60cfbe24ceb408d3c03b6aa2eb0d710edfbcf26b0c2247c52c5b225ac6e [W] [ethc] isBlockCandidate: False [I] [ethc] [0HM4CRRU90AO7] Share rejected: Wrong block target (False) Condition: var isBlockCandidate = resultValue <= blockTarget; Code: var target = blockTemplate.Target; // get blockTarget blockTarget = new uint256(target.HexToReverseByteArray()); ... if(!dag.Compute(logger, BlockTemplate.Header.HexToByteArray(), fullNonce, out var mixDigest, out var resultBytes)) // get resultValue var resultValue = new uint256(resultBytes); DAG: [I] [ethc] Generating DAG for epoch 45 [I] [ethc] Done generating DAG for epoch 45 after 00:00:01.5038594 [I] [ethc] Pre-generating DAG for epoch 46 [I] [ethc] Generating DAG for epoch 46 [I] [ethc] Done generating DAG for epoch 46 after 00:00:01.4032052 i am trying to add support for ethereum classic in miningcore https://github.com/coinfoundry/miningcore

belmix (Thu, 19 Nov 2020 23:28:54 GMT):
CLIENT: Hyperledger Besu CHAIN: Mining Pool: ethc Coin Type: ETC [ETC] Network Connected: Mainnet-Mordor Detected Reward Type: POW Current Block Height: 2724453 Current Connect Peers: 6 Network Difficulty: 8133460 LOG: [W] [ethc] Target: 0x0000020fce25b46f6cc680e1734ca00206450c460ce96f6acd60975d9dfce80c [W] [ethc] Block Target: 0000020fce25b46f6cc680e1734ca00206450c460ce96f6acd60975d9dfce80c [I] [ethc] New work at height 2724463 and header 0x4b57fed6dfaddc12049ec7e0ed52e3707c16efbd3f1b6ce62966d9821d605f9f detected [POLL] ... [W] [ethc] ResultValue: 16f5a60cfbe24ceb408d3c03b6aa2eb0d710edfbcf26b0c2247c52c5b225ac6e [W] [ethc] isBlockCandidate: False [I] [ethc] [0HM4CRRU90AO7] Share rejected: Wrong block target Condition: var isBlockCandidate = resultValue <= blockTarget; Code: var target = blockTemplate.Target; // get blockTarget blockTarget = new uint256(target.HexToReverseByteArray()); ... if(!dag.Compute(logger, BlockTemplate.Header.HexToByteArray(), fullNonce, out var mixDigest, out var resultBytes)) // get resultValue var resultValue = new uint256(resultBytes); DAG: [I] [ethc] Generating DAG for epoch 45 [I] [ethc] Done generating DAG for epoch 45 after 00:00:01.5038594 [I] [ethc] Pre-generating DAG for epoch 46 [I] [ethc] Generating DAG for epoch 46 [I] [ethc] Done generating DAG for epoch 46 after 00:00:01.4032052 i am trying to add support for ethereum classic in miningcore https://github.com/coinfoundry/miningcor

belmix (Thu, 19 Nov 2020 23:28:54 GMT):
CLIENT: Hyperledger Besu CHAIN: Mining Pool: etc Coin Type: ETC [ETC] Network Connected: Mainnet-Mordor Detected Reward Type: POW Current Block Height: 2724453 Current Connect Peers: 6 Network Difficulty: 8133460 LOG: [W] [ethc] Target: 0x0000020fce25b46f6cc680e1734ca00206450c460ce96f6acd60975d9dfce80c [W] [ethc] Block Target: 0000020fce25b46f6cc680e1734ca00206450c460ce96f6acd60975d9dfce80c [I] [ethc] New work at height 2724463 and header 0x4b57fed6dfaddc12049ec7e0ed52e3707c16efbd3f1b6ce62966d9821d605f9f detected [POLL] ... [W] [ethc] ResultValue: 16f5a60cfbe24ceb408d3c03b6aa2eb0d710edfbcf26b0c2247c52c5b225ac6e [W] [ethc] isBlockCandidate: False [I] [ethc] [0HM4CRRU90AO7] Share rejected: Wrong block target Condition: var isBlockCandidate = resultValue <= blockTarget; Code: var target = blockTemplate.Target; // get blockTarget blockTarget = new uint256(target.HexToReverseByteArray()); ... if(!dag.Compute(logger, BlockTemplate.Header.HexToByteArray(), fullNonce, out var mixDigest, out var resultBytes)) // get resultValue var resultValue = new uint256(resultBytes); DAG: [I] [ethc] Generating DAG for epoch 45 [I] [ethc] Done generating DAG for epoch 45 after 00:00:01.5038594 [I] [ethc] Pre-generating DAG for epoch 46 [I] [ethc] Generating DAG for epoch 46 [I] [ethc] Done generating DAG for epoch 46 after 00:00:01.4032052 i am trying to add support for ethereum classic in miningcore https://github.com/coinfoundry/miningcor

belmix (Thu, 19 Nov 2020 23:28:54 GMT):
CLIENT: Hyperledger Besu CHAIN: Mining Pool: etc Coin Type: ETC [ETC] Network Connected: Mainnet-Mordor Detected Reward Type: POW Current Block Height: 2724453 Current Connect Peers: 6 Network Difficulty: 8133460 LOG: [W] [ethc] Target: 0x0000020fce25b46f6cc680e1734ca00206450c460ce96f6acd60975d9dfce80c [W] [ethc] Block Target: 0000020fce25b46f6cc680e1734ca00206450c460ce96f6acd60975d9dfce80c [I] [ethc] New work at height 2724463 and header 0x4b57fed6dfaddc12049ec7e0ed52e3707c16efbd3f1b6ce62966d9821d605f9f detected [POLL] ... [W] [ethc] ResultValue: 16f5a60cfbe24ceb408d3c03b6aa2eb0d710edfbcf26b0c2247c52c5b225ac6e [W] [ethc] isBlockCandidate: False [I] [ethc] [0HM4CRRU90AO7] Share rejected: Wrong block target Condition: var isBlockCandidate = resultValue <= blockTarget; Code: var target = blockTemplate.Target; // get blockTarget blockTarget = new uint256(target.HexToReverseByteArray()); ... if(!dag.Compute(logger, BlockTemplate.Header.HexToByteArray(), fullNonce, out var mixDigest, out var resultBytes)) // get resultValue var resultValue = new uint256(resultBytes); DAG: [I] [ethc] Generating DAG for epoch 45 [I] [ethc] Done generating DAG for epoch 45 after 00:00:01.5038594 [I] [ethc] Pre-generating DAG for epoch 46 [I] [ethc] Generating DAG for epoch 46 [I] [ethc] Done generating DAG for epoch 46 after 00:00:01.4032052 i am trying to add support for ethereum classic in miningcore https://github.com/coinfoundry/miningcore

shemnon (Thu, 19 Nov 2020 23:36:21 GMT):
Mordor is the testnet that forked ECIP-1099 aka the Thanos hardfork about a month ago. I don't think miningcore has been updated to support the changes, as it doubles the epoch length and hence cuts the dag in half.

shemnon (Thu, 19 Nov 2020 23:37:25 GMT):
The last commit was in Dec of 2019, so it couldn't have the Thanos fork for ETC.

belmix (Thu, 19 Nov 2020 23:37:52 GMT):
https://github.com/coinfoundry/miningcore/blob/master/src/Miningcore/Blockchain/Ethereum/EthereumConstants.cs

belmix (Thu, 19 Nov 2020 23:38:35 GMT):
I change public const ulong EpochLength = 30000; ---> public const ulong EpochLength = 60000; for Mordor

belmix (Thu, 19 Nov 2020 23:41:45 GMT):

Clipboard

shemnon (Thu, 19 Nov 2020 23:42:56 GMT):
I think the mining channel on the Ethereum Classic discord would be a more knowledgable crowd - https://discord.com/invite/xy777au

belmix (Thu, 19 Nov 2020 23:43:59 GMT):

Clipboard

belmix (Thu, 19 Nov 2020 23:45:38 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=2vvjQtKweom3upgNQ) ok thx, it's just that the question is more based on data from the node than on mining

shemnon (Thu, 19 Nov 2020 23:46:51 GMT):
The miner is rejecting the data. Besu wants Thanos blocks and the miner wants Pheonix blocks. They will never agree until the miner code is updated. It's a bit more subtle than just that one line.

belmix (Thu, 19 Nov 2020 23:51:32 GMT):
i use for test lolminer —enable-ecip1099

belmix (Thu, 19 Nov 2020 23:53:09 GMT):
Besu wants Thanos blocks and the miner wants Pheonix blocks. - you can tell more about it

shemnon (Thu, 19 Nov 2020 23:54:06 GMT):
I think the etc discord is your best resources. There's not much knowledge about mining and classic on this channel.

rjones (Fri, 20 Nov 2020 01:22:43 GMT):
@TillFruehauf I was able to get it to run via `arch`

rjones (Fri, 20 Nov 2020 01:22:54 GMT):
```BUILD SUCCESSFUL in 3m 37s 79 actionable tasks: 79 executed ry@mm besu```

rjones (Fri, 20 Nov 2020 01:24:14 GMT):
@TillFruehauf ```% arch -x86_64 zsh % brew tap homebrew/cask-versions % brew cask install adoptopenjdk```

tasd (Fri, 20 Nov 2020 15:23:03 GMT):
Btw, I installed a new (second) SSD and tried a full sync (because https://github.com/hyperledger/besu/blob/20.10.0-RC1/KNOWN_ISSUES.md#fast-sync-when-running-besu-on-cloud-providers mentions that there is a problem only with fast sync). I got the same error after a few hours.

tasd (Fri, 20 Nov 2020 15:23:59 GMT):
Btw, I installed a new (second) SSD and tried a full sync (because https://github.com/hyperledger/besu/blob/20.10.0-RC1/KNOWN_ISSUES.md#fast-sync-when-running-besu-on-cloud-providers mentions that there is a problem only with fast sync). I got the same error after a few hours.

TillFruehauf (Fri, 20 Nov 2020 15:37:38 GMT):
thanks!

TillFruehauf (Fri, 20 Nov 2020 15:41:22 GMT):
ok ill keep trying. Thanks

shemnon (Fri, 20 Nov 2020 16:34:38 GMT):
Probably a driver issue and/or rocks db not flushing properly.

mharrison (Fri, 20 Nov 2020 19:36:01 GMT):
Reposting, anyone have info on if proofs work with besu and orion

shemnon (Fri, 20 Nov 2020 19:44:53 GMT):
We do have a merkle proof api in `eth_getProof`, although I am not sure if it is compatible with that particular library.

shemnon (Fri, 20 Nov 2020 19:44:57 GMT):
https://besu.hyperledger.org/en/stable/Reference/API-Methods/#eth_getproof

EmcLab (Mon, 23 Nov 2020 04:30:35 GMT):
Besu doc says this about validating transaction before adding to block: For transactions submitted and added to a block, Besu validates the transactions, as illustrated in the following diagram. Transaction Validation

EmcLab (Mon, 23 Nov 2020 04:30:35 GMT):
Besu doc (https://besu.hyperledger.org/en/stable/Concepts/Transactions/Transaction-Validation/) says this about validating transaction before adding to block: For transactions submitted and added to a block, Besu validates the transactions, as illustrated in the following diagram.

EmcLab (Mon, 23 Nov 2020 04:30:35 GMT):
Besu doc (https://besu.hyperledger.org/en/stable/Concepts/Transactions/Transaction-Validation/) says this about validating transaction before adding to block: For transactions submitted and added to a block, Besu validates the transactions, as illustrated in the following diagram. With this validating provided by besu, does smart contract can skip validating the sender address and has no need to implement mechanism fending off replay attack?

Manzik (Mon, 23 Nov 2020 05:58:37 GMT):
Hello ! Can somebody share some examples on how to add and remove validators from ongoing besu network.

madelinemurray (Mon, 23 Nov 2020 10:21:29 GMT):
hi @Manzik - doc on adding and removing validators is here: https://besu.hyperledger.org/en/stable/HowTo/Configure/Consensus-Protocols/IBFT/#adding-and-removing-validators

OliviaKenney (Mon, 23 Nov 2020 15:10:49 GMT):
Has joined the channel.

OliviaKenney (Mon, 23 Nov 2020 15:10:50 GMT):
Hello! I’m Olivia from GetBlock.io — a service that provides access to full blockchain nodes. We run a full node for BESU: https://getblock.io/nodes/besu Can I talk to someone from the Hyperledger team to discuss the possible collaboration options?

Manzik (Tue, 24 Nov 2020 01:17:09 GMT):
:working: thnkyou

shemnon (Tue, 24 Nov 2020 02:45:09 GMT):
Besu Office Hours in ~12 hours - https://wiki.hyperledger.org/display/BESU/2020-11-24+Office+Hours

shemnon (Tue, 24 Nov 2020 02:46:43 GMT):
What kind of collaboration did you have in mind? Besu itself is an OSS project as part of Hyperledger, so it's not a strict company per say. Our contributors work for ConsenSys, Splunk, and ChainSafe.

Manzik (Tue, 24 Nov 2020 04:34:06 GMT):
On what condition a Besu network will require a different chainID and NetworkId? wont that fork the network.?

OliviaKenney (Tue, 24 Nov 2020 08:34:40 GMT):
Hi! We've already officially partnered with Consensys (will be announced this week), but we would like to discuss the possible promotion options, for example, with the person responsible for the Hyperledger account on Twitter. Also, would like to know, is it possible for you to add our logo as a nodes provider to the Hyperledger website? Thank you!

shemnon (Tue, 24 Nov 2020 13:11:22 GMT):
I think you would need to join hyperledger as a member to gain those marketing benefits - https://www.hyperledger.org/about/join

OliviaKenney (Tue, 24 Nov 2020 14:08:59 GMT):
The official partnership with ConsenSys does not provide us with any preferences?

shemnon (Tue, 24 Nov 2020 14:14:24 GMT):
Hyperledger and ConsenSys are two different entities, so ConsenSys partnerships are distinct from Hyperledger.

shemnon (Tue, 24 Nov 2020 15:03:28 GMT):
office hours for next 30 minutes - https://consensys.zoom.us/j/199741148

OliviaKenney (Tue, 24 Nov 2020 15:23:01 GMT):
Ok, I understand, thank you!

OliviaKenney (Tue, 24 Nov 2020 15:26:17 GMT):
Just thought that your community might be interested to know that GetBlock is running the Hyperledger Besu node, that is why we wanted to ask you to share this news with them via your social media channels.

Manzik (Wed, 25 Nov 2020 03:07:33 GMT):
i saw a pricing in Alethio explorer! How come it is free while using hyperledger besu?

piyushmaheshwari65 (Wed, 25 Nov 2020 04:21:10 GMT):
Has joined the channel.

sankara 5 (Wed, 25 Nov 2020 13:42:15 GMT):
For ETC FAST Node, how many days it will take to sync and how many blocks do we have at a point to access the blocks from node.

shemnon (Wed, 25 Nov 2020 16:21:50 GMT):
for ETC fast sync our last run on an i3.xlarge was 5 Hour(s) 56 Minute(s), for ETC full archival sync it was 5 Day(s) 8 Hour(s) 7 Minute(s)

shemnon (Wed, 25 Nov 2020 16:22:56 GMT):
Fast sync will only have state from the pivot block, so 6 hours or so. In the neighborhood of 1600 blocks.

shemnon (Wed, 25 Nov 2020 16:23:25 GMT):
full archival sync has access to all blocks

sankara 5 (Wed, 25 Nov 2020 16:49:14 GMT):
I have started a FULL node for ETC on Ubuntu , with besu docker image and allocated 8GB RAM , but the node is able to manage only 8M in more than 2 weeks time

sankara 5 (Wed, 25 Nov 2020 16:49:14 GMT):
I have started a FULL node for ETC on Ubuntu , with besu docker image and allocated 8GB RAM , but the node is able to manage only 8M in more than 2 weeks time, Still we are strucggling to sync the node, it has around 19 peers conencted.

sankara 5 (Wed, 25 Nov 2020 16:49:14 GMT):
I have started a FULL node for ETC on Ubuntu , with besu docker image and allocated 8GB RAM , but the node is able to manage only 8M in more than 2 weeks time, Still we are strucggling to sync the node, it has around 19 peers conencted. Can you specify the configurations required for this

shemnon (Wed, 25 Nov 2020 16:54:38 GMT):
Amazon i3.xlarge https://aws.amazon.com/ec2/instance-types/i3/ - 4 cores - 30.5 Gib Memory - 1 x 0.95 NVMe SSD

shemnon (Wed, 25 Nov 2020 16:55:11 GMT):
SSD speed and memory are the likely differentiators.

shemnon (Wed, 25 Nov 2020 16:55:44 GMT):
Classic can be done on 8GiB, I suspect it's storage and maybe cores.

shemnon (Wed, 25 Nov 2020 16:57:03 GMT):
Networked storage (EBS or network drive) will hurt performance a lot. Straight to hardware is what is best.

sankara 5 (Wed, 25 Nov 2020 16:57:52 GMT):
Thanks shemnon, this will help us a lot.

KIMSON (Thu, 26 Nov 2020 05:21:25 GMT):
Has joined the channel.

sankara 5 (Fri, 27 Nov 2020 06:41:08 GMT):
Hi Shemnon, I have added a new SSD drive and moved the existing node to SSD, after starting the node is not working

sankara 5 (Fri, 27 Nov 2020 06:41:08 GMT):
Hi Shemnon, I have added a new SSD drive and moved the existing node to SSD, after starting, the node is not working

sankara 5 (Fri, 27 Nov 2020 06:41:27 GMT):
picocli.CommandLine$ParameterException: Supplied file does not contain valid keyPair pair. at org.hyperledger.besu.cli.BesuCommand.run(BesuCommand.java:1087) at picocli.CommandLine.executeUserObject(CommandLine.java:1919) at picocli.CommandLine.access$1100(CommandLine.java:145) at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2332)

shemnon (Fri, 27 Nov 2020 13:58:38 GMT):
What version are you running?

EmcLab (Sat, 28 Nov 2020 22:52:29 GMT):
Hi Team, {"message":"Host not authorized."} is the error when trying to make jsonRPCprovider at http://nodeip:8545. But there is no authorization required in the besu config file. What is wrong here?

shemnon (Sat, 28 Nov 2020 23:27:53 GMT):
`--host-allowlist` defaults to localhost and 127.0.0.1. setting `--host-allowlist=*` opens it to all, I'd recommend an explicit list of known accessors inseted.

EmcLab (Sun, 29 Nov 2020 07:25:59 GMT):
Hello, how to kill besu process on ubuntu? There is no process named besu listed by top or ps. Thanks.

EmcLab (Sun, 29 Nov 2020 07:26:28 GMT):
:thumbsup:

shemnon (Sun, 29 Nov 2020 16:04:00 GMT):
`ps -ef` will get you cli args. But likley it's the only `java` process

EmcLab (Sun, 29 Nov 2020 19:35:12 GMT):
lsof -i :8545 lists a java process

shemnon (Sun, 29 Nov 2020 19:37:15 GMT):
That would be the one

EmcLab (Sun, 29 Nov 2020 20:21:19 GMT):
Hi team, when deploying a contract, does the dapp have to include a nonce when submitting transaction? I didn't see nonce in example of besu doc. As I understand, nonce shall be included for each transaction when dapp submitting one.

EmcLab (Sun, 29 Nov 2020 20:28:00 GMT):
Hello team, where can I open and look at the besu log for debug purpose?

EmcLab (Sun, 29 Nov 2020 20:28:00 GMT):
2020-11-30 10:41:38.097-08:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 3

lucassaldanha (Sun, 29 Nov 2020 20:48:37 GMT):
What are you using to submit transactions to Besu? Is you Dapp using a wallet like Metamask? Besu doesn't do account management, so any transaction sent to Besu must contain the correct nonce for that account.

EmcLab (Sun, 29 Nov 2020 20:51:55 GMT):
The dapp uses `etherjs` which is similar to `web3js`. A wallet is managed by the dapp. I just want to confirm that it is dapp's responsibility to manage the nonce for each and every transaction it submits.

lucassaldanha (Sun, 29 Nov 2020 20:52:07 GMT):
You may use the `--logging` option to change the log level of Besu to DEBUG>

lucassaldanha (Sun, 29 Nov 2020 20:52:09 GMT):
https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#logging

EmcLab (Mon, 30 Nov 2020 02:15:46 GMT):
:thumbsup:

sankara 5 (Mon, 30 Nov 2020 04:22:06 GMT):
pulled the latest image and started using docker run hyperledger/besu:latest

sankara 5 (Mon, 30 Nov 2020 04:22:17 GMT):
i haven't specified any version

shemnon (Mon, 30 Nov 2020 04:54:02 GMT):
for some reason it doesn't like the key file. Since you aren't doing IBFT or Clique you can move ${DATA_PATH}/key out of the way or delete it and things should start up.

sankara 5 (Mon, 30 Nov 2020 06:07:25 GMT):
i tried deleting the key file and started the node Caused by: org.rocksdb.RocksDBException: while open a file for lock: /data/database/LOCK: Permission denied getting above error

sankara 5 (Mon, 30 Nov 2020 06:13:26 GMT):
i have given permissions to database and LOCK, now it started synching

sankara 5 (Mon, 30 Nov 2020 06:13:37 GMT):
thanks you for the suggestion

EmcLab (Mon, 30 Nov 2020 18:45:51 GMT):
Hello team, there are 4 nodes on network and here is the output of log showing the number of peers. Is there missing one node?

EmcLab (Mon, 30 Nov 2020 18:46:00 GMT):
2020-11-30 10:41:38.097-08:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 3

EmcLab (Mon, 30 Nov 2020 20:18:53 GMT):
Hi team, when trying to make connection to besu node in browser with http://besu-node-ip:8545, what shall be normally returned if the node is up and running? There is currently nothing returned.

shemnon (Mon, 30 Nov 2020 20:33:44 GMT):
You probably want the liveliness and readyness endpoints - https://besu.hyperledger.org/en/stable/HowTo/Interact/APIs/Using-JSON-RPC-API/#readiness-and-liveness-endpoints

shemnon (Mon, 30 Nov 2020 20:34:02 GMT):
It does not count itself, so 3 peers is correct for a 4 node syste,

shemnon (Mon, 30 Nov 2020 20:34:02 GMT):
It does not count itself, so 3 peers is correct for a 4 node system.

lucassaldanha (Mon, 30 Nov 2020 21:20:10 GMT):
Correct. Besu won't manage the nonces.

EmcLab (Tue, 01 Dec 2020 03:24:44 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=2WFryxyHAhLvebqXM) For http://node-ip:8545/readiness and http:/node-ip:8545/liveness, both return { "status" : "UP" }. It seems to be OK, Isn't it?

shemnon (Tue, 01 Dec 2020 03:25:21 GMT):
yes

EmcLab (Tue, 01 Dec 2020 03:29:12 GMT):
:thumbsup: It is BPFT2 network. what else can be wrong?

EmcLab (Tue, 01 Dec 2020 03:32:36 GMT):
Instead of web3js, the dapp uses ethers.js to connect with the network. Is ethersjs Okay with Besu? Here is the doc for ethersjs https://docs.ethers.io/v5/api/contract/contract-factory/

shemnon (Tue, 01 Dec 2020 03:56:19 GMT):
I don't know much about app layer interactions, but if it follows the standard ethereum JSON-RPC APIs it should be fine.

sankara 5 (Tue, 01 Dec 2020 04:40:00 GMT):
Hi Shemnon, I have a fast node for ETC with besu, till 10.3 million it is fast after that , it started checking the world nodes from last 24 hrs, 2020-12-01 04:37:11.625+00:00 | EthScheduler-Services-7 (requestCompleteTask) | INFO | CompleteTaskStep | Downloaded 60200000 world state nodes. At least 10131828 nodes remaining. Estimated World State completion: 85.59 %. is this expected?

shemnon (Tue, 01 Dec 2020 05:12:14 GMT):
it sounds like your storage may be slow.

sankara 5 (Tue, 01 Dec 2020 05:48:31 GMT):
i am using the SSD disk

sankara 5 (Tue, 01 Dec 2020 05:48:31 GMT):
i am using the SSD disk, memory stats and cpu stats are also very low than configured, IO also good

sankara 5 (Tue, 01 Dec 2020 12:52:55 GMT):
Hi Shemnon , can we get a snapshot of ETC, so that we can restore it and start the node? i am Looking for alternate options

shemnon (Tue, 01 Dec 2020 15:05:22 GMT):
I don't think the disk being served through docker is fast enough. I would try running the node on bare metal.

sankara 5 (Tue, 01 Dec 2020 16:10:27 GMT):
My fast node is not working and i scrapped it and started again, it unable to connect to peers, while on the same server my full node is synching but slow.

EmcLab (Tue, 01 Dec 2020 20:13:30 GMT):
@shemnon , when http://node-ip:8545 in browser, there is nothing returned. I verified that the node is ready and live. Shall besu node return something or error if there is anything?

shemnon (Tue, 01 Dec 2020 20:23:49 GMT):
no. This is a json-rpc endpoint so json-rpc post payloads are expected. This is expected.

shemnon (Tue, 01 Dec 2020 20:23:49 GMT):
no. This is a json-rpc endpoint so json-rpc post payloads are expected. No useful interaction exists with a browser.

EmcLab (Tue, 01 Dec 2020 21:04:54 GMT):
@shemnon , tried to deploy in remix a contract (tested on ganache). As soon as I enter the address of end node with port 8545, it pops up an error: Not possible to connect to the Web3 provider. Make sure the provider is running, a connection is open (via IPC or RPC) or that the provider plugin is properly configured. The end node is up and running, but the connection request failed. Not sure what is missing here.

shemnon (Tue, 01 Dec 2020 23:18:06 GMT):
You've set `--host-whitelist=*` and `--rpc-http-cors-origins=*` and `--rpc-http-host=0.0.0.0`? I typically use postman to verify it's up and running (https://documenter.getpostman.com/view/11610746/TVmHDead)

shemnon (Tue, 01 Dec 2020 23:18:42 GMT):
remix doesn't always provide useful error messages

EmcLab (Wed, 02 Dec 2020 05:01:53 GMT):
@shemnon , postman for get http://node-ip:8545 returns 500 internal server error. However browser and curl -v 'http://node-ip:8545' returns http 200. Does the return in postman indicate problem with besu node?

EmcLab (Wed, 02 Dec 2020 05:03:47 GMT):
tests performed after adding 3 configurations to config.toml. I didn't find --host-whitelist and use --host-allowlist instead.

clowestab (Wed, 02 Dec 2020 10:13:37 GMT):
Has joined the channel.

clowestab (Wed, 02 Dec 2020 10:13:38 GMT):
Hi all. What is the status of Besu? I see that Geth has overwhelming client market share so want to try something new. Is Besu being actively developed by Hyperledger? Or is it the case that these ETH1 nodes have been working in production for a long time and aside from a massive hidden bug will not require updating in advance of the full transition to Eth2? I see on ethernodes.org Besu hasnt had that much uptake and I am curious as to why..?

cyrilnaves (Wed, 02 Dec 2020 10:18:42 GMT):
Has joined the channel.

cyrilnaves (Wed, 02 Dec 2020 10:18:43 GMT):
Hello All, Please would like to know for hyperledger besu , how can I use java profiling with the binary. I referred to the documents @ https://besu.hyperledger.org/en/stable/HowTo/Troubleshoot/Java-Flight-Recording/, please can you explain the steps. I tried to add the options but I get error like above

cyrilnaves (Wed, 02 Dec 2020 10:18:43 GMT):
Hello All, Please would like to know for hyperledger besu , how can I use java profiling with the binary. I referred to the documents @ https://besu.hyperledger.org/en/stable/HowTo/Troubleshoot/Java-Flight-Recording/, please can you explain the steps. I tried to add the options but I get error like below

cyrilnaves (Wed, 02 Dec 2020 10:18:54 GMT):

Clipboard - December 2, 2020 11:18 AM

shemnon (Wed, 02 Dec 2020 16:04:03 GMT):
try a curl with a post. GETs don't work on that port.

shemnon (Wed, 02 Dec 2020 16:04:30 GMT):
also, use allowlist, whitelist was from an old config of mine.

shemnon (Wed, 02 Dec 2020 16:04:57 GMT):
Are there any stack traces in the besu log?

timbeiko (Wed, 02 Dec 2020 16:27:28 GMT):
Hi @clowestab, Besu is still being actively developed, yes! The client is part of the Hyperledger Foundatation, and ConsenSys is the main maintainer, along with other independent maintainers and organizations, like Chainsafe.

shemnon (Wed, 02 Dec 2020 16:28:22 GMT):
try ``` curl --request POST 'http://localhost:8545' \ --header 'Content-Type: text/plain' \ --data-raw '{"jsonrpc":"2.0","method":"admin_nodeInfo","params":[],"id":1}' ```

shemnon (Wed, 02 Dec 2020 16:28:22 GMT):
try ``` curl --request POST 'http://localhost:8545' \ --data-raw '{"jsonrpc":"2.0","method":"admin_nodeInfo","params":[],"id":1}' ```

timbeiko (Wed, 02 Dec 2020 16:28:26 GMT):
> Or is it the case that these ETH1 nodes have been working in production for a long time and aside from a massive hidden bug will not require updating in advance of the full transition to Eth2? Re: this, there is no node that "won't require updating before Eth2". Ethereum often has network upgrades (the next one should be early Q1), which require users, at least on mainnet, to update their nodes. We also often ship new features, which you can only use via upgrades.

shemnon (Wed, 02 Dec 2020 16:28:30 GMT):
and then try with the node-ip variant

timbeiko (Wed, 02 Dec 2020 16:29:28 GMT):
> I see on ethernodes.org Besu hasnt had that much uptake and I am curious as to why..? The main reason, in my experience, for people not switching, is relying on non-standard APIs from other clients, such as geth and parity. We're working on adding compatibility for those, such as the Parity tracing APIs (see: https://besu.hyperledger.org/en/stable/Reference/API-Methods/#trace-methods)

timbeiko (Wed, 02 Dec 2020 16:45:27 GMT):
Hey @cyrilnaves, It seems our docs are not fully up to date about this, sorry! You need to set profiling via environment variables, e.g.: `export BESU_OPTS=-XX:StartFlightRecording=disk=true,delay=15s,dumponexit=true, \ filename=/tmp/recording.jfr, maxsize=1024m,maxage=1d, \ settings=profile,path-to-gc-roots=true`

timbeiko (Wed, 02 Dec 2020 16:45:27 GMT):
Hey @cyrilnaves, It seems our docs are not fully up to date about this, sorry! You need to set profiling via environment variables, e.g.: ``` export BESU_OPTS=-XX:StartFlightRecording=disk=true,delay=15s,dumponexit=true, \ filename=/tmp/recording.jfr, maxsize=1024m,maxage=1d, \ settings=profile,path-to-gc-roots=true ```

timbeiko (Wed, 02 Dec 2020 16:46:08 GMT):
This is assuming you are running it from a shell script. Somehow BESU_OPTS needs to be set to the jfr flags. Docker compose has one way, systemctl has a different way.

EmcLab (Wed, 02 Dec 2020 19:10:45 GMT):
@shemnon curl --request POST 'http://node-ip:8545'... above returns { "jsonrpc":2.0, "id:1, "error":{ "code":-32604, "message":"Method not enabled" }

EmcLab (Wed, 02 Dec 2020 19:13:16 GMT):
curl -X POST --data '{"jsonrpm":2.0,"method":"net_version","params":[],"id":1}' node-ip:8545 returns { "jsonrpc":"2.0", "id":1, "result":"1981" }

EmcLab (Wed, 02 Dec 2020 19:13:52 GMT):
Here is the config.toml

EmcLab (Wed, 02 Dec 2020 19:16:14 GMT):
max-peers=42 #rpc-http-host="192.168.1.70" #"192.168.1.70" - node private ip address rpc-http-host="0.0.0.0" rpc-http-port=8545 rpc-http-enabled=true #host-allowlist="*" rpc-ws-host=["0.0.0.0"] rpc-ws-port=8546 rpc-ws-enabled=true #Metrics for monitoring metrics-port=9545 metrics-push-port=9001 min-gas-price=0 logging="DEBUG" #allow all host-allowlist=["*"] rpc-http-cors-origins=["*"] # Chain genesis-file="/home/user/bin/besu/bin/genesis.json" # Path to the custom genesis file # Mining miner-enabled=false

shemnon (Wed, 02 Dec 2020 19:22:24 GMT):
remix depends on the DEBUG series apis. those are not enabled by default. Add `rpc-http-api=["DEBUG","ETH","NET","ADMIN","WEB3"]`

EmcLab (Wed, 02 Dec 2020 19:49:38 GMT):
After adding "ADMIN" to rpc-http-api, cURL for admin_nodeInfo works fine.

EmcLab (Wed, 02 Dec 2020 23:14:59 GMT):
Hi team, for IBFT2 private network, is it possible to run 4 nodes from 4 subdirectories on the same physical server to form a network? It seems possible based on the setup lesson by pegasys. If it possible, is it doable for production environment (other than single point failure which is obvious)?

shemnon (Wed, 02 Dec 2020 23:32:25 GMT):
It will limit your throughput, but it is doable.

EmcLab (Thu, 03 Dec 2020 00:21:25 GMT):
Just curious if any besu network was setup in such a way. Maybe 2 physical server running 4 nodes for IBFT2

mharrison (Thu, 03 Dec 2020 00:28:46 GMT):
When I run a kubernetes ibft2 privacy example with 4 validator nodes and 3 privacy nodes. Are the privacy nodes also part of bft validation? I've also read examples of 4 validator nodes with one rpc node, but haven't seen this referenced in the documentation. But of these questions are wide, but I'm trying to understand how dynamic deployments are. Thanks!

mharrison (Thu, 03 Dec 2020 00:28:46 GMT):
When I run a kubernetes ibft2 privacy example with 4 validator nodes and 3 privacy nodes. Are the privacy nodes also part of bft validation? I've also read examples of 4 validator nodes with one rpc node, but haven't seen this referenced in the documentation. I'm trying to understand how dynamic deployments are. Thanks!

Manzik (Thu, 03 Dec 2020 01:32:37 GMT):
I rn a besu IBFT2 network with 4 validators and 3 orion nodes. when i initiate a transaction from metamask. it got stuck in pending transactions. How to cancel those pending transactions?

Manzik (Thu, 03 Dec 2020 01:32:37 GMT):
I run a besu IBFT2 network with 4 validators and 3 orion nodes. when i initiate a transaction from metamask. it got stuck in pending transactions. How to cancel those pending transactions?

shemnon (Thu, 03 Dec 2020 03:00:51 GMT):
That can work too. The main reason for 4 nodes is that IBFT2 doesn't work with less than 4 has to do with the voting thresholds and the math behind the consensus. Clique can run with as few as 1 nodes, but you lose finality and have to deal with orphan blocks.

KIMSON (Thu, 03 Dec 2020 04:55:17 GMT):
When running the private network example in the besu documentation for petshop dapp , when trying to adopt a pet the transaction is failed with a popup in metamask showing that "While formatting outputs from RPC json rpc error "

KIMSON (Thu, 03 Dec 2020 04:55:39 GMT):
Please provide a solution for this

sankara 5 (Thu, 03 Dec 2020 05:54:58 GMT):
Hi shemnon, can you provide me the steps to setup etc node without docker

sankara 5 (Thu, 03 Dec 2020 12:55:43 GMT):
Hi , i am running a ETC full node using hyperledger besu docker.

sankara 5 (Thu, 03 Dec 2020 12:55:43 GMT):
Hi , i am running a ETC full node using hyperledger besu docker. Its been three weeks and is at 8.3M, can you please let me know the ways to increase the sync speed. Below are the stats I have for my node: RAM - 8GB, Memory and IO are stats are below 50%, SSD drive. peers count is 15+

shemnon (Thu, 03 Dec 2020 14:00:30 GMT):
https://besu.hyperledger.org/en/stable/HowTo/Get-Started/Installation-Options/Install-Binaries/

shemnon (Thu, 03 Dec 2020 14:00:55 GMT):
The I/O on docker is just too slow to sync any of the public ethereum networks. https://besu.hyperledger.org/en/stable/HowTo/Get-Started/Installation-Options/Install-Binaries/

clowestab (Thu, 03 Dec 2020 16:21:35 GMT):
Thank you.

mharrison (Thu, 03 Dec 2020 16:33:21 GMT):
Go to settings > advanced > reset

mharrison (Thu, 03 Dec 2020 17:38:52 GMT):
Do you have a docker-compose or kubernetes config of how you set up this benchmarking test https://www.hyperledger.org/blog/2020/08/06/hyperledger-besu-1-5-performance-enhancements ? I want to learn more on how to setup an RPC node, and try out other benchmarking tests.

EmcLab (Thu, 03 Dec 2020 20:49:20 GMT):
Hi team, when submitting transaction to IBFT2 network, shall the tx object set gas related fields, such as gasLimit? If it does, what is the proper value?

EmcLab (Thu, 03 Dec 2020 20:51:03 GMT):
Received the error of known transaction which seems to be related to gas limit.

shemnon (Thu, 03 Dec 2020 21:06:41 GMT):
Gas Limit should not exceed the block gas limit, this is an anti-abuse mechanism for smart contracts. eth_estimateGas * 1.10 seems to be sufficient usually.

shemnon (Thu, 03 Dec 2020 21:07:03 GMT):
Even though IBFT can be set to a zero gas fee network it still uses gas to prevent runaway contracts.

shemnon (Thu, 03 Dec 2020 21:07:57 GMT):
You mean for the "Requests Per Second (RPS) " segment? Those were set up by hand IIRC.

EmcLab (Thu, 03 Dec 2020 21:27:38 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=p43yHkEDtJDaPPAYR) @shemnon , do you mean limited ability to concurrently handle large number of user requests by "limit throughput" when 4 IBFT2 nodes are on a single physical server?

shemnon (Thu, 03 Dec 2020 21:35:54 GMT):
Yes, large number of RPC requests and large numbers of transactions in the chain.

timbeiko (Thu, 03 Dec 2020 22:20:22 GMT):
:besu: Besu 20.10.2 is out :besu: :star2: Highlights :star2: - Added support for batched requests in WebSockets. #1583 - Added protocols section to admin_peers to provide info about peer health. #1582 - Added CLI option --goquorum-compatibility-enabled to enable GoQuorum compatibility mode. #1598. (This mode is incompatible with Mainnet) - Fixed a longstanding issue with eth/65. It should now work on mainnet, and will likely be on by default starting from 20.10.3 :tada:

EmcLab (Fri, 04 Dec 2020 02:55:06 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=gyrNwTP8pqvkHNxnF) If using 2 physical servers to host 4 besu nodes (IBFT2), shall bootnode and RPC node be on 2 servers? Or bootnode and RPC node are better running on one physical server.

EmcLab (Fri, 04 Dec 2020 02:55:06 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=gyrNwTP8pqvkHNxnF) If using 2 physical servers to host 4 besu nodes (IBFT2), shall bootnode and RPC node be on 2 servers? Or bootnode and RPC node are better running on one same physical server.

shemnon (Fri, 04 Dec 2020 03:11:12 GMT):
Bootnode is just another validator once the first connection is made.

EmcLab (Fri, 04 Dec 2020 05:58:04 GMT):
Hi team, does the follow log (IBFT2) smells alarm - Peer table refresh triggered by insufficient peers? 2020-12-03 21:53:25.673-08:00 | vert.x-eventloop-thread-1 | DEBUG | PeerDiscoveryController | Peer table refresh triggered by insufficient peers

EmcLab (Fri, 04 Dec 2020 05:58:19 GMT):
There are 4 nodes running on the network.

EmcLab (Fri, 04 Dec 2020 05:58:43 GMT):
2020-12-03 21:53:27.701-08:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 3

EmcLab (Fri, 04 Dec 2020 05:58:43 GMT):
Hi team, what is the command to check tx pool status in ssh windows (IBFT2 network)? The tx submitted was never validated and mined.

urtuba (Fri, 04 Dec 2020 11:52:01 GMT):
Has joined the channel.

urtuba (Fri, 04 Dec 2020 11:52:02 GMT):
Hello, I am trying to install Besu on linux using binaries. Documentation does not help

NicolasMassart (Fri, 04 Dec 2020 11:52:38 GMT):
Hi, what is your issue?

urtuba (Fri, 04 Dec 2020 11:52:45 GMT):
Download the Besu packaged binaries. Unpack the downloaded files and change into the besu- directory.

urtuba (Fri, 04 Dec 2020 11:53:06 GMT):
that is the directions in documentation

urtuba (Fri, 04 Dec 2020 11:53:54 GMT):
Downloaded binaries doesn't have bin/besu file or folder.

urtuba (Fri, 04 Dec 2020 11:54:08 GMT):
I downloaded them as mentioned and extracted.

urtuba (Fri, 04 Dec 2020 11:54:21 GMT):
https://besu.hyperledger.org/en/stable/HowTo/Get-Started/Installation-Options/Install-Binaries/

NicolasMassart (Fri, 04 Dec 2020 11:54:26 GMT):
Let me check

NicolasMassart (Fri, 04 Dec 2020 11:54:52 GMT):
What version did you DL?

urtuba (Fri, 04 Dec 2020 11:55:11 GMT):
lastest one

urtuba (Fri, 04 Dec 2020 11:55:31 GMT):
20.10.2

NicolasMassart (Fri, 04 Dec 2020 11:55:53 GMT):
Hum strange, I can see the bin dir with besu executable in the uncompressed 20.10.2 archive

NicolasMassart (Fri, 04 Dec 2020 11:56:10 GMT):
What OS are you using?

NicolasMassart (Fri, 04 Dec 2020 11:56:21 GMT):
Oh, you said it, linux, sorry

urtuba (Fri, 04 Dec 2020 11:56:28 GMT):
yes

urtuba (Fri, 04 Dec 2020 11:56:43 GMT):
I don't have them in both

urtuba (Fri, 04 Dec 2020 11:56:48 GMT):
zip or tar.gz

NicolasMassart (Fri, 04 Dec 2020 11:57:04 GMT):
Can you try to provide the output of the `tree` command run into the folder of the uncompresse archive please?

urtuba (Fri, 04 Dec 2020 11:58:47 GMT):
okay

NicolasMassart (Fri, 04 Dec 2020 11:59:04 GMT):
For the record I DL the archive from https://github.com/hyperledger/besu/releases/tag/20.10.2 I guess this is the same for you

urtuba (Fri, 04 Dec 2020 12:00:11 GMT):
yes it is the same, how can I send you the output properly

urtuba (Fri, 04 Dec 2020 12:00:18 GMT):
since it is very long

NicolasMassart (Fri, 04 Dec 2020 12:00:41 GMT):
Just past it here I guess... if there's nothing too private in the dir listing ;)

NicolasMassart (Fri, 04 Dec 2020 12:01:41 GMT):
Just to make sure, can you check your archive checksum please? `shasum -a 256 besu-20.10.2.zip`

NicolasMassart (Fri, 04 Dec 2020 12:02:05 GMT):
Should output `710aed228dcbe9b8103aef39e4431b0c63e73c3a708ce88bcd1ecfa1722ad307`

urtuba (Fri, 04 Dec 2020 12:02:26 GMT):
is it same for tar file?

urtuba (Fri, 04 Dec 2020 12:02:43 GMT):
by the way I am still scrolling to start of tree's output

urtuba (Fri, 04 Dec 2020 12:04:13 GMT):

urtuba - Fri Dec 04 2020 15:04:08 GMT+0300 (+03).txt

NicolasMassart (Fri, 04 Dec 2020 12:04:27 GMT):
no. TGZ file sum is 3a75d3ffdf1ea88df06f1ce0e11e8753f33cd37be72c87e109a3292cf7bbf3cf

NicolasMassart (Fri, 04 Dec 2020 12:05:10 GMT):
Oh you downloaded the source code and not the binaries!

urtuba (Fri, 04 Dec 2020 12:05:21 GMT):
ohh

urtuba (Fri, 04 Dec 2020 12:05:28 GMT):
I wasted your time

NicolasMassart (Fri, 04 Dec 2020 12:05:36 GMT):
Check this https://bintray.com/hyperledger-org/besu-repo/besu/20.10.2#files

urtuba (Fri, 04 Dec 2020 12:05:40 GMT):
I am so sorry :(

NicolasMassart (Fri, 04 Dec 2020 12:05:45 GMT):
That's fine, don't be sorry ;)

urtuba (Fri, 04 Dec 2020 12:05:55 GMT):
Ty for your help

NicolasMassart (Fri, 04 Dec 2020 12:06:22 GMT):
You're welcome. Enjoy Besu ;) Let us know if you have any question!

urtuba (Fri, 04 Dec 2020 12:06:41 GMT):
Of course! Good luck :)

urtuba (Fri, 04 Dec 2020 12:31:54 GMT):
Can I ask one more question

urtuba (Fri, 04 Dec 2020 12:36:03 GMT):
A question about IBFT-private network setup, I get error "org.rocksdb.RocksDBException: While fsync: a directory: Invalid argument" while running first node.

urtuba (Fri, 04 Dec 2020 12:36:03 GMT):
A question about IBFT-private network setup, I get error "org.rocksdb.RocksDBException: While fsync: a directory: Invalid argument" while running first node. What can I do about it? by the way I am using linux in a virtual machine as environment.

urtuba (Fri, 04 Dec 2020 12:36:03 GMT):
A question about IBFT-private network setup, I get error "org.rocksdb.RocksDBException: While fsync: a directory: Invalid argument" while running first node. What can I do about it? by the way I am using linux in a virtual machine as environment. :eight_spoked_asterisk: SOLUTION FOUND: Problem is about shared folder between virtual and host machines.

urtuba (Sat, 05 Dec 2020 07:29:26 GMT):
I am trying to move my local IBFT 2.0 network's nodes transfer another computer clouds to make it distributed. But I could not find any clear guide, can somebody help me about resources & steps?

urtuba (Sat, 05 Dec 2020 07:29:26 GMT):
Hello team, I am trying to move my local IBFT 2.0 network's nodes transfer another computer clouds to make it distributed. But I could not find any clear guide, can somebody help me about resources & steps?

urtuba (Sat, 05 Dec 2020 07:29:26 GMT):
Hello team, I am trying to move my local IBFT 2.0 network's nodes transfer to separate clouds/computers to make it distributed. But I could not find any clear guide, can somebody help me about resources & steps?

urtuba (Sat, 05 Dec 2020 07:29:26 GMT):
Hello team, I am trying to move my local IBFT 2.0 network's nodes transfer to separate clouds/computers to make it distributed. But I could not find any clear guide, could somebody help me about resources & steps?

EmcLab (Sun, 06 Dec 2020 06:04:36 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=KbuhKifHS28ozqKhk) Hi team, here is the output of APi command txpool_besuTransaction on IBFT2 network. But the tx was never mined. If the same tx is submitted again, error of Known Transaction pops up. What is wrong here? $ curl -X POST --data '{"jsonrpc":"2.0","method":txpool_besuTransactions","params":[], "id":1}' http://127.0.0.1:8545 { "jsonrpc" : "2.0", "id" : 1, "result" : [ { "hash" : "0x7841f5a1da323acb5ea6c6d8d3f9de68445a3b2e55a75c225789c9102a2ea1b6", "isReceivedFromLocalSource" : true, "addedToPoolAt" : "2020-12-06T04:18:57.499299941Z" } ]

urtuba (Sun, 06 Dec 2020 16:27:34 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=2c3XdJetZm44DQLDy) I set my p2p and rpc hosts 0.0.0.0, I used free credits of google cloud and create 4 nodes and uploaded genesis files each of them. I started nodes like in a local network but host adresses are 0.0.0.0. They are unable to discover each other, then i tried to replace 0.0.0.0's with external IP of bootnode but they are still not able to connect.

krouspy (Sun, 06 Dec 2020 19:22:16 GMT):
Has joined the channel.

krouspy (Sun, 06 Dec 2020 19:54:52 GMT):
Hello, I'm trying to retrieve logs through Kibana. I'm using this repo from the documentation https://github.com/ConsenSys/quorum-dev-quickstart with ELK enabled for monitoring/logs. In my case I have a contract that emits an event on creation. For now I use the json rpc, I create a filter with `eth_newFilter` for this specific topic and retrieve logs with `eth_getFilterLogs`. It works very well but I didn't manage to make it work with Kibana. I'm not familiar with ELK so it would be really helpful if you have any guidance. Thanks

EmcLab (Mon, 07 Dec 2020 02:12:17 GMT):
Hi team, here is the genesis.json file for IBFT2 network. The problem is that tx submitted was never mined. Is the genesis.json file (copied from Besu doc) correct? { "config": { "chainId": 1981, "muirglacierblock": 0, "ibft2": { "blockperiodseconds": 2, "epochlength": 30000, "requesttimeoutseconds": 4 } }, "nonce": "0x0", "timestamp": "0x58ee40ba", "extraData": "0xf83ea00000000000000000000000000000000000000000000000000000000000000000d594c2ab482b506de561668e07f04547232a72897daf808400000000c0", "gasLimit": "0x1fffffffffffff", "difficulty": "0x1", "mixHash": "0x63746963616c2062797a616e74696e65206661756c7420746f6c6572616e6365", "contractSizeLimit":2147483647, "alloc": {} }

raychan11111 (Mon, 07 Dec 2020 04:58:31 GMT):
Has joined the channel.

raychan11111 (Mon, 07 Dec 2020 04:58:31 GMT):
Hi team,

NicolasMassart (Mon, 07 Dec 2020 07:32:24 GMT):
Would you have the command line options used to run the node please?

gen_el (Mon, 07 Dec 2020 18:06:44 GMT):
Has joined the channel.

shemnon (Mon, 07 Dec 2020 18:46:13 GMT):
Is there private stat involved? Is this a validator where the key need to be preserved? A guide should be written but there are two main ways to do it (a) copy everything in the --data-path to the new node or (b) start up a new node in the new location and let it sync off the network. For (b) you may need to start with a new node key while syncing then copy the key from the old location (${DATA_PATH}/key) to the new node and restart it once in sync.

shemnon (Mon, 07 Dec 2020 18:46:13 GMT):
Is there private state involved? Is this a validator where the key need to be preserved? A guide should be written but there are two main ways to do it (a) copy everything in the --data-path to the new node or (b) start up a new node in the new location and let it sync off the network. For (b) you may need to start with a new node key while syncing then copy the key from the old location (${DATA_PATH}/key) to the new node and restart it once in sync.

shemnon (Mon, 07 Dec 2020 18:46:51 GMT):
Private state makes it more complicated and I should let the maintainers who deal with private state talk about that.

shemnon (Mon, 07 Dec 2020 18:50:17 GMT):
p2p needs special handling, the effect of simply setting `--p2p-host` to 0.0.0.0 is that your enodes advertise that 0.0.0.0 is the host to connect to. set `--p2p-interface=0.0.0.0` and `--p2p-host=`. The `--p2p-host` value gets added directly to the enode as-is. So if they can see each other via the internal 10.x.x.x network that is ok, or you may need the public address. This may be a google cloud security issue as Im not sure how wide open they make their ports.

mharrison (Mon, 07 Dec 2020 20:53:39 GMT):
Ah ok, so you set up an RPC node by hand, which then communicated to the other nodes via devp2p? Do you have any other info on how you set this up? Thanks @shemnon

EmcLab (Mon, 07 Dec 2020 22:25:13 GMT):
@NicolasMassart , Here is the boot node config.toml:

EmcLab (Mon, 07 Dec 2020 22:25:13 GMT):
@NicolasMassart , Here is the boot/RPC node config.toml:

EmcLab (Mon, 07 Dec 2020 22:25:19 GMT):
# Valid TOML config file data-path="./data" # Path # Network bootnodes=["enode://923f4bb2cc2e456ebe88afb5f2d8c6a84d5758b99840fc34d2fcf9df7e3a1204fed83524a50cf37533bee9a055d916c1634932a7f7129a10b0e43e570d932088@127.0.0.1:30303", "enode://0fdbb968c6082e5fb0de13cd8379961d5be7b24d4ff7f4eb378c738ca4cff4f13f3fb021883848fd783de1b592a101382c0401663a7c90313493a13da6a7b9c0@127.0.0.1:30304", "enode://534825b93db8b4220204d3c11ca5570373e2af0b4cf2a4c392b6e4ffdfc8e6185e2d20b9832998c7ce63e8c6ffaa7662f8c1dbed1fff882cde0e33d75ffa8859@127.0.0.1:30305", "enode://2741de7be2482ceb7d11a2c140d64bf8b448445718e74b556585d42d8554958ea97a868ff0c77d9b15fe30d7fa691c69a8933216f69077d5e49661387f3bac6b@127.0.0.1:30306"] p2p-port=30303 max-peers=42 #rpc-http-host="192.168.1.70" #"192.168.1.70" rpc-http-host=["0.0.0.0"] rpc-http-port=8545 rpc-http-enabled=true rpc-http-api=["ETH", "NET","WEB3","ADMIN","TXPOOL","IBFT", "EEA","DEBUG"] rpc-ws-host=["0.0.0.0"] rpc-ws-port=8546 rpc-ws-enabled=true #Metrics for monitoring metrics-port=9545 metrics-push-port=9001 min-gas-price=0 logging="DEBUG" #allow all host-allowlist=["*"] rpc-http-cors-origins=["*"] # Chain genesis-file="./genesis.json" # Path to the custom genesis file node-private-key-file="./key" # Mining miner-enabled=false miner-coinbase="0xfe3b557e8fb62b89f4916b721be55ceb828dbd73"

EmcLab (Mon, 07 Dec 2020 22:27:42 GMT):
Here is the config.toml for validator node. There are 4 nodes in the network running on one physical server

EmcLab (Mon, 07 Dec 2020 22:28:05 GMT):
# Valid TOML config file data-path="./data" # Path # Network bootnodes=["enode://923f4bb2cc2e456ebe88afb5f2d8c6a84d5758b99840fc34d2fcf9df7e3a1204fed83524a50cf37533bee9a055d916c1634932a7f7129a10b0e43e570d932088@127.0.0.1:30303", "enode://0fdbb968c6082e5fb0de13cd8379961d5be7b24d4ff7f4eb378c738ca4cff4f13f3fb021883848fd783de1b592a101382c0401663a7c90313493a13da6a7b9c0@127.0.0.1:30304", "enode://534825b93db8b4220204d3c11ca5570373e2af0b4cf2a4c392b6e4ffdfc8e6185e2d20b9832998c7ce63e8c6ffaa7662f8c1dbed1fff882cde0e33d75ffa8859@127.0.0.1:30305", "enode://2741de7be2482ceb7d11a2c140d64bf8b448445718e74b556585d42d8554958ea97a868ff0c77d9b15fe30d7fa691c69a8933216f69077d5e49661387f3bac6b@127.0.0.1:30306"] #p2p-host="192.168.1.69" p2p-port=30304 max-peers=42 #rpc-http-host="192.168.1.69" #rpc-http-port=8545 #rpc-ws-host="192.168.1.69" #rpc-ws-port=8546 #Metrics for monitoring metrics-port=9546 metrics-push-port =9002 min-gas-price=0 # Chain genesis-file="./genesis.json" # Path to the custom genesis file node-private-key-file="./key" # Mining miner-enabled=false miner-coinbase="0xfe3b557e8fb62b89f4916b721be55ceb828dbd73"

EmcLab (Mon, 07 Dec 2020 22:28:49 GMT):
Just updated besu to lateest 20.10.2 today and the problem is the same.

EmcLab (Mon, 07 Dec 2020 22:30:54 GMT):
Here is the link for issue report on besu github with more detail. The RPC node returns the hash in txpool. https://github.com/hyperledger/besu/issues/1670

EmcLab (Mon, 07 Dec 2020 22:34:30 GMT):
I have been stuck with the issue for more than a week. Since the tx submitted sits in the txpool and was never get mined/validated, I suspected it is something with besu IBFT2 network setup. Please help. Thanks.

EmcLab (Mon, 07 Dec 2020 22:34:30 GMT):
I have been stuck with the issue for more than a week. Since the tx submitted sits in the txpool and was never get mined/validated, I suspected it is something with besu IBFT2 network setup. Please help. Many thanks.

shemnon (Mon, 07 Dec 2020 23:18:38 GMT):
That's basically it. Set up a program to fire RPC requests at a fixed rate. I think ethspam was the tool we used - https://github.com/shazow/ethspam

EmcLab (Tue, 08 Dec 2020 05:21:22 GMT):

EmcLab - Mon Dec 07 2020 21:21:07 GMT-0800 (Pacific Standard Time).txt

EmcLab (Tue, 08 Dec 2020 05:25:35 GMT):
Is there any block generated in the log above? IBFT2 network

EmcLab (Tue, 08 Dec 2020 05:57:45 GMT):
besu blocks export --to=t.txt says Chain is empty. Unable to export blocks from specified data directory: /home/admin/bin/besu/database

EmcLab (Tue, 08 Dec 2020 07:38:48 GMT):
Hi team, on IBFT2 netwok, does the method txpool_besuTransaction returns the tx mined or not yet mined? curl -X POST --data '{"jsonrpc":"2.0","method":"txpool_besuTransactions","params":[],"id":1}' http://127.0.0.1:8545 { "jsonrpc" : "2.0", "id" : 1, "result" : [ { "hash" : "0x7841f5a1da323acb5ea6c6d8d3f9de68445a3b2e55a75c225789c9102a2ea1b6", "isReceivedFromLocalSource" : true, "addedToPoolAt" : "2020-12-08T07:33:01.795343450Z" } ]

matkt (Tue, 08 Dec 2020 09:27:32 GMT):
transactions that are in the pool are not yet mined

EmcLab (Wed, 09 Dec 2020 04:51:50 GMT):
Hi team, on 4 nodes IBFT2 network, a block has only one validator instead of 3. What can be wrong here?

EmcLab (Wed, 09 Dec 2020 04:51:53 GMT):
$curl -X POST --data '{"jsonrpc":"2.0","method":"ibft_getValidatorsByBlockNumber","params":["latest"], "id":1}' http://127.0.0.1:8545 { "jsonrpc" : "2.0", "id" : 1, "result" : [ "0xc2ab482b506de561668e07f04547232a72897daf" ] }

trent.mohay (Wed, 09 Dec 2020 20:49:18 GMT):
Hi @EmcLab it looks like the extradata field in youir genesis file is incorrect. That string is an RLP encoded structure which includes the addresses of the nodes which must work together to mine the first block (this mechanism is then repeated for every block thereafter). I suspect the address in your extradata doesn't correspond to any of your running nodes - and thus, no blocks. You'll need to work out the addresses of your validator nodes, and construct the correct extraData string to put into your Genesis file. Some/most of this is automated by the generate-blockchain-config subcommand of besu (https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Subcommands/#generate-blockchain-config)

sankara 5 (Thu, 10 Dec 2020 05:33:16 GMT):
Hi Shemnon, My ETC fast node , got stuck second time after reaching at 10.32M.and started checked the world state completion: 6.7% and is taking days here, can you please let me know the issue here

shemnon (Thu, 10 Dec 2020 05:47:10 GMT):
Is this still being run on docker or in a k8s cluster? Any of the public chains need to be run on bare metal.

EmcLab (Thu, 10 Dec 2020 07:27:31 GMT):
@trent.mohay , I construct a 4 ndes IBFT2 network using the example provided on Besu doc and there are blocks generated. the extradata was copied from the doc example. There is a strange problem. My dapp can deploy contract to a ganache test net successfully. However when the contract was deployed to IBFT2 network on public internet, the dapp never received any reply from the node (no error at all). Do you know how it could happen? I am clueless about this node behavior.

sankara 5 (Thu, 10 Dec 2020 07:38:04 GMT):
we are still using docker, all of our nodes are running on dockers like btc, eth. our earlier ETC node also ran on docker

sankara 5 (Thu, 10 Dec 2020 07:38:04 GMT):
we are still using docker, all of our nodes are running on dockers like btc, eth. our earlier ETC node also ran on docker. Not sure why it is stopping at the same area. after reaching 10.3M

sankara 5 (Thu, 10 Dec 2020 07:38:04 GMT):
we are still using docker, all of our nodes are running on dockers like btc, eth. our earlier ETC node also ran on docker. Not sure why it is stopping at the same area. after reaching block 10387983.

trent.mohay (Thu, 10 Dec 2020 08:02:03 GMT):
The sample genesis file in the tutorial is only a sample - the extradata in it includes only a single validator - so, its very important that when you create a new genesis file you create a valid extradata field - which must include the addresses of the nodes which are going to be your validators - check step-3 of the tutorial - I think that's where the tutorial creates a valid ExtraData string

trent.mohay (Thu, 10 Dec 2020 08:02:52 GMT):
it's _critical_ that the node keys used in the nodes which are validators have their corresponding addresses in the extraData, or else no blocks will be created

trent.mohay (Thu, 10 Dec 2020 08:02:52 GMT):
I'm assuming you're looking at the configuration file shown under step-2? If so - I'm also assuming you're looking at the private keys under the "alloc" section. If I've got this wrong, the rest of this won't make much sense :) So - the config file is ALMOST identical to a genesis file, but without the extraData field. In a genesis file (and config that specific config file) - the "alloc" section is the funded ACCOUNTS at the start of the network - and is _not_ related to the IBFT2 validators. We just happen to put the private-keys in that example so that you can sign transactions for the funded accounts (you would NEVER put this in a production genesis file)

sankara 5 (Thu, 10 Dec 2020 10:56:19 GMT):
Hi, I have checked the logs of ETC, it is trying to establish connection , but rejecting all peers before data exchange

sankara 5 (Thu, 10 Dec 2020 10:56:19 GMT):
Hi, I have checked the logs of ETC, it is trying to establish connection , but rejecting all peers before data exchange, no suitable peer conenction.

sankara 5 (Thu, 10 Dec 2020 10:56:19 GMT):
Hi, I have checked the logs of ETC, it is trying to establish connection , but rejecting all peers before data exchange, no suitable peer conenction. I can see my ETC is running with version v1.

sankara 5 (Thu, 10 Dec 2020 11:30:36 GMT):
Hi Team, I am getting the below issue with my Besu ETC node, 2020-12-10 11:23:05.565+00:00 | nioEventLoopGroup-3-6 | DEBUG | AbstractPeerConnection | Disconnected (0x01 TCP_SUBSYSTEM_ERROR) from PeerInfo{version=5, clientId='Parity-Ethereum/v2.5.13-stable-253ff3f-20191231/x86_64-linux-gnu/rustc1.40.0', capabilities=[eth/62, eth/63, par/1, par/2, par/3, pip/1], port=30303, nodeId=0x977fcc573524763f7e270fe9f76c3d1b4a82f21496da5ae74b0789240a18b67b9a69a066275dd2476436fe4c54407c4c52e164d4e2641ebf6d6d61e80c23ab4f} 2020-12-10 11:23:05.565+00:00 | nioEventLoopGroup-3-6 | DEBUG | EthProtocolManager | Disconnecting from peer (0x01 TCP_SUBSYSTEM_ERROR), 2 peers left: EthPeers{connections=0xb9e893ea9cb4537f4f...,0x62c47ee55e0f15779f...}

sankara 5 (Thu, 10 Dec 2020 11:30:36 GMT):
Hi Team, I am getting the below issue with my Besu ETC node, 2020-12-10 11:23:05.565+00:00 | nioEventLoopGroup-3-6 | DEBUG | AbstractPeerConnection | Disconnected (0x01 TCP_SUBSYSTEM_ERROR) from PeerInfo{version=5, clientId='Parity-Ethereum/v2.5.13-stable-253ff3f-20191231/x86_64-linux-gnu/rustc1.40.0', capabilities=[eth/62, eth/63, par/1, par/2, par/3, pip/1], port=30303, nodeId=0x977fcc573524763f7e270fe9f76c3d1b4a82f21496da5ae74b0789240a18b67b9a69a066275dd2476436fe4c54407c4c52e164d4e2641ebf6d6d61e80c23ab4f} 2020-12-10 11:23:05.565+00:00 | nioEventLoopGroup-3-6 | DEBUG | EthProtocolManager | Disconnecting from peer (0x01 TCP_SUBSYSTEM_ERROR), 2 peers left: EthPeers{connections=0xb9e893ea9cb4537f4f...,0x62c47ee55e0f15779f...}, and my node stopped synching at block 10387983. can someone help me. From last 2 days my node keeps on checking with world node state

shemnon (Thu, 10 Dec 2020 14:12:33 GMT):
I'm not sure myself. Since the Thanos fork basically all OpenEthereum/Parity nodes have fallen off the network.

EmcLab (Thu, 10 Dec 2020 15:40:42 GMT):
After adding rpc-http-host=["0.0.0.0"] to config and the node starts to take tx submission. My bad as I thought host-allowlist will allow rpc calls from any host. @trent.mohay

aaltenbernd (Thu, 10 Dec 2020 17:35:55 GMT):
Hi does anyone has experience with openshift and besu?

shemnon (Thu, 10 Dec 2020 18:13:19 GMT):
Two things: (a) parity is not compatible with the thanos hard fork. you will never get to full sync on classic with that peer. Are you running 20.10.2? (b) make sure other nodes can connect to you remotely. ensure that you are advertising the correct external IP and ports (--p2p-host --p2p-port) and that you are forwarding those external connections to your node.

EmcLab (Thu, 10 Dec 2020 21:10:44 GMT):
Hi @trent.mohay , in the example in doc, the private key is included in the genesis seed file to generate genesis.json and keys. The doc says the private key is not needed in seed file. Can I remove the private keys all together in seed file before running the besu operator command?

trent.mohay (Thu, 10 Dec 2020 22:23:55 GMT):
The genesis configuration file in step-2 contains the private keys in the "alloc" section, such that when playing on your network, you are able to access the funded accounts - these are NOT part of the

trent.mohay (Thu, 10 Dec 2020 22:27:57 GMT):
So, I’m assuming you’re looking at the configuration file in step-2 of the IBFT2 tutorial? If not, the rest of this won’t make sense :) So - the configuration file is ALMOST identical to a genesis file, except its missing the extraData field. The alloc section of the configuration file is the same as used in a normal genesis file - it represents the funded accounts which exist at network creation - they are NOT related to the IBFT2 consensus mechanism. We typically include the account private-keys our tutorial/test genesis files such that users are able to easily sign transactions in a test environment. Private keys would NEVER appear in a production genesis file.

trent.mohay (Thu, 10 Dec 2020 22:28:42 GMT):
So yes, you can indeed remove the private keys from the configuration file (and thus they will not appear in the generated genesis file either.

trent.mohay (Thu, 10 Dec 2020 22:31:51 GMT):
The operator command is responsible for creating "n" (defined as 'count'. in the config file) keyPairs, creating an extraData string using those 'n' generated keyPairs, then generating a genesis file using the content of the config file plus the extraData string created. At that stage, it is important that you run use each of the generated keys in one of your nodes - to ensure the node key/address corresponds with the genesis file used.

EmcLab (Thu, 10 Dec 2020 23:31:22 GMT):
@trent.mohay , I check each of the key and key.pub generated and they are not equal any of the private keys listed in alloc {} in the example (https://besu.hyperledger.org/en/1.3.6/Tutorials/Private-Network/Create-IBFT-Network/#2-create-configuration-file). I am confused by those private keys listed in the example above.

EmcLab (Thu, 10 Dec 2020 23:31:22 GMT):
@trent.mohay , I check each of the key and key.pub generated and they are not equal to any of the private keys listed in alloc {} in the example (https://besu.hyperledger.org/en/1.3.6/Tutorials/Private-Network/Create-IBFT-Network/#2-create-configuration-file). I am confused by those private keys listed in the example above.

trent.mohay (Fri, 11 Dec 2020 00:03:03 GMT):
they are two completely different concepts.

trent.mohay (Fri, 11 Dec 2020 00:03:54 GMT):
the keys in "alloc" are effectively 'people'. in the network who can trade eth, or call contracts. The NODE KEY files represent unique identifiers of the actual Besu nodes (so more like infrastructures rather than bank-account details)

trent.mohay (Fri, 11 Dec 2020 00:03:54 GMT):
the keys in "alloc" are effectively 'people'. in the network who can trade eth, or call contracts. The NODE KEY files represent unique identifiers of the actual Besu nodes (so - more like infrastructure information)

Manzik (Fri, 11 Dec 2020 04:11:04 GMT):
how can I connect to private besu clique network without genesis file? is this possible?

sankara 5 (Fri, 11 Dec 2020 04:53:21 GMT):
Hi Shenmon, I am using the Besu and I have not specified any boot nodes any where. Can you please specify any reliable peers or boot nodes, so that it will help me.

trent.mohay (Fri, 11 Dec 2020 04:56:10 GMT):
Hi @Manzik Without a genesis file, you cannot connect to a network - its the start point of any world state :/

joshuafernandes (Fri, 11 Dec 2020 05:02:52 GMT):
Hi @aaltenbernd we generally use AWS and Azure and GCP, are you experiencing issues running Besu in Openshift?

shemnon (Fri, 11 Dec 2020 05:40:09 GMT):
We have the classic standard boot nodes built in - https://github.com/hyperledger/besu/blob/master/ethereum/p2p/src/main/java/org/hyperledger/besu/ethereum/p2p/config/DiscoveryConfiguration.java#L101.

shemnon (Fri, 11 Dec 2020 05:40:52 GMT):
Peer discovery on classic is always problematic. If you don't have your discovery enode externally accessible to remote connections you will not be able to find good peers.

machadovilaca (Fri, 11 Dec 2020 17:06:20 GMT):
Hello, in besu how do you manage the release version? manually or gradlew calculates it based on path/minor/major?

shemnon (Fri, 11 Dec 2020 18:14:04 GMT):
We manage it manually. Gradle reads the version from `gradle.properties` (https://github.com/hyperledger/besu/blob/master/gradle.properties) and the build script does special things relating to the git version if it sees `SNAPSHOT` in the version.

machadovilaca (Fri, 11 Dec 2020 19:24:11 GMT):
ty

EmcLab (Fri, 11 Dec 2020 22:26:49 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=f3z7qo8Dh7gjQjhq6) @trent.mohay ,when creating IBFT2 network, what is the purpose including the funded account in `alloc`? Can it be blank? As you said in the quote, the private key is for EOA account and has nothing to be with node's private key.

Anomaly (Fri, 11 Dec 2020 23:09:53 GMT):
Has joined the channel.

Anomaly (Fri, 11 Dec 2020 23:09:53 GMT):
Hi All - not sure if this is the right spot. But I am getting an Error message that is "Error retrieving matching logs" followed by "Error processing JSON-RPS requestBody"

Anomaly (Fri, 11 Dec 2020 23:10:01 GMT):
any thoughts on how to remedy this issue?

shemnon (Fri, 11 Dec 2020 23:24:39 GMT):
Can you raise the logging level of the node to DEBUG and share what is emmitted in the log?

shemnon (Fri, 11 Dec 2020 23:25:07 GMT):
My inigial guess is you are sending a query that is too large to compete in 60 seconds. Too many blocks to consider or too much data to prepare.

RealDeanZhao (Sat, 12 Dec 2020 02:11:24 GMT):
Hi All, after upgrading besu docker from 1.4.3 to the latest version, it failed to start with the error "2020-12-12 02:02:03.339+00:00 | main | INFO | Besu | Security Module: localfile Supplied file does not contain valid keyPair pair." Anyone could help me with this issue?

RealDeanZhao (Sat, 12 Dec 2020 02:50:07 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=7wEefHj6rRBxfwnx4) I fixed this issue by add docker -u arg to pass the correct user.

shemnon (Sat, 12 Dec 2020 03:01:19 GMT):
I see you found the fix, but this was a breaking change in 1.5 "Docker users with volume mounts" - https://github.com/hyperledger/besu/releases/tag/1.5.0

berik1978 (Sat, 12 Dec 2020 12:21:26 GMT):
Has joined the channel.

berik1978 (Sat, 12 Dec 2020 12:21:26 GMT):
Hello! Can I use custom signature algorithm in transaction signing and verification?

shemnon (Sat, 12 Dec 2020 15:23:23 GMT):
No, we don't support pluggable encryption and the Ethereum 2.0 idea of "Account Abstraction" (EIP-2938) is still just a proposal as no clients have shipped an implementation and it hasn't been scheduled for a hard fork.

RealDeanZhao (Mon, 14 Dec 2020 02:06:01 GMT):
```2020-12-14 02:00:21.650+00:00 | EthScheduler-Services-1 (downloadHeaders) | WARN | PipelineChainDownloader | Chain download failed. Restarting after short delay. java.util.concurrent.CompletionException: org.hyperledger.besu.ethereum.eth.sync.tasks.exceptions.InvalidBlockException: Header failed validation.: Invalid block at #174547 (0xf309a26906e4ec9e6c2d9c5375abeaff987a05537b7848c203a9c7ea29916768)```when i tried to add a new node to the network, it failed with the above error message, could anyone help me with this?

RealDeanZhao (Mon, 14 Dec 2020 02:06:01 GMT):
```2020-12-14 02:00:21.650+00:00 | EthScheduler-Services-1 (downloadHeaders) | WARN | PipelineChainDownloader | Chain download failed. Restarting after short delay. java.util.concurrent.CompletionException: org.hyperledger.besu.ethereum.eth.sync.tasks.exceptions.InvalidBlockException: Header failed validation.: Invalid block at #174547 (0xf309a26906e4ec9e6c2d9c5375abeaff987a05537b7848c203a9c7ea29916768)```when i tried to add a new node to the network, it failed with the above error message, could anyone help me with this? I was using the latest docker image.

RealDeanZhao (Mon, 14 Dec 2020 02:06:01 GMT):
```2020-12-14 02:00:21.650+00:00 | EthScheduler-Services-1 (downloadHeaders) | WARN | PipelineChainDownloader | Chain download failed. Restarting after short delay. java.util.concurrent.CompletionException: org.hyperledger.besu.ethereum.eth.sync.tasks.exceptions.InvalidBlockException: Header failed validation.: Invalid block at #174547 (0xf309a26906e4ec9e6c2d9c5375abeaff987a05537b7848c203a9c7ea29916768)```when i tried to add a new node to the ibft network, it failed with the above error message, could anyone help me with this? I was using the latest docker image.

RealDeanZhao (Mon, 14 Dec 2020 02:24:20 GMT):
```Caused by: org.hyperledger.besu.ethereum.eth.sync.tasks.exceptions.InvalidBlockException: Header failed validation.: Invalid block at #175217 (0xc8c8971e1314d7a89466bc02b7a21bfb2aadf3bd3d602775652e143026cc2575) at org.hyperledger.besu.ethereum.eth.sync.tasks.DownloadHeaderSequenceTask.lambda$processHeaders$2(DownloadHeaderSequenceTask.java:235)``` I restarted the node and there was another net invalid block.

RealDeanZhao (Mon, 14 Dec 2020 02:24:20 GMT):
```Caused by: org.hyperledger.besu.ethereum.eth.sync.tasks.exceptions.InvalidBlockException: Header failed validation.: Invalid block at #175217 (0xc8c8971e1314d7a89466bc02b7a21bfb2aadf3bd3d602775652e143026cc2575) at org.hyperledger.besu.ethereum.eth.sync.tasks.DownloadHeaderSequenceTask.lambda$processHeaders$2(DownloadHeaderSequenceTask.java:235)``` I restarted the node and there was another new invalid block.

shemnon (Mon, 14 Dec 2020 05:08:52 GMT):
Can you increase the logging to debug? Currently all the invalid reasons are at debug.

RealDeanZhao (Mon, 14 Dec 2020 06:26:34 GMT):
```Caused by: org.hyperledger.besu.ethereum.eth.sync.tasks.exceptions.InvalidBlockException: Header failed validation.: Invalid block at #200 (0xf1a5d6548e66d967a63e1a674eb81920b7c5f3b033683134b4be254dda7709b7) at org.hyperledger.besu.ethereum.eth.sync.tasks.DownloadHeaderSequenceTask.lambda$processHeaders$2(DownloadHeaderSequenceTask.java:235) at java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(Unknown Source) at java.base/java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(Unknown Source) at java.base/java.util.concurrent.CompletableFuture.postComplete(Unknown Source) at java.base/java.util.concurrent.CompletableFuture.complete(Unknown Source) at org.hyperledger.besu.ethereum.eth.manager.task.GetBlockFromPeerTask.lambda$executeTask$0(GetBlockFromPeerTask.java:84) at java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(Unknown Source) at java.base/java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(Unknown Source) at java.base/java.util.concurrent.CompletableFuture.postComplete(Unknown Source) at java.base/java.util.concurrent.CompletableFuture.complete(Unknown Source) at org.hyperledger.besu.ethereum.eth.manager.task.AbstractPeerRequestTask.lambda$executeTask$2(AbstractPeerRequestTask.java:83) at java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(Unknown Source) at java.base/java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(Unknown Source) at java.base/java.util.concurrent.CompletableFuture.postComplete(Unknown Source) at java.base/java.util.concurrent.CompletableFuture.complete(Unknown Source) at java.base/java.util.Optional.ifPresent(Unknown Source) at org.hyperledger.besu.ethereum.eth.manager.task.AbstractPeerRequestTask.handleMessage(AbstractPeerRequestTask.java:104) at org.hyperledger.besu.ethereum.eth.manager.task.AbstractPeerRequestTask.lambda$executeTask$0(AbstractPeerRequestTask.java:67) at org.hyperledger.besu.ethereum.eth.manager.RequestManager$ResponseStream.dispatchBufferedResponses(RequestManager.java:171) at org.hyperledger.besu.ethereum.eth.manager.RequestManager$ResponseStream.processMessage(RequestManager.java:162) at org.hyperledger.besu.ethereum.eth.manager.RequestManager.lambda$dispatchResponse$0(RequestManager.java:55) at java.base/java.util.ArrayList.forEach(Unknown Source) at org.hyperledger.besu.ethereum.eth.manager.RequestManager.dispatchResponse(RequestManager.java:55) at org.hyperledger.besu.ethereum.eth.manager.EthPeer.dispatch(EthPeer.java:272) at org.hyperledger.besu.ethereum.eth.manager.EthPeers.dispatchMessage(EthPeers.java:111) at org.hyperledger.besu.ethereum.eth.manager.EthProtocolManager.processMessage(EthProtocolManager.java:264) at org.hyperledger.besu.ethereum.p2p.network.NetworkRunner.lambda$setupHandlers$0(NetworkRunner.java:135) at org.hyperledger.besu.ethereum.p2p.rlpx.connections.PeerConnectionEvents.lambda$dispatchMessage$1(PeerConnectionEvents.java:64) at org.hyperledger.besu.util.Subscribers.lambda$forEach$0(Subscribers.java:112) at java.base/java.lang.Iterable.forEach(Unknown Source) at org.hyperledger.besu.util.Subscribers.forEach(Subscribers.java:109)```

RealDeanZhao (Mon, 14 Dec 2020 06:26:55 GMT):
```at org.hyperledger.besu.ethereum.eth.manager.RequestManager.lambda$dispatchResponse$0(RequestManager.java:55) at java.base/java.util.ArrayList.forEach(Unknown Source) at org.hyperledger.besu.ethereum.eth.manager.RequestManager.dispatchResponse(RequestManager.java:55) at org.hyperledger.besu.ethereum.eth.manager.EthPeer.dispatch(EthPeer.java:272) at org.hyperledger.besu.ethereum.eth.manager.EthPeers.dispatchMessage(EthPeers.java:111) at org.hyperledger.besu.ethereum.eth.manager.EthProtocolManager.processMessage(EthProtocolManager.java:264) at org.hyperledger.besu.ethereum.p2p.network.NetworkRunner.lambda$setupHandlers$0(NetworkRunner.java:135) at org.hyperledger.besu.ethereum.p2p.rlpx.connections.PeerConnectionEvents.lambda$dispatchMessage$1(PeerConnectionEvents.java:64) at org.hyperledger.besu.util.Subscribers.lambda$forEach$0(Subscribers.java:112) at java.base/java.lang.Iterable.forEach(Unknown Source) at org.hyperledger.besu.util.Subscribers.forEach(Subscribers.java:109) at org.hyperledger.besu.ethereum.p2p.rlpx.connections.PeerConnectionEvents.dispatchMessage(PeerConnectionEvents.java:64) at org.hyperledger.besu.ethereum.p2p.rlpx.connections.netty.ApiHandler.channelRead0(ApiHandler.java:99) at org.hyperledger.besu.ethereum.p2p.rlpx.connections.netty.ApiHandler.channelRead0(ApiHandler.java:33) at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:99) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:324) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:296) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:714) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:650) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:576) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:493) at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989) at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)```

RealDeanZhao (Mon, 14 Dec 2020 06:27:14 GMT):
There are no any useful DEBUG message for this error.

RealDeanZhao (Mon, 14 Dec 2020 06:28:14 GMT):
```2020-12-14 06:21:02.281+00:00 | nioEventLoopGroup-3-2 | DEBUG | DeFramer | Received HELLO message: PeerInfo{version=5, clientId='besu/v20.10.2/linux-x86_64/oracle_openjdk-java-11', capabilities=[eth/62, eth/63, eth/64, IBF/1], port=30323, nodeId=0xf8e32e0f99db0c3b6e6c285f804874fbf7d06c80531f66b768e4c8cb0cf64a654c95e1cf226510d1a8da8365a7dff0a0a6f603b82fdaab188713cf3c595f42f4} 2020-12-14 06:21:02.281+00:00 | nioEventLoopGroup-3-2 | DEBUG | DeFramer | Enable compression for p2pVersion: 5 2020-12-14 06:21:02.289+00:00 | nioEventLoopGroup-3-2 | DEBUG | RlpxAgent | Node is not permitted to connect. Disconnect incoming connection: NettyPeerConnection{nodeId=0xf8e32e0f99db0c3b6e6c285f804874fbf7d06c80531f66b768e4c8cb0cf64a654c95e1cf226510d1a8da8365a7dff0a0a6f603b82fdaab188713cf3c595f42f4, clientId=besu/v20.10.2/linux-x86_64/oracle_openjdk-java-11, caps=IBF/1, eth/64} 2020-12-14 06:21:02.289+00:00 | nioEventLoopGroup-3-2 | DEBUG | AbstractPeerConnection | Disconnecting (0x UNKNOWN) from PeerInfo{version=5, clientId='besu/v20.10.2/linux-x86_64/oracle_openjdk-java-11', capabilities=[eth/62, eth/63, eth/64, IBF/1], port=30323, nodeId=0xf8e32e0f99db0c3b6e6c285f804874fbf7d06c80531f66b768e4c8cb0cf64a654c95e1cf226510d1a8da8365a7dff0a0a6f603b82fdaab188713cf3c595f42f4} 2020-12-14 06:21:02.292+00:00 | nioEventLoopGroup-3-2 | DEBUG | EthProtocolManager | Disconnecting from peer (0x UNKNOWN), 0 peers left: EthPeers{connections=} 2020-12-14 06:21:02.294+00:00 | nioEventLoopGroup-3-2 | DEBUG | EthProtocolManager | Ignoring message received from unknown peer connection: NettyPeerConnection{nodeId=0xf8e32e0f99db0c3b6e6c285f804874fbf7d06c80531f66b768e4c8cb0cf64a654c95e1cf226510d1a8da8365a7dff0a0a6f603b82fdaab188713cf3c595f42f4, clientId=besu/v20.10.2/linux-x86_64/oracle_openjdk-java-11, caps=IBF/1, eth/64}```

RealDeanZhao (Mon, 14 Dec 2020 06:32:08 GMT):
It's wired that I can successfully sync a new node on my Mac and another ubuntu server. I don't why it failed on a centos 7 machine.

RealDeanZhao (Mon, 14 Dec 2020 08:37:54 GMT):
I've found the root cause: the centos test server is 4 minutes later than the network... Here is the TRACE message: ```2020-12-14 08:26:19.542+00:00 | EthScheduler-Workers-3 | TRACE | TimestampBoundedByFutureParameter | Invalid block header: timestamp 1607934600 is greater than the timestamp margin 1607934380```

Helder_jn_Pinto (Mon, 14 Dec 2020 10:28:50 GMT):
Hi team! i want a genesis or arguments for use IBFT in one client mining just for testing in development, exist any configuration to do this ?

sankara 5 (Mon, 14 Dec 2020 12:56:44 GMT):
Hi shemnon , I have added the enode to my Fast node , but still my node synching past 10.3 M. Also my FULL node slowed down and started throwing TCP errors with peers connection. Are there any snap shots will be available for restoration?Synching problem giving us difficulties. Please help on these. We didn't face any issues while we used Parity.

sankara 5 (Mon, 14 Dec 2020 12:56:44 GMT):
Hi shemnon , I have added the enodes to my Fast node , but still my node synching past 10.3 M. Also my FULL node slowed down and started throwing TCP errors with peers connection. Are there any snap shots will be available for restoration?Synching problem giving us difficulties. Please help on these. We didn't face any issues while we used Parity.

sankara 5 (Mon, 14 Dec 2020 12:59:51 GMT):
Hi Team, I ETC nodes have sync issues, I have added the enodes to my Fast node , but still my node synching past 10.3 M. It is stuck at 10.3M from past 5 days. Also my FULL node slowed down and started throwing TCP errors with peers connection, it is at 8.9M. Are there any snap shots will be available for restoration ?Synching problem giving us difficulties. Please help on these. We didn't face any issues while we used Parity.

Alexandru-MihailAdam (Mon, 14 Dec 2020 13:47:46 GMT):
Has joined the channel.

Alexandru-MihailAdam (Mon, 14 Dec 2020 13:47:46 GMT):
Hello! I'm pretty confused about Besu solution. If i want to deploy my own private network, without communcation with any Ethereum networks (main, tests), should I have any Ether in my account ?

NicolasMassart (Mon, 14 Dec 2020 13:49:18 GMT):
Hi, no, you don't need "real" Ether, I mean the ones valuable on the mainnet.

NicolasMassart (Mon, 14 Dec 2020 13:50:57 GMT):
However, if you rune your own network based on Besu, you will have the ability to decide of the cost of operations. Your private network transactions will require gas to run... but you can determine that you accept gas wit a price of zero.

NicolasMassart (Mon, 14 Dec 2020 13:50:57 GMT):
However, if you run your own network based on Besu, you will have the ability to decide of the cost of operations. Your private network transactions will require gas to run... but you can determine that you accept gas wit a price of zero.

NicolasMassart (Mon, 14 Dec 2020 13:57:02 GMT):
In a private network, and specifically if you require free transactions, you can't really have price incentives. So a PoA network would probably be the solution over a PoW.

NicolasMassart (Mon, 14 Dec 2020 13:57:06 GMT):
Let's try https://besu.hyperledger.org/en/stable/Tutorials/Private-Network/Create-IBFT-Network/

NicolasMassart (Mon, 14 Dec 2020 13:57:29 GMT):
and configure your network for free gas: https://besu.hyperledger.org/en/stable/HowTo/Configure/FreeGas/

urtuba (Mon, 14 Dec 2020 20:42:39 GMT):
should I mention boot node url while starting node, or is the network ID is enough?

urtuba (Mon, 14 Dec 2020 20:45:26 GMT):
and could you specify which options should I use, assuming I have started network with boot node which has IP address a.b.c.d and port number xxxx. Since I do not have networking background knowledge, I fail about this things. By the way, thank you for help and contributing to besu

urtuba (Mon, 14 Dec 2020 20:45:32 GMT):
I loved it.

shemnon (Mon, 14 Dec 2020 22:34:05 GMT):
For a private network bootnodes should always be specified.

shemnon (Mon, 14 Dec 2020 22:35:25 GMT):
Copy the value of the `enode` you see on bootnode startup. it will be on a line like this ``` 2020-12-14 22:17:54.342+00:00 | main | INFO | DefaultP2PNetwork | Enode URL enode://09b02f8a5fddd222ade4ea4528faefc399623af3f736be3c44f03e2df22fb792f3931a4d9573d333ca74343305762a753388c3422a86d98b713fc91c1ea04842@127.0.0.1:41557?discport=3823 ```

Alexandru-MihailAdam (Tue, 15 Dec 2020 07:15:33 GMT):
I've one more question. I'm trying to develop a system for medical appointments using blockchain technology in order to offer immuability and transparency. The paradigm will move from client frontend with metamask wallet to the backend server with a secured stored wallet. When the user try to make a new appointment the server should respond immediately with the appointment UUID and take care of storing the data on Besu private network and to the database for fast querying (+more useful info). How can I take care of rejected transactions with zero effort from user. It's a good option to have a mempool table in database with rejected transactions and retry to send them ?

KIMSON (Tue, 15 Dec 2020 08:32:52 GMT):
How consensus is achieved in besu when using private transactions

matkt (Tue, 15 Dec 2020 09:18:53 GMT):
You can look at the documentation that explains how a private transaction is processed https://besu.hyperledger.org/en/stable/Concepts/Privacy/Private-Transaction-Processing/

shemnon (Tue, 15 Dec 2020 17:12:33 GMT):
If not a table of rejected transactions at least a table of pending txes not in a block yet. It also depends on the tx rejection reason. These may require operator intervention to fix the rejection reason (such as not enough ether if not set to zero gas allowed). Simpler cases like duplicate nonces can be re-submitted with a new tx and nonce. But be wary of simply auto-submitting rejections as it may fall in a loop of the fundamental rejection reason does not change.

EmcLab (Tue, 15 Dec 2020 18:59:31 GMT):
Hi team, after updating config.toml on besu IBFT2 network, does the node have to be restarted for the change to be in effect?

EmcLab (Tue, 15 Dec 2020 18:59:31 GMT):
Hi team, here is the error about the address 0.0.0.0:8545 being used. There is no change on genesis.json file. 2020-12-16 10:27:49.934-08:00 | main | ERROR | Runner | Service jsonRpc failed to start java.util.concurrent.ExecutionException: org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcServiceException: Failed to bind Ethereum JSON-RPC listener to 0.0.0.0:8545: Address already in use at java.base/java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:395) at java.base/java.util.concurrent.CompletableFuture.get(CompletableFuture.java:2086) at org.hyperledger.besu.Runner.waitForServiceToStart(Runner.java:203)

EmcLab (Tue, 15 Dec 2020 19:11:41 GMT):
Hi team, perm_addNodeToAllowList is the command to add nodes to BESU network. Can the command only be executed on an allowed node? How to prevent anyone from executing perm_addNotToAllowList remotely? Here is the example from the doc: $curl -X POST --data '{"jsonrpc":"2.0","method":"perm_addNodesToAllowlist","params":[["enode://7e4ef30e9ec683f26ad76ffca5b5148fa7a6575f4cfad4eb0f52f9c3d8335f4a9b6f9e66fcc73ef95ed7a2a52784d4f372e7750ac8ae0b544309a5b391a23dd7@127.0.0.1:30303","enode://2feb33b3c6c4a8f77d84a5ce44954e83e5f163e7a65f7f7a7fec499ceb0ddd76a46ef635408c513d64c076470eac86b7f2c8ae4fcd112cb28ce82c0d64ec2c94@127.0.0.1:30304"]], "id":1}' http://127.0.0.1:8545

shemnon (Tue, 15 Dec 2020 20:04:35 GMT):
Yes. We don't support live config changes at the moment. Out of curiosity what fields were changed? (some are easier than others to do a live update)

EmcLab (Tue, 15 Dec 2020 20:19:27 GMT):
Like adding or removing nodes to node_allowlist @shemnon

EmcLab (Tue, 15 Dec 2020 20:23:30 GMT):
@shemnon , for permissioning, is it possible to mix onchain account contract for account permissioning and local node permissionging together at the same time?

lucassaldanha (Tue, 15 Dec 2020 20:51:02 GMT):
To prevent access to the JSON-RPC endpoint, you can use a firewall to only allow connection from trusted sources and you can enable authentication/authorization to limit the access to a specific set of users (https://besu.hyperledger.org/en/latest/HowTo/Interact/APIs/Authentication/)

lucassaldanha (Tue, 15 Dec 2020 20:53:21 GMT):
Node permissioning and RPC auth are two distinct concepts. With node permissioning , you create a list of nodes that are allowed to connect to create a network. With RPC auth, you create a list of users that can access your RPC endpoints (and limit what resources they have access to).

lucassaldanha (Wed, 16 Dec 2020 02:56:35 GMT):
For local permissioning, if you are updating the node or account list using the APIs, you shouldn't need to restart to pickup the new config. For onchain, the changes to the rules are transactions that need to be included in a block and processed by your node before they are active in your node. They also don't require a restart. You can use local and onchain permissioning at the same time. However, it is important to remember that they have some differences and there is no "precedence" between them. For example, if using local and onchain account permissioning, an account must be allowed both in the local config and in the permissioning contract for the rule to be effective.

lucassaldanha (Wed, 16 Dec 2020 02:56:57 GMT):
I'd recommend using either local or onchain permissioning, not both at the same time.

RealDeanZhao (Wed, 16 Dec 2020 04:38:25 GMT):
Hi team, is it possible to clear the transaction pool without restarting the node? I have the issue that the nonce is higher than the sender's nonce.. The transactions were sent by a cron job and it is hard to fill the nonce gap.

sankara 5 (Wed, 16 Dec 2020 06:31:36 GMT):
Hi team, Is Besu capable for Ethereum Classic node? I have been running classic nodes both Full and Fast with docker image from 5 weeks, Full node is at 8.9M and Fast node stopped synching after 10.3M. I have reached this forum multiple times, but the suggestions that i got not helpful. Please let me know how i can make my nodes sync faster. My nodes started throwing error when synching with peers debug | abstract handshakehandler | handshake error: java.io.ioexception: connection reset by peer

sankara 5 (Wed, 16 Dec 2020 06:31:36 GMT):
Hi team, Is Besu capable for Ethereum Classic node? I have been running classic nodes both Full and Fast with docker image from 5 weeks, Full node is at 8.9M and Fast node stopped synching after 10.3M. I have reached this forum multiple times, but the suggestions that i got not helpful. Please let me know how i can make my nodes sync faster. My nodes started throwing error when synching with peers debug | abstract handshakehandler | handshake error: java.io.ioexception: connection reset by peer. Please let me know if any snapshots available for ETC Besu, that will help us.

ravinayag (Wed, 16 Dec 2020 08:38:35 GMT):
Hello All, Im trying to install besu on my vm using binary option. However im not able to find the bin/besu command. I follow the documentation from this link and release using 20.10.2 https://besu.hyperledger.org/en/stable/HowTo/Get-Started/Installation-Options/Install-Binaries/ seems folder structure change but not updated in doc link.. or am i missing any .. ?

matkt (Wed, 16 Dec 2020 10:11:41 GMT):
did you use the bintray link that is present in the 'Download Link' section of the latest release ? https://besu.hyperledger.org/en/stable/HowTo/Get-Started/Installation-Options/Install-Binaries/#install-from-packaged-binaries

ravinayag (Wed, 16 Dec 2020 10:18:02 GMT):
yes, that pointed to 20.10 source code zip file, but it doesn't contain bin folder inside.

matkt (Wed, 16 Dec 2020 10:21:05 GMT):
I tried this link and there is binaries https://dl.bintray.com/hyperledger-org/besu-repo/besu-20.10.2.zip sha256: 710aed228dcbe9b8103aef39e4431b0c63e73c3a708ce88bcd1ecfa1722ad307

matkt (Wed, 16 Dec 2020 10:21:05 GMT):
I tried this link and there are binaries https://dl.bintray.com/hyperledger-org/besu-repo/besu-20.10.2.zip sha256: 710aed228dcbe9b8103aef39e4431b0c63e73c3a708ce88bcd1ecfa1722ad307

matkt (Wed, 16 Dec 2020 10:21:39 GMT):
the link is present just above the sourcecode

kurthalex (Wed, 16 Dec 2020 12:00:12 GMT):
Has joined the channel.

kurthalex (Wed, 16 Dec 2020 12:00:13 GMT):
Hi ! I'm playing with besu in ropsten testnet and mainnet sync mode. I launch besu in a specific pruning mode which retains the last 2 weeks of state. Nodes are fully synchronized. When I request eth_gasPrice, the result is 1000 wei for both of them. In the documentation, it's specified that the behaviour could be chnaged by specifing --min-gas-price at the runtime. It s working. However, I would need eth_gasPrice method returns the actual 'real' dynamic gasprice. Is there any configuration to specify ?

kurthalex (Wed, 16 Dec 2020 12:00:13 GMT):
Hi ! I'm playing with besu in ropsten testnet and mainnet sync mode. I launch besu in a specific pruning mode which retains the last 2 weeks of state. Nodes are fully synchronized. When I request eth_gasPrice, the result is 1000 wei for both of them (default value in doc). In the documentation, it's specified that the behaviour could be chnaged by specifing --min-gas-price at the runtime. It s working. However, I would need eth_gasPrice method returns the actual 'real' dynamic gasprice. Is there any configuration to specify ?

kurthalex (Wed, 16 Dec 2020 12:00:13 GMT):
Hi ! I'm playing with besu in ropsten testnet and mainnet sync mode. I launch besu in a specific pruning mode which retains the last 2 weeks of state. Nodes are fully synchronized. When I request eth_gasPrice, the result is 1000 wei for both of them (default value in the documentation). In the documentation, it's specified that the behaviour could be chnaged by specifing --min-gas-price at the runtime. It s working. However, I would need eth_gasPrice method returns the actual 'real' dynamic gasprice. Is there any configuration to specify ?

kurthalex (Wed, 16 Dec 2020 12:00:13 GMT):
Hi ! I'm playing with besu in ropsten testnet and mainnet sync mode. I launch besu in a specific pruning mode which retains the last 2 weeks of state. Nodes are fully synchronized. When I request eth_gasPrice, the result is 1000 wei for both of them (default value in the documentation). In the documentation, it's specified that the behaviour can be changed by specifing --min-gas-price at the runtime. I tried, it s working. However, I would need eth_gasPrice method returns the actual 'real' dynamic gasprice. Is there any configuration to specify ?

kurthalex (Wed, 16 Dec 2020 12:00:13 GMT):
Hi ! I'm playing with besu in ropsten testnet and mainnet sync mode. I launch besu in a specific pruning mode which retains the last 2 weeks of state. Nodes are fully synchronized. When I request eth_gasPrice, the result is 1000 wei for both of them (default value in the documentation). In the documentation, it's specified that the behaviour can be changed by specifing --min-gas-price at the runtime. I tried, it s working. However, I would need eth_gasPrice method returns the actual 'real' dynamic gasprice. Is there any configuration parameter to specify ?

kurthalex (Wed, 16 Dec 2020 12:00:13 GMT):
Hi ! I'm playing with besu in ropsten testnet and mainnet sync mode. I launch besu in a specific pruning mode which retains the last 2 weeks of state. Nodes are fully synchronized. When I request eth_gasPrice, the result is 1000 wei for both of them (default value in the documentation). In the documentation, it's specified that the behaviour can be changed by specifing --min-gas-price at the runtime. I tried, it s working. However, I would need eth_gasPrice method returns the actual 'real' dynamic gasprice. Is there any configuration parameter to specify ? Is that a difference between Geth and Besu ?

NicolasMassart (Wed, 16 Dec 2020 14:40:39 GMT):
Hi, would you be able to provide TRACE level logs when this happens?

ravinayag (Wed, 16 Dec 2020 15:28:23 GMT):

Clipboard - December 16, 2020 8:55 PM

ravinayag (Wed, 16 Dec 2020 15:29:44 GMT):
Just thought for suggestion as "Binary Download link"

ravinayag (Wed, 16 Dec 2020 15:30:43 GMT):
@matkt Thanks for pointing it

shemnon (Wed, 16 Dec 2020 15:54:18 GMT):
What version are you using? this sounds like something we fixed in 20.10.2 (bug #1546)

NicolasMassart (Wed, 16 Dec 2020 16:01:17 GMT):
Maybe your setup is a bit under the minimal specs. Could you let me know on what kind of machine (CPU/RAM/SSH size) and if you run it directly or in VM/Docker please?

NicolasMassart (Wed, 16 Dec 2020 16:01:17 GMT):
Maybe your setup is a bit under the minimal specs. Could you let me know on what kind of machine (CPU/RAM/SSD size) and if you run it directly or in VM/Docker please?

NicolasMassart (Wed, 16 Dec 2020 16:05:09 GMT):
Also for the peer issues, could you provide some infos on how your network is configured (direct, nat, ports configured and forwarded on your firewall...) and how your p2p interface is configured (what IP do you advertise?) Thanks.

kurthalex (Wed, 16 Dec 2020 16:27:36 GMT):
20.10 ! Thanks, I'm going to try with the new one

EmcLab (Wed, 16 Dec 2020 16:54:34 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=gEHATGwiFFmRRRbHy) Hi @lucassaldanha , how's the performance of local vs onchain permissioning? If there are thousands of accounts, does local permissioning make sense?

CameronWeston (Wed, 16 Dec 2020 18:19:51 GMT):
Has joined the channel.

CameronWeston (Wed, 16 Dec 2020 18:19:52 GMT):
Hi team I am getting a runtime exception with v20.10.1 ... When I run bin/besu, I get the following exception "org.rocksdb.RocksDBException: While lock file: /home/ec2-user/besu-20.10.1/database/LOCK: Resource temporarily unavailable". My node has been running for a few weeks now without this issue

CameronWeston (Wed, 16 Dec 2020 19:36:13 GMT):
Hi team, could I get some help with setting up a websocket for my node? I am running on an ec2 and keep getting 403s

EmcLab (Wed, 16 Dec 2020 19:43:42 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=cSLWxJBWbYDCfTqhB) There is a nginx reverse proxy running on the same node and pass http traffic to 127.0.0.1:8545. After stopping nginx server, the nodes are working fine. Then restarting nginx reverse proxy didn't cause error.

shemnon (Wed, 16 Dec 2020 20:38:07 GMT):
What host are you connecting from? The default is `--host-allowlist=localhost,127.0.0.1` so unless explicitly set it can only be access locally. `*` opens it up to everything.

bgravenorst (Wed, 16 Dec 2020 22:18:28 GMT):
Hi, are you still experiencing issues with this? The documentation mentions the maximum retention period for pending transaction in the pool defaults to 13hrs. https://besu.hyperledger.org/en/latest/Reference/CLI/CLI-Syntax/#tx-pool-retention-hours

RealDeanZhao (Wed, 16 Dec 2020 23:13:18 GMT):
I've fixed this by stopping the cron job and restarting the nodes. Is it possible to use a random nonce string like hyperledger sawtooth for private networks in the future? Serial nonce is not good for concurrency and some backend services.

macfarla (Wed, 16 Dec 2020 23:40:14 GMT):
We haven't done performance testing to get stats of local vs onchain permissioning. I would think though that if you have thousands of accounts and the list of accounts is infrequently modified, local config might make more sense.

bgravenorst (Thu, 17 Dec 2020 00:02:41 GMT):
The Ethereum spec states how the nonce should be used. So while we "could" re-purpose it in a private network, we’ll be straying from what is recognised as the safe method of usage - i.e. it ensures transaction ordering in a distributed network.

CameronWeston (Thu, 17 Dec 2020 00:35:30 GMT):
This solved it ! Thanks

shemnon (Thu, 17 Dec 2020 03:41:24 GMT):
Fisco BCOS (http://fisco-bcos.org/) does that, they are mostly ethereum with a few tweaks, one that the nonce field is re-implemented as an expiration field.

shemnon (Thu, 17 Dec 2020 03:42:32 GMT):
The concurrency and serialization problems extend beyond just the nonce. Since Ethereum is account based and highly composable order of operations between different accounts calling the same contract still have concurrency implications. Worse because you don't know the impact until you execute the contract.

shemnon (Thu, 17 Dec 2020 03:44:10 GMT):
The serialization within the block (i.e. all transactions are executed in order with strong happens-before semantics) will quickly eat up any concurrency gains that out of order nonces would provide once executed at mainnet scale.

sankara 5 (Thu, 17 Dec 2020 15:23:10 GMT):
I am using 8GB RAM, 8vcpus,SSD drive, I am using besu docker image on ubuntu. 30303 udp , 9535 ports are enabled and node synched blocks as well, from last 2weeks after reaching 8.7 M it became worse and synched hardly 200k.

sankara 5 (Thu, 17 Dec 2020 15:23:10 GMT):
I am using 8GB RAM, 8vcpus,SSD drive, I am using besu docker image on ubuntu. 30303 udp , 9535 ports are enabled and node synched blocks as well, from last 2weeks after reaching 8.7 M it became worse and synched hardly 200k. I have checked the stats as well , those are below the utilization

sankara 5 (Thu, 17 Dec 2020 15:31:22 GMT):
Can you send me the specs for setting up on bare machine

sankara 5 (Thu, 17 Dec 2020 15:42:03 GMT):
2020-12-17 15:41:09.225+00:00 | nioEventLoopGroup-3-4 | DEBUG | ApiHandler | Received Wire DISCONNECT (SUBPROTOCOL_TRIGGERED) from peer: PeerInfo{version=5, clientId='Geth/v1.9.24-unstable-b305591e-20201016/linux-amd64/go1.13.15', capabilities=[eth/63, eth/64, eth/65], port=0, nodeId=0x677a0bc4fbf34bcd996446a50bb3224749caf6f5a5beb3325f829e6ed8b403af0e0d2fab9e46075718ecce46353e485062a873f03f719332387f178ba8a993cc} 2020-12-17 15:41:09.238+00:00 | nioEventLoopGroup-3-6 | DEBUG | RlpxAgent | Failed to connect to peer 0x900b0fb92399e55775cf0d0ab320b0b80b0aa350fe1c1402c0a2b37769884caa07c05c12f43ed4bde39cfbd0d397e8cdf3183c94e0ded373f4e69c4452d9a15a: io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: /73.132.160.196:30303 2020-12-17 15:41:09.238+00:00 | nioEventLoopGroup-3-5 | DEBUG | ApiHandler | Received Wire DISCONNECT (SUBPROTOCOL_TRIGGERED) from peer: PeerInfo{version=5, clientId='Geth/v0.4.2-akroma-3f311e5c/linux-amd64/go1.12.7', capabilities=[eth/63], port=0, nodeId=0xdc4fc0bb21ce46a048d51e0e4722a79918d2a671c24885d53d2bea815b32178cb28d3544170fe0404095d9fe8dc5770814300effba773854420aad563138eceb} 2020-12-17 15:41:09.238+00:00 | nioEventLoopGroup-3-5 | DEBUG | AbstractPeerConnection | Disconnected (0x10 SUBPROTOCOL_TRIGGERED) from PeerInfo{version=5, clientId='Geth/v0.4.2-akroma-3f311e5c/linux-amd64/go1.12.7', capabilities=[eth/63], port=0, nodeId=0xdc4fc0bb21ce46a048d51e0e4722a79918d2a671c24885d53d2bea815b32178cb28d3544170fe0404095d9fe8dc5770814300effba773854420aad563138eceb} 2020-12-17 15:41:09.238+00:00 | nioEventLoopGroup-3-5 | DEBUG | EthProtocolManager | Peer requested to be disconnected (0x10 SUBPROTOCOL_TRIGGERED), 18 peers left: EthPeers{connections=0x8ed346bf1c41fefe14...,0xc405336c572f6e6ad2...,0x63eafafcb484a2ac23...,0x968164e756b96ed562...,0xa0a0fee0bf6b3cfa40...,0xd50c338688c80e7ddd...,0xe98bab1bd6b3fec5d4...,0x2097ffbcde49280b07...,0x01eb4e43bedd663882...,0x09330463f2ab8e01ed...,0x62c47ee55e0f15779f...,0x673cd48cab83a3d39d...,0x75faed7169a5468d75...,0xa8c706430171a12fd9...,0xb9e893ea9cb4537f4f...,0x74aefef60dddf7e408...,0x31bc9f9f9800600de9...,0x3ea0dec084595149be...}

EmcLab (Thu, 17 Dec 2020 16:27:59 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=tJhLppiWftt7j9f9j) Hi @lucassaldanha , I read the Besu doc about JWT token a few times but still did not figure out how to enter JWT private on RPC node. In nodejs project, the private key is saved on nodejs backend server. Many thanks.

tasd (Thu, 17 Dec 2020 18:16:19 GMT):
I got besu synced to mainnet on a machine running Ubuntu with 48 GB RAM. It's still hammering the SSD with 2000 reads/sec, and 100% disk IO time. Is that normal? By comparison, geth on the same machine was doing about 30 reads/sec and 3% disk IO time.

shemnon (Thu, 17 Dec 2020 18:53:16 GMT):
Geth has a more extensive caching infrastructure. So this sounds right. We do have some caching work underway.

EmcLab (Thu, 17 Dec 2020 19:39:39 GMT):
Hi team, can someone shed light on the API option --rpc-http-authentication-credentials-file=? What is the use of this credential file? Many thanks.

tasd (Thu, 17 Dec 2020 20:00:34 GMT):
gotcha, thanks!

EmcLab (Thu, 17 Dec 2020 20:20:20 GMT):
Hi team, what is the credential to run the command of adding nodes to allowlist: `curl -X POST --data '{"jsonrpc":"2.0","method":"perm_addNodesToAllowlist","params":[["enode://7e4ef30e9ec683f26ad76ffca5b5148fa7a6575f4cfad4eb0f52f9c3d8335f4a9b6f9e66fcc73ef95ed7a2a52784d4f372e7750ac8ae0b544309a5b391a23dd7@127.0.0.1:30303","enode://2feb33b3c6c4a8f77d84a5ce44954e83e5f163e7a65f7f7a7fec499ceb0ddd76a46ef635408c513d64c076470eac86b7f2c8ae4fcd112cb28ce82c0d64ec2c94@127.0.0.1:30304"]], "id":1}' http://127.0.0.1:8545`

timbeiko (Thu, 17 Dec 2020 20:46:50 GMT):
:christmas_tree: :besu: *Besu 20.10.3 is out!* :besu::christmas_tree: :star2: *Highlights* :star2: - eth/65 is now enabled by default :tada: ! - We’ve fixed some edge cases with our tracing APIs not aligning with Parity’s - Block Validation errors are now are at the INFO log level - Added memory as an option to --key-value-storage. This ephemeral storage is intended for sync testing and debugging. You can get it here: https://github.com/hyperledger/besu/releases/tag/20.10.3

macfarla (Thu, 17 Dec 2020 23:52:14 GMT):
If you have HTTP authentication enabled this is the file used - there is more info in the docs here https://besu.hyperledger.org/en/stable/HowTo/Interact/APIs/Authentication/

macfarla (Thu, 17 Dec 2020 23:53:18 GMT):
to use the perm_ API methods you need to enable them via https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#rpc-http-api

macfarla (Thu, 17 Dec 2020 23:53:53 GMT):
The credentials are the same as for all other RPC methods, they aren't special

lucassaldanha (Fri, 18 Dec 2020 01:47:43 GMT):
I'm not sure if I understood your question. Are you using your own authentication service to generate the JWT token? If you are, you need to specify the public key associated with the key that is signing the JWT tokens. (https://besu.hyperledger.org/en/latest/HowTo/Interact/APIs/Authentication/#jwt-public-key-authentication)

besu-bot (Fri, 18 Dec 2020 05:20:17 GMT):
Tom Hay<@!576356870017515520> I've got the bridge ready to deploy - just tested it

aaltenbernd (Fri, 18 Dec 2020 15:14:01 GMT):
Hi thanks for your help! But I decided to switch to a local deployment. Its just for my master thesis and nothing what is used in production.

aaltenbernd (Fri, 18 Dec 2020 15:17:05 GMT):
Hi everyone, does anybody know, how often Besu synchronizes the transaction pool? I'm experiencing that transaction stay for long in transaction pool if the node has no connection to other nodes right after receiving the transaction. Moreover, I was wondering if its possible to not set the nonce of a transaction and let that be set by the Besu node and not on client site?

NicolasMassart (Fri, 18 Dec 2020 15:23:30 GMT):
Can you post some logs (in trace mode would be nice) between the moment you send the tx and the moment you have zero peers on your node please? For the nonce part, Besu doesn't automatically handle finding the correct one. Your TX has to be build with the correct nonce. Nonce management is part of some overlay usually.

aaltenbernd (Fri, 18 Dec 2020 15:24:18 GMT):
Sure. Can do that.

aaltenbernd (Fri, 18 Dec 2020 15:28:15 GMT):
But is there a reason why Besu can't do that? Other ethereum-software can do that right?

aaltenbernd (Fri, 18 Dec 2020 15:28:15 GMT):
But is there a reason why Besu can't do that? Other ethereum-software can do that, right?

NicolasMassart (Fri, 18 Dec 2020 15:34:46 GMT):
I'm not sure, but I don't think so. Nodes provide a methods to count the number of tx from an account, but then if you generate two tx, before sending them the tx count will be the same and you will have to compute the nonce by yourself by giving txA a n+1 nonce and txB a n+2 nonce. That's why for instnace Consensys Orchestrate software provides a nonce service that's base on a shared database that allows it to manage the tx and their nonces before they are included in the block and available on the chain. Otherwise your node would be almost always wrong. It can't know if you prepared tx and nid not send them yet. The first then may pass (not even sure as it will fail if the first to reach the node is not the one with n+1 nonce), and all others would have wrong nonces for sure.

aaltenbernd (Fri, 18 Dec 2020 15:37:56 GMT):
Hm yes sounds reasonable. Thank you!

NicolasMassart (Fri, 18 Dec 2020 15:38:36 GMT):
I'm not an expert in other node software though so don't take this as the immutable truth ;)

aaltenbernd (Fri, 18 Dec 2020 15:38:55 GMT):
Yeah sure. :)

aaltenbernd (Fri, 18 Dec 2020 15:44:31 GMT):
For the other problem: Maybe I describe my szenario first. Actually, I'm running a permissioned network and I'm using the RPCs do add and remove nodes. The node I'm sending a transcation is not permissioned by the other nodes. So i think it is not able to distribute the transaction at that moment. So thats not surprising. But when I the other nodes give the node the permission. the Transaciton stays for long in the transaction pool. So i was wondering if its possible to speed this up.

NicolasMassart (Fri, 18 Dec 2020 15:44:43 GMT):
I'm just pasting some links about nonces that are interesting: - https://docs.nethereum.com/en/latest/nethereum-managing-nonces/ - https://github.com/ethereumbook/ethereumbook/blob/develop/06transactions.asciidoc#keeping-track-of-nonces

NicolasMassart (Fri, 18 Dec 2020 15:47:44 GMT):
Interesting, what's "the Transaciton stays for long in the transaction pool." exactly? Do you see your node sync? My guess is that it has to keep up with the chain first before being able to broadcast the tx to others.

NicolasMassart (Fri, 18 Dec 2020 15:51:17 GMT):
For the nonce, even Parity who had a method for next nonce seems to have issues and the advice is to [handle it on the dapp side](https://github.com/openethereum/parity-ethereum/issues/9768).

NicolasMassart (Fri, 18 Dec 2020 15:54:52 GMT):
Same for Metamask https://github.com/openethereum/parity-ethereum/issues/5014#issuecomment-390394287

NicolasMassart (Fri, 18 Dec 2020 15:56:14 GMT):
And there was something with Geth but that only solves the issue when you have tx originated fron only one node, which is not the case in network with multiple nodes that could send tx from the same address https://github.com/ethereum/go-ethereum/issues/2880

NicolasMassart (Fri, 18 Dec 2020 15:56:44 GMT):
I'm done about nonce, let's look at your broadcasting issue now ;)

aaltenbernd (Fri, 18 Dec 2020 15:58:55 GMT):
I'm not sure maybe 5 minutes to 30 minutes. But I didn't measured the exact time

aaltenbernd (Fri, 18 Dec 2020 15:59:36 GMT):
It's just the one transaction. and the node is only shortly "unpermissioned" so it has nearly the same Blockchain state

aaltenbernd (Fri, 18 Dec 2020 15:59:49 GMT):
thanks for the nonce links

NicolasMassart (Fri, 18 Dec 2020 16:00:36 GMT):
Hum, I guess it's more than what's needed for your node to get back in sync. How far behind the chain head is the node when your reconnect it by adding it back in the permissioning? What kind of permisioning do you use? File or onchain?

NicolasMassart (Fri, 18 Dec 2020 16:01:31 GMT):
Ok, maybe something to do with permisionning then...

NicolasMassart (Fri, 18 Dec 2020 16:01:58 GMT):
Would you mind if I forward this to our permisionning experts?

aaltenbernd (Fri, 18 Dec 2020 16:02:04 GMT):
File permissioning

NicolasMassart (Fri, 18 Dec 2020 16:02:08 GMT):
(meaning you not have an answer right now)

aaltenbernd (Fri, 18 Dec 2020 16:03:13 GMT):
I'm think 5-10 Blocks

NicolasMassart (Fri, 18 Dec 2020 16:03:18 GMT):
Maybe to speed up the debug, having your config and genesis files + command line used to start the nodes would help. Could you drop an archive by DM?

NicolasMassart (Fri, 18 Dec 2020 16:03:37 GMT):
Yes 5-10 doesn't need 30 mins to sync, clearly...

aaltenbernd (Fri, 18 Dec 2020 16:03:50 GMT):
really?

aaltenbernd (Fri, 18 Dec 2020 16:04:04 GMT):
uh ok didn't know that

NicolasMassart (Fri, 18 Dec 2020 16:04:23 GMT):
doesn't need

NicolasMassart (Fri, 18 Dec 2020 16:05:05 GMT):
I mean it's NOT normal that your node being 5 or 10 blocks behind takes so much time to propagate the tx as it clearly need only a few sec to sync 10 blocks

aaltenbernd (Fri, 18 Dec 2020 16:05:33 GMT):
ok :D

NicolasMassart (Fri, 18 Dec 2020 16:05:42 GMT):
We may have an issue on our side, I can't really tell like that, we have to reproduce the issue first

aaltenbernd (Fri, 18 Dec 2020 16:05:43 GMT):
didnt got that

aaltenbernd (Fri, 18 Dec 2020 16:06:03 GMT):
ok mom i send you th files

NicolasMassart (Fri, 18 Dec 2020 16:06:52 GMT):
Where?

lucassaldanha (Sun, 20 Dec 2020 20:24:37 GMT):
@aaltenbernd Is it possible that the newly added node hasn't been found by other nodes after you added it to the list of allowed nodes? Discovery might take a while to find new nodes, so it could be the reason for the delay. Would you be able to try this again, but after you add the node to the allowlist, try calling admin_addPeer to "force" a connection between the new node and one of the nodes in the existing network? Also, bear in mind that when using config-based permissioning, you need to update the allowlist in every node to get a consistent network (all nodes have to be updated with the new rules).

joshuafernandes (Mon, 21 Dec 2020 21:29:27 GMT):
:thumbsup:

sankara 5 (Tue, 22 Dec 2020 16:48:07 GMT):
hi ,can someone let me know where i can get the etc BESU FULL node latest snapshot ?

raychan11111 (Wed, 23 Dec 2020 01:22:06 GMT):
Hi guys, under ibft2 consensus algorithm, is it normal that the validators keep creating new blocks even when there are no transactions?

raychan11111 (Wed, 23 Dec 2020 01:22:06 GMT):
Hi guys, under ibft2 consensus algorithm, is it normal that the validators keep creating new blocks even when there are no transactions? Does besu has some setting to only create blocks when there are transactions? Otherwise, the blockchain may contain a lot of empty blocks.

kss-espeo (Wed, 23 Dec 2020 13:32:38 GMT):
Has joined the channel.

kss-espeo (Wed, 23 Dec 2020 13:32:38 GMT):
hi! I am considering running a HL Besu node in order to integrate my application with Ethereum Classic. I have been using Parity for that, however it became deprecated after recent hard fork.

kss-espeo (Wed, 23 Dec 2020 13:35:29 GMT):
for now I would like to test JSON RPC API to make sure it has the functionalities I need. can you guys recommend some public node that I can use or a way to easily set up a node on my local machine without having to do a sync with the ledger? I don't care what ledger it connects to, I'm just after testing API.

matkt (Wed, 23 Dec 2020 13:53:46 GMT):
If you don't have a node you can look at the list of available APIs in the doc and see the postman list with available APIs https://besu.hyperledger.org/en/stable/Reference/API-Methods/

matkt (Wed, 23 Dec 2020 13:53:46 GMT):
If you don't have a node you can look at the list of available APIs in the doc and also check with Postman https://besu.hyperledger.org/en/stable/Reference/API-Methods/

kss-espeo (Wed, 23 Dec 2020 14:04:44 GMT):
@matkt yeah I already looked at these. now I want to actually hit some node. all the examples in documentation mention localhost. I don't want to sync a full node - that's why I'm after either a public one I can hit or a way to easily set up a node on my local machine without having to sync huge ledger

kss-espeo (Wed, 23 Dec 2020 14:18:28 GMT):
found some here: https://www.ethercluster.com/

kss-espeo (Wed, 23 Dec 2020 14:24:06 GMT):
however, it seems it has key methods I'm interested in (`trace_transaction` or `debug_traceTransaction`) disabled. I will keep looking for alternatives, however other suggestions are more than welcome

Manzik (Fri, 25 Dec 2020 08:29:40 GMT):
can i put the ip address in host-allowlist of hyperledger besu.? how can i prevent besu to accept calls from specific ip only

Manzik (Mon, 28 Dec 2020 05:23:21 GMT):
``` --min-gas-price has been ignored because --miner-enabled was not defined on the command line. ``` I am gettting this warning wheni tried to set min-gas-price to zero

Manzik (Mon, 28 Dec 2020 05:23:21 GMT):
``` --min-gas-price has been ignored because --miner-enabled was not defined on the command line. ``` I am gettting this warning wheni tried to set min-gas-price to zero Why cannot a set zero gas price in besu-clique network

Manzik (Mon, 28 Dec 2020 05:23:21 GMT):
``` --min-gas-price has been ignored because --miner-enabled was not defined on the command line. ``` I am gettting this warning wheni tried to set min-gas-price to zero Why cannot a set zero gas price in besu-clique network?

RealDeanZhao (Wed, 30 Dec 2020 04:59:36 GMT):
Hi team, I have an issue that if "Nonce too low" error happens in a specific node for an account, it will never get a correct pending nonce for that account even after the node is restarted. I have to send the transaction to another node to make a successful transaction. Besu version is v20.10.2 and the transactions were sent by the abi generated code for golang.

RealDeanZhao (Wed, 30 Dec 2020 04:59:36 GMT):
Hi team, I have an issue that if "Nonce too low" error happens in a specific node for an account, it will never get a correct pending nonce for that account . I have to send the transaction to another node or restart the wrong node to make a successful transaction. Besu version is v20.10.2 and the transactions were sent by the abi generated code for golang.

trent.mohay (Mon, 04 Jan 2021 02:05:12 GMT):
Hey @Manzik did you get this resolved? Short answer is - add "--miner-enabled" to the commandline, and the error goes away - i.e. its an artefact of Besu trying to handle multiple consensus mechanisms in a similar way.

trent.mohay (Mon, 04 Jan 2021 02:06:42 GMT):
I.e. clique is by default enabled if you're a recognised signer/validator - but the commandline handling doesn't realise that the genesis file is configured for clique - so the commandline validation does its best to ensure consistency of the specified parameters - i.e. why would you specify a min-gas-price if you're not a miner?

trent.mohay (Mon, 04 Jan 2021 02:07:56 GMT):
Ultimately, its a rough edge, where the work around is to force mining to be enabled (--miner-enabled)

trent.mohay (Mon, 04 Jan 2021 02:10:53 GMT):
Hey @raychan11111, Ibft deliberately continues to produce blocks, even when no transactions are available - it ensures data continuity in the blockchain - i.e. we'd rather indicate that the blockchain is progressing and nothing is happening, rather than have a potentially halted blockchain. Having said that, there is some R&D work coming through which is to investigate how IBFT could be updated too prevent empty blocks ... so ... watch this space?

raychan11111 (Mon, 04 Jan 2021 02:55:11 GMT):
@trent.mohay Thanks for your reply. Do you mean that the hyperledger besu team is investigating on this empty blocks issue? I brought up this issue because our use case require high tps, so the block time would be small which will generate tons of empty blocks rapidly.

shemnon (Mon, 04 Jan 2021 04:00:35 GMT):
Could you achieve hight TPS by raising the block gas limit? Block time is not the only lever to pull.

shemnon (Mon, 04 Jan 2021 04:11:58 GMT):
Fast syncing an ethereum classic node is very fast and relatively small.

mwaser (Mon, 04 Jan 2021 17:15:29 GMT):
Does ***sudo npx quorum-dev-quickstart*** work on Ubuntu 20.04? I'm getting an ***Install for quorum-dev-quickstart@latest failed with code 1*** error message.

mwaser (Mon, 04 Jan 2021 17:15:29 GMT):
Does **sudo npx quorum-dev-quickstart** work on Ubuntu 20.04? I'm getting an **Install for quorum-dev-quickstart@latest failed with code 1** error message.

mwaser (Mon, 04 Jan 2021 17:19:57 GMT):
Never mind -- that's really weird . . . . it's the sudo which is preventing it from working.

shemnon (Mon, 04 Jan 2021 18:27:16 GMT):
A classic full sync takes about 6 days on an AWS i3. For trace_* as long as the block has been fully processed, i.e. after the fast sync pivot, it will work.

shemnon (Mon, 04 Jan 2021 18:27:50 GMT):
So any block that comes in after a fast sync starts will be fully tracable. Any block before that point requires an archive/full sync.

krzyhoo (Mon, 04 Jan 2021 22:09:56 GMT):
Hi all. Can anyone help me with decoding `revertReason`? I just googled myself to death past few hours and don't know how to decode this: ```"revertReason" : "0x08c379a0000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000344372656174696f6e2063616e20626520696e69746961746564206f6e6c792062792074686520636f6e7472616374206f776e6572000000000000000000000000"```

krzyhoo (Mon, 04 Jan 2021 22:10:18 GMT):
Am running a gasless and feeles network

krzyhoo (Mon, 04 Jan 2021 22:10:18 GMT):
Am running a gasless and feeless network

shemnon (Mon, 04 Jan 2021 22:52:36 GMT):
The contract reverted with a specified reason. Running that through a hex to ascii web page (https://www.rapidtables.com/convert/number/hex-to-ascii.html) yields "Ãy  4Creation can be initiated only by the contract owner"

shemnon (Mon, 04 Jan 2021 22:53:28 GMT):
This is what the solidity `revert()` primitive produces.

ahmedMokadem (Tue, 05 Jan 2021 12:10:33 GMT):
Has joined the channel.

ahmedMokadem (Tue, 05 Jan 2021 12:10:33 GMT):
hi i'm currently facing an issue while lauching besu on ropsten network. i'm currently using the docjer image version 20.10.2 here are the relevant logs : First error 2021-01-02 05:46:55.045+00:00 | nioEventLoopGroup-3-9 | INFO | SyncTargetManager | Found common ancestor with peer 0x8c5131f577ee602cca... at block 8563599 2021-01-02 05:46:55.046+00:00 | nioEventLoopGroup-3-9 | WARN | FullSyncTargetManager | Disconnecting 0x8c5131f577ee602cca... because world state is not available at common ancestor at block 8563599 Second error 2021-01-02 05:55:11.782+00:00 | vert.x-eventloop-thread-1 | WARN | PeerDiscoveryAgent | Sending to peer DiscoveryPeer{status=bonding, enode=enode://8343e1d0a1cf889e057333e08b792a0f4009e2159b43dff28bf4b3911a7cbc563fc8e46e70db57485acc3b331e2c7c2e88f9734378cbea9993c660df13ea5ed1@[2a01:7e00::f03c:91ff:fe29:c71a]:30303, firstDiscovered=1609566911742, lastContacted=0, lastSeen=0} failed, packet: 0x3e506c2196010e61c4ed34b8b63a2f1213f1d9cb99eb73930173f5b0d6fa182fccff881aabd90aa8a8b256c233a3a12a9de84572c23f94bc494b41fd15b1c35c6b539882b470ead6d828d4814429208fbcf27bbc58922889145661efe63020810001ea05cb847f00000182765f82765fd7902a017e0000000000f03c91fffe29c71a82765f82765f845ff00afb java.nio.channels.UnsupportedAddressTypeException also i added this two config variables to the node if i remove them the node will not start the synchronisation --remote-connections-limit-enabled=false --fast-sync-min-peers=1 It doens't seen enough do you have a list of up date peers that can we connect to for the synchro ?

shemnon (Tue, 05 Jan 2021 16:47:12 GMT):
Looks like our IPv6 address support became broken, that's what the exceptions are complaining about.

shemnon (Tue, 05 Jan 2021 16:47:33 GMT):
As for peering, that is always difficult on test networks. `--fast-sync-min-peers=1` is a common setting for my test nodes.

shemnon (Tue, 05 Jan 2021 16:49:07 GMT):
Ropsten is also tends to have large forks and netsplits. Great for testing some scenarios bad for stable smart contract development. Rinkeby and Goerli are better for contract development.

krzyhoo (Tue, 05 Jan 2021 18:06:21 GMT):
thanks so much. kinda didn't even think about converting it plainly fromhex to ascii :) we managed to solve the problem :)

mwaser (Tue, 05 Jan 2021 20:36:31 GMT):
Probably a stupid question . . . . I'm trying to get the Permissioning Dapp working The instructions at https://besu.hyperledger.org/en/latest/HowTo/Deploy/Production/#starting-a-production-permissioned-network say To deploy the Permissioning Management Dapp for production: 1. Retrieve the most recent release (tarball or zip) from the projects release page. 2. Unpack the distribution into a directory available to your Web server. 3. In the root of the unpack directory, add a file called config.json replacing the placeholders shown below. { "accountIngressAddress": "

", "nodeIngressAddress": "
", "networkId": "" } 4. On your Web server, host the contents of the directory as static files and direct root requests to index.html It also specifically says ** Follow the procedure as for Getting Started with Onchain Permissioning, but do not perform the steps using yarn to install, build, and start the development server. Instead, follow the procedure above to deploy the Permissioning Management Dapp to your Web server.** Unfortunately, the only assets available for download on the project release page are labeled **source code** and they clearly don't have the necessary files for the above to work . . . . so I'm assuming that there should be Release assets as well . . . . I also note that the **README.md** for *https://github.com/ConsenSys/permissioning-smart-contracts/tree/v2.0.0* says that **Note: The build process for the Dapp is currently not supported on Windows. Please use the provided distribution available at the projects release page if on Windows.** which, again, leads me to believe that there should be one or two Release assets in addition to the Source code assets. Am I mistaken? If not, is there some way in which I can get my hands on such Release assets -or- do I need to set-up my Linux machine to build and create a functioning release?

al0818 (Wed, 06 Jan 2021 12:57:27 GMT):
Hi guys, do you have a recommendation setup for production in Hyperledger Besu IBFT 2.0?

ahmedMokadem (Wed, 06 Jan 2021 15:08:44 GMT):
@shemnon so i'm using the docker container 20.10.2 and i found 20.10.4-snapshot and 20.10.3 should i use one of this untead of 20.10.2 ?

ahmedMokadem (Wed, 06 Jan 2021 15:08:44 GMT):
@shemnon so i'm using the docker container 20.10.2 and i found 20.10.4-snapshot and 20.10.3 should i use one of this instead of 20.10.2 ?

shemnon (Wed, 06 Jan 2021 15:42:22 GMT):
using hyperledger/besu:latest will get the latest release quality release, 20.10.3 in this case. hyperledger/besu:develop will get you the latest SNAPSHOT build. SNAPSHOT builds are not recommended for production environments.

Victorbesu (Wed, 06 Jan 2021 18:08:54 GMT):
Has joined the channel.

Victorbesu (Wed, 06 Jan 2021 18:08:54 GMT):
Hello everyone

Victorbesu (Wed, 06 Jan 2021 18:10:18 GMT):

Clipboard - January 6, 2021 3:10 PM

Victorbesu (Wed, 06 Jan 2021 18:10:25 GMT):
Im working with Besu on kubernetes. I seem to have everything working correctly on server side. Able to connect via Metamask Able to see my balance of ETH in the hyperledger permissioned network (clique) When I go to send eth from one account to a random other account, I get stuck in pending transaction in metamask

Victorbesu (Wed, 06 Jan 2021 18:11:01 GMT):
I try to send another tx, it gets queued. What configuration would I be missing here? Besu is compatible with Metamask as far as I understand

Victorbesu (Wed, 06 Jan 2021 18:11:15 GMT):
This would be the first tx on the network

NicolasMassart (Wed, 06 Jan 2021 18:12:14 GMT):
Are you commected with metamask to a local chain using besu or to a public testnet?

NicolasMassart (Wed, 06 Jan 2021 18:13:36 GMT):
I guess a local network given your answer. If you restart your network but still use the same accounts to interact with it using metamask, you may have to reset the accounts in metamask when you start a new network.

NicolasMassart (Wed, 06 Jan 2021 18:14:23 GMT):
https://metamask.zendesk.com/hc/en-us/articles/360015488891-Resetting-an-Account

Victorbesu (Wed, 06 Jan 2021 18:29:08 GMT):
Thanks for a prompt response. Ive successfully tested hosting locally before, moving tokens with metamask following the tutorial for permissioned network. This is besu permissioned network in the cloud. Just going over it with my dev-ops person. I was looking at the accounts-allowlist, it seems he left it empty. If my account is not in accounts-allowlist for a permissioned clique network, this would be the behavior we expect right? We are trying to fix that and see what happens.

lucassaldanha (Wed, 06 Jan 2021 19:15:52 GMT):
You are absolutely correct. The release build is missing from v2.0.0. I'll try to update the release with the artefacts ASAP. Thanks for letting us know!

EmcLab (Wed, 06 Jan 2021 19:37:46 GMT):
Hi team, I started besu nodes with nohup besu config-file=config.toml and all 4 nodes stopped in a few days at the same time. What can be the cause and how to prevent the nodes from stopping? Here is the last lines of log on RPC node:

EmcLab (Wed, 06 Jan 2021 19:37:51 GMT):
2020-12-29 13:44:29.012-08:00 | pool-8-thread-1 | DEBUG | IbftRound | Received a proposal message. round=ConsensusRoundIdentifier{Sequence=303917, Round=0} 2020-12-29 13:44:29.019-08:00 | pool-8-thread-1 | DEBUG | IbftRound | Sending prepare message. round=ConsensusRoundIdentifier{Sequence=303917, Round=0} 2020-12-29 13:44:29.029-08:00 | pool-8-thread-1 | DEBUG | IbftRound | Received a prepare message. round=ConsensusRoundIdentifier{Sequence=303917, Round=0} 2020-12-29 13:44:29.030-08:00 | pool-8-thread-1 | DEBUG | IbftRound | Sending commit message. round=ConsensusRoundIdentifier{Sequence=303917, Round=0} 2020-12-29 13:44:29.039-08:00 | pool-8-thread-1 | DEBUG | IbftRound | Received a commit message. round=ConsensusRoundIdentifier{Sequence=303917, Round=0} 2020-12-29 13:44:29.044-08:00 | pool-8-thread-1 | DEBUG | IbftRound | Received a commit message. round=ConsensusRoundIdentifier{Sequence=303917, Round=0} 2020-12-29 13:44:29.044-08:00 | pool-8-thread-1 | DEBUG | IbftRound | Importing block to chain. round=ConsensusRoundIdentifier{Sequence=303917, Round=0}, hash=0xbc8ca3e637b31435b772d00f4f7fec8b62f816c76b832501f2a3d0efa1a2573d 2020-12-29 13:44:29.046-08:00 | pool-8-thread-1 | DEBUG | TransactionLogBloomCacher | Caching logs bloom for block 0x4a32d. 2020-12-29 13:44:29.047-08:00 | pool-8-thread-1 | INFO | IbftBesuControllerBuilder | Imported #303,917 / 0 tx / 0 pending / 0 (0.0%) gas / (0xbc8ca3e637b31435b772d00f4f7fec8b62f816c76b832501f2a3d0efa1a2573d) 2020-12-29 13:44:29.047-08:00 | pool-8-thread-1 | DEBUG | IbftController | Discarding a message which targets a height not above current chain height. 2020-12-29 13:44:29.047-08:00 | pool-8-thread-1 | DEBUG | IbftController | New chain head detected (block number=303917), currently mining on top of 303916. 2020-12-29 13:44:29.056-08:00 | pool-8-thread-1 | DEBUG | IbftController | Discarding a message which targets a height not above current chain height.

EmcLab (Wed, 06 Jan 2021 20:01:34 GMT):
Also found the bootnode is started fine. However other 3 node didn't start and stop at first line of log output: $ nohup ../../besu/bin/besu --config-file=config.toml nohup: ignoring input and appending output to 'nohup.out'

EmcLab (Wed, 06 Jan 2021 20:01:46 GMT):
$ nohup ../../besu/bin/besu --config-file=config.toml nohup: ignoring input and appending output to 'nohup.out'

EmcLab (Wed, 06 Jan 2021 20:01:46 GMT):
$ nohup ../../besu/bin/besu --config-file=config.toml nohup: ignoring input and appending output to 'nohup.out' and nothing has been changed.

EmcLab (Wed, 06 Jan 2021 20:01:46 GMT):
$ nohup ../../besu/bin/besu --config-file=config.toml nohup: ignoring input and appending output to 'nohup.out'

EmcLab (Wed, 06 Jan 2021 20:02:50 GMT):
What can be the problem? All 4 nodes (IBFT2) were running fine.

EmcLab (Wed, 06 Jan 2021 20:02:50 GMT):
What can be the problem? All 4 nodes (IBFT2) were running fine and nothing has been changed.

EmcLab (Wed, 06 Jan 2021 22:03:22 GMT):
it turns out that the other 3 nodes are running. just no console output.

mharrison (Wed, 06 Jan 2021 22:34:45 GMT):
When I'm using privacy (besu, orion) how does one do a call on a private contract that uses privateFor and privateFrom? I tried using the public call rpc method but it returns null and priv_call seems to be only enabled for privacy groups.

mharrison (Wed, 06 Jan 2021 22:36:00 GMT):
Also when using privacy groups, it seems that more complex variables like `struct` doesn't return a tuple when doing a call, it just returned the first variable in the list.

mharrison (Wed, 06 Jan 2021 22:36:00 GMT):
Also when using privacy groups, it seems that more complex variables like `struct` doesn't return a tuple when doing a call, it just returned the first variable in the list. When returning `.length` it only returns 0 after pushing in a struct into an array. Seems like something may be broken or I have it setup incorrectly. Does anyone have any insight into this? The web3-eea examples don't have any contracts using `struct`

lucassaldanha (Thu, 07 Jan 2021 02:40:33 GMT):
I have updated the release with the artefacts. https://github.com/ConsenSys/permissioning-smart-contracts/releases/tag/v2.0.0

al0818 (Thu, 07 Jan 2021 07:01:45 GMT):
@shemnon hi do you have a recommendation setup for production in Hyperledger Besu IBFT 2.0? because in our setup we have 4, t3 medium to run ibft 2 setup

Helder_jn_Pinto (Thu, 07 Jan 2021 12:41:39 GMT):
hi guys, what is the BonsaiAccount class why this is implemented and differs from previou version?

shemnon (Thu, 07 Jan 2021 13:53:04 GMT):
Bonsai Tries is the new experimental data storage format. BonsaiAccount is one of the implementing classes. It's not ready for production use yet and is gated by a feature flag.

shemnon (Thu, 07 Jan 2021 13:54:49 GMT):
production setup depends on tps load. starting with 4x t3.medium should be a good start. The next move would be to an i3.medium or a t3.large. It's hard to predict what will need upgrading first, the cpu or the i/o speed, but I'm guessing it will be the i.o speed and the t3->i3 and keeping data on the SSD would be the first scaling action.

shemnon (Thu, 07 Jan 2021 13:54:49 GMT):
production setup depends on tps load. starting with 4x t3.medium should be a good start. The next move would be to i3.medium or t3.large. It's hard to predict what will need upgrading first, the cpu or the i/o speed, but I'm guessing it will be the i.o speed and the t3->i3 and keeping data on the SSD would be the first scaling action.

shemnon (Thu, 07 Jan 2021 13:55:58 GMT):
I expect you should be on i3 boxes before t3.xlarge is a consideration. But that depends on total usage levels and t3.med is as low as you would want to go for production.

Helder_jn_Pinto (Thu, 07 Jan 2021 14:00:44 GMT):
ok, so is a feature for scaling the performace of storage, right?

shemnon (Thu, 07 Jan 2021 14:36:57 GMT):
Yes.

mharrison (Thu, 07 Jan 2021 18:10:15 GMT):
So I know orion functionality will be merged into tessera, but after flattening the contract and removing the structs, I was able to retrieve the data I needed. So I believe there is a bug with besu, orion, privacyGroups and solidity structs. Should I report it on besu github, or does it matter at this point. I imagine it may be an issue with besu's world state

mharrison (Thu, 07 Jan 2021 20:28:50 GMT):
Arrays also don't work

mharrison (Thu, 07 Jan 2021 20:29:12 GMT):
All of this works on public contracts but not on private contracts

trent.mohay (Thu, 07 Jan 2021 21:37:07 GMT):
Hey @al0818, Not sure I can offer perfect advice on this, but by and large, I'd run more than 4 validators, and less than 20 (that's the upper limit we've proven roughly works). If you're running cloud based, I'd suggest using 4 geo/availability zones - just to make sure that if one zone goes down, my blockchain can continue (but maybe that's being a little over defensive). Set your blocktime to be how often you'd like blocks to be produced, and set your requesttimeoutseconds to be maybe 5 seconds longer than that - this may need tuning once you've spun up your network (will be affected by geographic layout). Not sure if there's other advice out there :) But good luck, and let us know how you go!

trent.mohay (Thu, 07 Jan 2021 21:40:17 GMT):
Hey @EmcLab, That log snippet actually looks pretty good - the second last line shows a new block being imported at 303917 ... When you say the "nodes stopped" - do you mean they stopped producing blocks, or the processes themselves stopped?

lucassaldanha (Thu, 07 Jan 2021 21:42:47 GMT):
Please open a bug in Besu with as much information as possible. And if you have a sample contract with minimum functionality to exercise the bug it will be awesome!

lucassaldanha (Thu, 07 Jan 2021 21:46:21 GMT):
Even when a transaction is sent using privateFrom/privateFor, behind the scenes a privacy group is assigned to it. To find out the privayGroupId that was created, you should use priv_findPrivacyGroup (https://besu.hyperledger.org/en/latest/Reference/API-Methods/#priv_findprivacygroup). You'll notice that there will be one privacy group with type LEGACY. This is the one that correspond to the privateFrom/privateFor tx. And then you can use this id for all priv calls that need a privacy group id.

bmg (Fri, 08 Jan 2021 16:48:52 GMT):
I see you finally found the time to implement this :)

bmg (Fri, 08 Jan 2021 16:49:05 GMT):
Any initial idea of the savings it brings?

bmg (Fri, 08 Jan 2021 16:49:31 GMT):
Is there any documentation on how they work as well

bmg (Fri, 08 Jan 2021 16:50:58 GMT):
Nvm about the docs, found them here https://wiki.hyperledger.org/display/BESU/Bonsai+Tries+Design+Overview

shemnon (Fri, 08 Jan 2021 17:27:48 GMT):
I don't have stats ready, and I don't want to give stats until this is run at mainnet scale. There are still a couple of missing features/bugs preventing this being used for mainnet right now.

bmg (Fri, 08 Jan 2021 17:53:02 GMT):
No worries, I completely understand

bmg (Fri, 08 Jan 2021 17:53:17 GMT):
Definitely interested once you start getting those numbers in

christian.schepp (Sat, 09 Jan 2021 07:56:37 GMT):
Has joined the channel.

christian.schepp (Sat, 09 Jan 2021 07:56:37 GMT):
I have setup a private network using Orion. I followed the samples here: git clone https://github.com/PegaSysEng/web3js-eea, I can successful store and read data using sendRawTransaction (private transactions) but I do not want to start a transaction for just reading data. Is there the possibility to read private data using web3.eth.call? Is there an example?

christian.schepp (Sat, 09 Jan 2021 08:02:30 GMT):
Send my question to fast, I guess the right way is to use web3.priv.call

christian.schepp (Sat, 09 Jan 2021 08:02:30 GMT):
Sent my question to fast, I guess the right way is to use web3.priv.call

huanniu (Sun, 10 Jan 2021 16:09:08 GMT):
Has joined the channel.

huanniu (Sun, 10 Jan 2021 16:09:09 GMT):
Is Hyperledger Besu free to use for commercial?

shemnon (Mon, 11 Jan 2021 01:32:16 GMT):
Besu is Apache licensed. You can do (almost) whatever you what you want with it. There are members of Hyperledger that will offer you support contracts if you want or need them. There are successful deployments with and without support contracts, YMMV.

huanniu (Mon, 11 Jan 2021 09:42:14 GMT):
Great to hear that. Thank you Shemnon :slight_smile: Where could I get to speak with some members for such support? Do I have to join the Hyperledger membership?

NicolasMassart (Mon, 11 Jan 2021 11:26:21 GMT):
You can ask here for community support. For enterprise paid support, I sent you a PM.

Helder_jn_Pinto (Mon, 11 Jan 2021 16:04:30 GMT):
Hello, i notice that function https://github.com/hyperledger/besu/blob/297a9c0b96580884a9040a3aba65d1d904506e5a/ethereum/core/src/main/java/org/hyperledger/besu/ethereum/worldstate/DefaultWorldStateArchive.java#L57, has blockHash but is not used why is here?

shemnon (Mon, 11 Jan 2021 20:41:06 GMT):
This is done in preperation for Bonsai Tries. Bonsai Tries will be storing world state by block hash rather than by world state root. All calls need to provide both but the particular data storage layout will use only one of the parameters.

mharrison (Mon, 11 Jan 2021 23:43:55 GMT):
Had a question come up about double spend and privacy channels. It does seem quite easy to double spending via private transactions. Any insight into this?

Helder_jn_Pinto (Tue, 12 Jan 2021 12:07:18 GMT):
ok thanks @shemnon

atoulme (Tue, 12 Jan 2021 19:08:53 GMT):
As we're nearing the release, I'd like to take time, maybe during the next office hours, to go over what this new OpenTelemetry thing does. It would be a good time for me to answer any questions and take any feedback from the team, make sure that's addressed and well understood from me. Does that sound like a good idea?

timbeiko (Thu, 14 Jan 2021 23:19:57 GMT):
:besu: *Besu 20.10.4 is out* :besu: _Note: this is the last bi-weekly release before our quarterly RC._ :star2: Highlights :star2: - Implemented EIP-778: Ethereum Node Records (ENR) #1680 - Implemented EIP-868: Node Discovery v4 ENR Extension #1721 - Added revert reason to eth_estimateGas RPC call. #1730 You can get it here: https://github.com/hyperledger/besu/releases/tag/20.10.4

timbeiko (Thu, 14 Jan 2021 23:20:31 GMT):
Yes! We have one scheduled next Tuesday at 7am PT :+1:

timbeiko (Thu, 14 Jan 2021 23:20:31 GMT):
Yes! We have one scheduled next Tuesday at 7am PT @atoulme :+1:

atoulme (Fri, 15 Jan 2021 02:10:13 GMT):
7am PT :( ok I guess I can try to be up for it.

atoulme (Fri, 15 Jan 2021 02:13:31 GMT):
@timbeiko looking for the meeting here: https://wiki.hyperledger.org/display/BESU/Agendas can't see it?

timbeiko (Fri, 15 Jan 2021 15:29:33 GMT):
@atoulme created it :slight_smile: https://wiki.hyperledger.org/display/BESU/2020-1-19+Office+Hours

EmcLab (Fri, 15 Jan 2021 19:10:06 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=dxCifPZxmiciquECJ) the besu node stopped running. I guess somehow the besu process was killed by the ubuntu. I am trying to find some utility which can automatically load the besu again and keep the besu running if it accidentally stops.

EmcLab (Sat, 16 Jan 2021 19:59:00 GMT):
Hi team, what is the linux utility which can automatically reload besu if the process was killed?

EmcLab (Sat, 16 Jan 2021 20:00:05 GMT):
just keep besu running all the time. I used nohup but besu was killed after about 10days.

shemnon (Sun, 17 Jan 2021 00:42:06 GMT):
When we need auto restart we load it into systemd. Here's the config: ``` $ sudo cat /etc/systemd/system/besu.service [Unit] Description=Besu Enterprise Ethereum java client After=syslog.target network.target [Service] User=besu Group=besu Environment=HOME=/home/besu Type=simple ExecStart=/bin/sh -c "/opt/besu/current/bin/besu --config-file=/etc/besu/config.toml >> /var/log/besu/besu.log 2>&1" SuccessExitStatus=143 Restart=on-failure RestartSec=10s [Install] WantedBy=multi-user.target ```

shemnon (Mon, 18 Jan 2021 19:09:19 GMT):
In ~ 20 hours we will have Hyperledger Office Hours (EMEA/AMER friendly times). In addition to standard agenda items Antoine Toulme will spend some time discussing the new OpenTelemetry additions to Besu. https://wiki.hyperledger.org/display/BESU/2021-01-19+Office+Hours

EmcLab (Tue, 19 Jan 2021 18:28:22 GMT):
@shemnon , many thanks.

perusworld (Wed, 20 Jan 2021 02:24:06 GMT):
Has joined the channel.

KingAlawaka (Wed, 20 Jan 2021 12:19:59 GMT):
Has joined the channel.

KingAlawaka (Wed, 20 Jan 2021 12:25:42 GMT):
Hi all, I am doing a little bit of research on both HL Fabric Channels and HL Besu privacy groups. I want to know the differences of both of these... Thanks in advance...

BancuStefan (Wed, 20 Jan 2021 13:02:23 GMT):
Has joined the channel.

BancuStefan (Wed, 20 Jan 2021 13:02:24 GMT):
Hi there, I have a POA with ibft2 network on hyperledger BESU, set to 0 mining fee. network is buildin bloks, however I have deployed a smart contract and the transaction sent is not incorporated to a block, it stays in pending, do you happen to had any question related to this ?

BancuStefan (Wed, 20 Jan 2021 13:06:55 GMT):

Clipboard - January 20, 2021 3:06 PM

Nick (Thu, 21 Jan 2021 04:50:56 GMT):
Has joined the channel.

NicolasMassart (Thu, 21 Jan 2021 10:38:42 GMT):
Fabric channels are more independent chains (with their own genesis) where only allowed users can transact. It's close to what we call state channels on Ethereum too. Besu privacy groups are defined on your chain directly as smart contracts and private transaction data is stored in the private transaction manager, only a privacy marker is visible on the public chain. Who can participate is handled by the privacy group smart contract on your main chain and the privacy manager looks at the smart contract to decide if it can give you access to the private transaction data.

NicolasMassart (Thu, 21 Jan 2021 10:38:42 GMT):
Fabric channels are more like independent chains (with their own genesis) where only allowed users can transact. It's close to what we call state channels on Ethereum too. Besu privacy groups are defined on your chain directly as smart contracts and private transaction data is stored in the private transaction manager, only a privacy marker is visible on the public chain. Who can participate is handled by the privacy group smart contract on your main chain and the privacy manager looks at the smart contract to decide if it can give you access to the private transaction data.

Helder_jn_Pinto (Thu, 21 Jan 2021 11:58:05 GMT):
Hi, its possible to start one besu client IBFT with previous blocks mined like 2000 and start all network and clients in block 1800

Helder_jn_Pinto (Thu, 21 Jan 2021 13:21:12 GMT):
My real question is, what we have as tools to fix a wrong block due an error of deploying different versions of the block processors.

Helder_jn_Pinto (Thu, 21 Jan 2021 13:24:00 GMT):
supposing if on block x after deploy 4 ibft validators with version 1 and 2 besu clients as public peers and bootnodes as version 2, the users only have access to public nodes ...

Helder_jn_Pinto (Thu, 21 Jan 2021 13:24:33 GMT):
when the transaction enter in public nodes its processed like needs becasuse is version 2

Helder_jn_Pinto (Thu, 21 Jan 2021 13:25:23 GMT):
but validators as version 1 mismatch root state and disconnect

Helder_jn_Pinto (Thu, 21 Jan 2021 13:26:06 GMT):
in this case the solution is simple remove the database of 4 validators in version 1.

Helder_jn_Pinto (Thu, 21 Jan 2021 13:26:30 GMT):
update client version of validators to version 2 and sync with public nodes

Helder_jn_Pinto (Thu, 21 Jan 2021 13:27:59 GMT):
but if the case is inverse, public nodes as v1 and validators v2, we lost an transaction that fails in v1 and not in v2

Helder_jn_Pinto (Thu, 21 Jan 2021 13:29:04 GMT):
what is the procedure to fix this mistake on database

Helder_jn_Pinto (Thu, 21 Jan 2021 13:30:20 GMT):
how we rolback this transaction that fail in v1, implement hardfork with right transaction processor at block X?

KingAlawaka (Thu, 21 Jan 2021 18:56:21 GMT):
@NicolasMassart Thanks a lot for your in detail explanation. Now I can understand the difference of both of these implementations. Thanks again... cheers

mwaser (Thu, 21 Jan 2021 20:15:59 GMT):
So . . . . I've got the Besu Quickstart up and running on Azure. According to the Grafana dashboard, everything is functioning perfectly. Now, I want to connect an outside node to it. I've added the following to validator1 (the bootnode) in docker-compose.yml ports: - 30303:30303

mwaser (Thu, 21 Jan 2021 20:16:32 GMT):
I have opened port 30303 in the Azure networking the same way I opened the Grafana port

mwaser (Thu, 21 Jan 2021 20:17:45 GMT):
I have an external node that can connect to the public Ethereum network but cannot connect to my Quickstart

mwaser (Thu, 21 Jan 2021 20:18:07 GMT):
What am I likely doing wrong?

mwaser (Thu, 21 Jan 2021 20:20:18 GMT):
Also, what is the best way to make the other peers visible? Should I give them all externally accessible ports and have the bootnode list and connect via those instead of using the internal ports?

mwaser (Thu, 21 Jan 2021 20:21:42 GMT):
Or can I just map their 30303s to something like 30304 and 30305 and 30306 and they will discover anything that connects to the bootnode?

mwaser (Thu, 21 Jan 2021 22:56:52 GMT):
---------------------------------------- A few more details and something I just discovered: My outside node's command line is bin/besu --bootnodes=enode://45f5f4a243fe851b025d622140f92d645bc04a0eb67589c4d6a21a5f9f367e600637d83546c3cbf9ccfa2fae072a1fa08e236d222b3262a685c15225540df2ee@20.44.99.125:30303 --data-path=besudata --genesis-file=ibft2Genesis.json --min-gas-price=0 If I change the hexadecimal part of the enode, there is no apparent difference in behavior (as long as it has the correct number of bytes. Indeed, if I change the ip address of the enode, there is no apparent difference in behavior. Where should the bootnode be showing up in the startup messages? WHat am I doing wrong?

mwaser (Thu, 21 Jan 2021 23:00:25 GMT):
----------------------------------- If I put the bootnodes in a config file, would that work better? What if I defined static nodes?

trent.mohay (Fri, 22 Jan 2021 01:02:08 GMT):
Hi @Helder_jn_Pinto, There's a few things going on with your idea, and its worth breaking them down individually: 1. A public node doesn't mine blocks, therefore any transactions submitted to it is forwarded to the Validator for inclusion in a block. If the transaction is invalid (or makes the block invalid) - it will be discarded by the validator, and will never make it onto the blockchain 2. All nodes in a network need to have the same understanding of where hard-forks exist (as define in the genesis file) - otherwise some nodes will halt (or fork away?) 3. You can't add retrospective hard-forks, they really need to be added to the genesis file for a block in the future - and any new nodes which join the network need this genesis file with all hard-forks in it - or else they will stop synching when they reach the fork-block (as the block will appear invalid, or have an incorrect state-root)

jframe (Fri, 22 Jan 2021 01:44:22 GMT):
Hi @mwaser, Can you run your external node with debug logging on using --logging=debug to your command line so we can if there are any errors relating to establishing a peer connection. Is the same ibft genesis file being used on both the quickstart nodes and your external node? And is the public quickstart node 30303 accessible from the external nodes environment using telnet or something similar?

DinDjarin (Fri, 22 Jan 2021 04:23:45 GMT):
Has joined the channel.

mwaser (Fri, 22 Jan 2021 13:23:12 GMT):
Hi @jframe Thank you so much for offering to assist. Additional information: The "remote" node is my home desktop. It connects to the public Ethereum network and starts syncing with no problem. The ibft genesis file on my desktop was directly copied from the Azure quickstart setup. Telnet confirms that the Azure port is open mwaser@DESKTOP-PP2MO7N:~$ telnet 20.44.99.125 30303 Trying 20.44.99.125... Connected to 20.44.99.125. Escape character is '^]'. Portnet (http://portquiz.net:30303/) confirms that my outgoing port is open (always a good thing to check since home routers generally block it ;-) Actually though, since my remote node did connect to the public Ethereum network, I should already have known that. :-P ==> Looking at it with fresh eyes - the log file shows no signs of having seen the --bootnodes argument. Log file is at https://1drv.ms/u/s!AgHGbmIQpIRChLBUXT0bSW1ddSN0IA?e=M7arzd I'm going to try using a config file next and then static nodes. Is there anything else you can see? Thanks! Mark

mwaser (Fri, 22 Jan 2021 14:41:09 GMT):
config file didn't work -- no sign of the bootnode being referenced (which may be correct but I have no idea) The only real difference I see between public Ethereum startup and the quickstart startup is that just after 2021-01-22 09:34:43.898-05:00 | main | INFO | NetworkRunner | Starting Network. And before 2021-01-22 09:34:44.149-05:00 | nioEventLoopGroup-2-1 | INFO | RlpxAgent | P2P RLPx agent started and listening on /[0:0:0:0:0:0:0:0]:30303. The Ethereum startup does some DNS work which the quick start startup does not 2021-01-22 09:34:43.903-05:00 | main | INFO | DefaultP2PNetwork | Starting DNS discovery with URL enrtree://AKA3AM6LPBYEUDMVNU3BSVQJ5AD45Y7YPOHJLEF6W26QOE4VTUDPE@all.mainnet.ethdisco.net 2021-01-22 09:34:43.989-05:00 | main | DEBUG | ResolvConfResolverConfigProvider | Added /172.29.128.1:53 to nameservers 2021-01-22 09:34:43.989-05:00 | main | DEBUG | JndiContextResolverConfigProvider$InnerJndiContextResolverConfigProvider | Added /172.29.128.1:53 to nameservers 2021-01-22 09:34:44.015-05:00 | Timer-0 | DEBUG | SimpleResolver | Sending all.mainnet.ethdisco.net./TXT, id=59221 to tcp/172.29.128.1:53 2021-01-22 09:34:44.020-05:00 | Timer-0 | DEBUG | Client | Starting dnsjava NIO selector thread

mwaser (Fri, 22 Jan 2021 14:50:56 GMT):
OK. So static nodes worked -- mostly. I connected but then am running into security problems. Time to try to go dig into that. Any suggestions welcome. I would also love to know why the --bootnodes command line argument and the config file didn't work . . . . 2021-01-22 09:45:02.396-05:00 | nioEventLoopGroup-3-1 | DEBUG | HandshakeHandlerOutbound | Wrote initial crypto handshake message to /20.44.99.125:30303. 2021-01-22 09:45:02.498-05:00 | nioEventLoopGroup-3-1 | DEBUG | AbstractHandshakeHandler | Sending framed hello 2021-01-22 09:45:02.529-05:00 | nioEventLoopGroup-3-1 | DEBUG | AbstractHandshakeHandler | Successfully wrote hello message 2021-01-22 09:45:02.569-05:00 | nioEventLoopGroup-3-1 | DEBUG | DeFramer | Received HELLO message: PeerInfo{version=5, clientId='besu/v20.10.0/linux-x86_64/oracle_openjdk-java-11', capabilities=[eth/62, eth/63, eth/64, IBF/1], port=30303, nodeId=0x45f5f4a243fe851b025d622140f92d645bc04a0eb67589c4d6a21a5f9f367e600637d83546c3cbf9ccfa2fae072a1fa08e236d222b3262a685c15225540df2ee} 2021-01-22 09:45:02.570-05:00 | nioEventLoopGroup-3-1 | DEBUG | DeFramer | Enable compression for p2pVersion: 5 2021-01-22 09:45:02.664-05:00 | nioEventLoopGroup-3-1 | DEBUG | RlpxAgent | Outbound connection established to peer: 0x45f5f4a243fe851b025d622140f92d645bc04a0eb67589c4d6a21a5f9f367e600637d83546c3cbf9ccfa2fae072a1fa08e236d222b3262a685c15225540df2ee 2021-01-22 09:45:02.673-05:00 | nioEventLoopGroup-3-1 | DEBUG | EthProtocolManager | Sending status message to 0x45f5f4a243fe851b02.... 2021-01-22 09:45:02.709-05:00 | nioEventLoopGroup-3-1 | DEBUG | ApiHandler | Received Wire DISCONNECT (UNKNOWN) from peer: PeerInfo{version=5, clientId='besu/v20.10.0/linux-x86_64/oracle_openjdk-java-11', capabilities=[eth/62, eth/63, eth/64, IBF/1], port=30303, nodeId=0x45f5f4a243fe851b025d622140f92d645bc04a0eb67589c4d6a21a5f9f367e600637d83546c3cbf9ccfa2fae072a1fa08e236d222b3262a685c15225540df2ee} 2021-01-22 09:45:02.710-05:00 | nioEventLoopGroup-3-1 | DEBUG | AbstractPeerConnection | Disconnected (0x UNKNOWN) from PeerInfo{version=5, clientId='besu/v20.10.0/linux-x86_64/oracle_openjdk-java-11', capabilities=[eth/62, eth/63, eth/64, IBF/1], port=30303, nodeId=0x45f5f4a243fe851b025d622140f92d645bc04a0eb67589c4d6a21a5f9f367e600637d83546c3cbf9ccfa2fae072a1fa08e236d222b3262a685c15225540df2ee} 2021-01-22 09:45:02.716-05:00 | nioEventLoopGroup-3-1 | DEBUG | EthProtocolManager | Peer requested to be disconnected (0x UNKNOWN), 0 peers left: EthPeers{connections=}

Helder_jn_Pinto (Fri, 22 Jan 2021 14:59:03 GMT):
Thanks, I've fixed my network, I start the network with validators with the same database and the same genesis for hardforks and client version 1, it took some time to continue mining at start (maybe some background schedule or verification ???), I needed also reschedule the last hardfork to future block and deploy with new version.

Helder_jn_Pinto (Fri, 22 Jan 2021 15:58:07 GMT):
Hi folks, i'm upgrading my besu client from 1.4.0 to 1.5.1 and i got an 401 when build to get repo.spring.io dependency , what is need to do ?

Helder_jn_Pinto (Fri, 22 Jan 2021 15:59:05 GMT):
>> Task :services:tasks:jar FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':startScripts'. > Could not resolve all files for configuration ':runtimeClasspath'. > Could not resolve com.splunk.logging:splunk-library-javalogging:1.8.0. Required by: project : > project :besu > Could not resolve com.splunk.logging:splunk-library-javalogging:1.8.0. > Could not get resource 'https://repo.spring.io/libs-release/com/splunk/logging/splunk-library-javalogging/1.8.0/splunk-library-javalogging-1.8.0.pom'. > Could not GET 'https://repo.spring.io/libs-release/com/splunk/logging/splunk-library-javalogging/1.8.0/splunk-library-javalogging-1.8.0.pom'. Received status code 401 from server: Unauthorized * Try:

Helder_jn_Pinto (Fri, 22 Jan 2021 15:59:38 GMT):
i checked the merge files and i have gradle like 1.5.1

Helder_jn_Pinto (Fri, 22 Jan 2021 15:59:38 GMT):
i checked the merge files and i have gradle like in tag 1.5.1

Helder_jn_Pinto (Fri, 22 Jan 2021 15:59:38 GMT):
i checked the merge files and i have gradle like in besu tag 1.5.1

perusworld (Fri, 22 Jan 2021 21:45:55 GMT):
i ran into the same issue, raised a PR @ https://github.com/hyperledger/besu/pull/1828, looks like starting january 21, 2021 repo.spring.io doesnot allow anonymous download of 3rd-party Maven Central artifacts according to https://spring.io/blog/2020/10/29/notice-of-permissions-changes-to-repo-spring-io-fall-and-winter-2020

Helder_jn_Pinto (Mon, 25 Jan 2021 10:42:12 GMT):
what is the resolution for this ? put some credentials in config ?

Helder_jn_Pinto (Mon, 25 Jan 2021 10:44:07 GMT):
:thumbsup:

salbonico (Mon, 25 Jan 2021 17:51:06 GMT):
Has joined the channel.

EmcLab (Tue, 26 Jan 2021 06:45:16 GMT):
Hi @shemnon . After using systemd service to start besu nodes, it throws an strange error in the log file:

EmcLab (Tue, 26 Jan 2021 06:45:21 GMT):
2021-01-25 22:32:25.318-08:00 | main | INFO | StaticNodesParser | StaticNodes file /./data/static-nodes.json does not exist, no static connections will be created. 2021-01-25 22:32:25.318-08:00 | main | INFO | Besu | Connecting to 0 static nodes. 2021-01-25 22:32:25.321-08:00 | main | INFO | Besu | Security Module: localfile picocli.CommandLine$ParameterException: Cannot store generated private key. at org.hyperledger.besu.cli.BesuCommand.run(BesuCommand.java:1147) at picocli.CommandLine.executeUserObject(CommandLine.java:1919) at picocli.CommandLine.access$1100(CommandLine.java:145) at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2332) at picocli.CommandLine$RunLast.handle(CommandLine.java:2326) at picocli.CommandLine$RunLast.handle(CommandLine.java:2291) at picocli.CommandLine$AbstractParseResultHandler.handleParseResult(CommandLine.java:2152) at picocli.CommandLine.parseWithHandlers(CommandLine.java:2530) at org.hyperledger.besu.cli.util.ConfigOptionSearchAndRunHandler.handle(ConfigOptionSearchAndRunHandle r.java:56) at org.hyperledger.besu.cli.util.ConfigOptionSearchAndRunHandler.handle(ConfigOptionSearchAndRunHandle r.java:31) at picocli.CommandLine$AbstractParseResultHandler.handleParseResult(CommandLine.java:2152) at picocli.CommandLine.parseWithHandlers(CommandLine.java:2530) at org.hyperledger.besu.cli.BesuCommand.parse(BesuCommand.java:1260) at org.hyperledger.besu.cli.BesuCommand.parse(BesuCommand.java:1129) at org.hyperledger.besu.Besu.main(Besu.java:50) Caused by: picocli.CommandLine$ExecutionException: Cannot store generated private key. at org.hyperledger.besu.cli.BesuCommand.buildController(BesuCommand.java:1530) at org.hyperledger.besu.cli.BesuCommand.controller(BesuCommand.java:1522) at org.hyperledger.besu.cli.BesuCommand.run(BesuCommand.java:1141) ... 14 more Caused by: java.lang.IllegalArgumentException: Cannot store generated private key. at org.hyperledger.besu.crypto.KeyPairUtil.loadKeyPair(KeyPairUtil.java:71) at org.hyperledger.besu.cli.BesuCommand.loadKeyPair(BesuCommand.java:1247) at org.hyperledger.besu.cli.BesuCommand.defaultSecurityModule(BesuCommand.java:1242) at com.google.common.base.Suppliers$NonSerializableMemoizingSupplier.get(Suppliers.java:167) at org.hyperledger.besu.cli.BesuCommand.securityModule(BesuCommand.java:2308) at org.hyperledger.besu.cli.BesuCommand.buildNodeKey(BesuCommand.java:2301) at org.hyperledger.besu.cli.BesuCommand.getControllerBuilder(BesuCommand.java:1555) at org.hyperledger.besu.cli.BesuCommand.buildController(BesuCommand.java:1528) ... 16 more To display full help: besu [COMMAND] --help 2021-01-25 22:32:36,492 main INFO Registered Log4j as the java.util.logging.LogManager. Setting logging level to DEBUG

Julian178 (Tue, 26 Jan 2021 11:11:15 GMT):
Has joined the channel.

Julian178 (Tue, 26 Jan 2021 11:11:15 GMT):
hello guys! I have a practical question about IBFT2: what is the maximum number of validators/signers is advisable to have in my private network?

Julian178 (Tue, 26 Jan 2021 11:12:13 GMT):
using the besu client on all the nodes

diegoll (Tue, 26 Jan 2021 16:26:03 GMT):
hello team, could somebody tell me what's the Dockerfile that's used for publishing the official Dockerhub images?

shemnon (Tue, 26 Jan 2021 16:30:35 GMT):
file permissions in the target directory are not writable to the besu user. either chown the parent, add besu to the group and make it group writable, or make it world writable.

rjones (Tue, 26 Jan 2021 17:03:50 GMT):
@diegoll I'm looking [here](https://github.com/hyperledger/besu/blob/049c3799cf8c37abac4d80cad31ef781de83adce/.circleci/config.yml#L248)

mwaser (Tue, 26 Jan 2021 19:39:05 GMT):
Still trying to get an external node to connect to my Besu Quick Start. I'm to the point where I need to work on Permissions. I'm using the instructions at https://besu.hyperledger.org/en/stable/Tutorials/Permissioning/Getting-Started-Onchain-Permissioning/ I've gotten virtually all the way through. When my Metamask was pointed at the public Ethereum Network, the program recognized that and gave the correct error message. Unfortunately, when Metamask is pointed at my Besu Quickstart the following occurs Using Typescript 3.2.1 (per previous error message saying I needed to downgrade) Web browser starts up & console says "Files successfully emitted, waiting for typecheck results..." After five minutes of watching the blue spinning loop on the Besu Permissioning page, I get the following error on both the web browser and the console Failed to compile. /mnt/c/Users/markw/permissioning-smart-contracts/node_modules/@babel/types/lib/index.d.ts TypeScript error in /mnt/c/Users/markw/permissioning-smart-contracts/node_modules/@babel/types/lib/index.d.ts(1450,50): '{' or ';' expected. TS1144 1448 | }): ReturnedChild[]; 1449 | 1450 | declare function assertNode(node?: any): asserts node is Node; | ^ 1451 | 1452 | declare function assertArrayExpression(node: object | null | undefined, opts?: object | null): asserts node is ArrayExpression; 1453 | declare function assertAssignmentExpression(node: object | null | undefined, opts?: object | null): asserts node is AssignmentExpression; Any help would be greatly appreciated! Thanks!

mwaser (Tue, 26 Jan 2021 20:36:27 GMT):
Doing more research, I note that asserts wasn't added to Typescript until version 3.7 (i.e. well after the versions we're supposed to be using).

mwaser (Tue, 26 Jan 2021 20:37:00 GMT):
Actually though -- now I'm thinking that the problem is actually above line 1450 . . . .

mwaser (Tue, 26 Jan 2021 22:14:45 GMT):
Hi! Thanks for responding. I switched over to trying to build a functioning release (I'm failing with a last compile error as described at the bottom of the chat) & actually missed your reply until now . . . . The release artefacts seem to be missing a config.json that is necessary. Below is the session where I ran http-server and tried both firefox and chrome against it . . . . mwaser@DESKTOP-PP2MO7N:/mnt/c/Users/markw/besu-perms$ http-server Starting up http-server, serving ./ Available on: http://127.0.0.1:8080 http://172.24.124.107:8080 Hit CTRL-C to stop the server [2021-01-26T22:08:02.503Z] "GET /" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:84.0) Gecko/20100101 Firefox/84.0" (node:459) [DEP0066] DeprecationWarning: OutgoingMessage.prototype._headers is deprecated (Use `node --trace-deprecation ...` to show where the warning was created) [2021-01-26T22:08:02.680Z] "GET /static/css/main.cc258d2f.chunk.css" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:84.0) Gecko/20100101 Firefox/84.0" [2021-01-26T22:08:02.683Z] "GET /static/js/main.e6a2cbe7.chunk.js" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:84.0) Gecko/20100101 Firefox/84.0" [2021-01-26T22:08:02.684Z] "GET /static/js/2.68f7f0a0.chunk.js" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:84.0) Gecko/20100101 Firefox/84.0" [2021-01-26T22:08:03.442Z] "GET /config.json" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:84.0) Gecko/20100101 Firefox/84.0" [2021-01-26T22:08:03.443Z] "GET /quorum-avatar.png" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:84.0) Gecko/20100101 Firefox/84.0" [2021-01-26T22:08:03.445Z] "GET /config.json" Error (404): "Not found" [2021-01-26T22:09:18.741Z] "GET /" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Safari/537.36" [2021-01-26T22:09:18.789Z] "GET /static/css/main.cc258d2f.chunk.css" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Safari/537.36" [2021-01-26T22:09:18.791Z] "GET /static/js/2.68f7f0a0.chunk.js" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Safari/537.36" [2021-01-26T22:09:18.792Z] "GET /static/js/main.e6a2cbe7.chunk.js" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Safari/537.36" [2021-01-26T22:09:19.248Z] "GET /config.json" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Safari/537.36" [2021-01-26T22:09:19.253Z] "GET /quorum-avatar.png" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Safari/537.36" [2021-01-26T22:09:19.254Z] "GET /config.json" Error (404): "Not found" [2021-01-26T22:09:19.303Z] "GET /manifest.json" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Safari/537.36"

EmcLab (Tue, 26 Jan 2021 23:24:59 GMT):
Added the besu user to sudoer group and the error is the same that "can not store generated private key" Is there other problem which may cause the error? @shemnon

EmcLab (Tue, 26 Jan 2021 23:24:59 GMT):
Which is the target directory? Here is the line in service file, The besu is installed under home/myUser which myUser has full access right: ExecStart=/bin/sh -c "/home/myUser/bin/besu/bin/besu --config-file=/home/myUser/bin/besu_network/node1/config.toml >> /var/log

EmcLab (Wed, 27 Jan 2021 00:33:08 GMT):
Also myUser has been added to sudoer group and the error is the same.

EmcLab (Wed, 27 Jan 2021 00:50:01 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=neznk3t7382yR2rSM) The manual start of the nodes works fine for all 4 nodes before using service. It is very strange that the private key can not be stored.

lucassaldanha (Wed, 27 Jan 2021 01:55:52 GMT):
You need to provide the config.json file with some info about your setup (https://github.com/ConsenSys/permissioning-smart-contracts#deploying-the-dapp) :)

macfarla (Wed, 27 Jan 2021 04:29:55 GMT):
Hi @mwaser - is the error from MetaMask or from Typescript?

trent.mohay (Wed, 27 Jan 2021 04:31:19 GMT):
@Julian178 we've run networks with upto 20 validators and it seemed to run ok (though all in the same data centre from memory). The question probably comes down to "how many validators are likely to become corrupted/crash in the same time period" - then build a network which supports that many simultaneous failures. I.e. 4 validators is _fine_ if you only expect 1 node to be offline at any time. If you think there's a risk that 4 validators might be failed at the same time, then you need to have at least 12 validators in the network to prevent the chain from halting

EmilianoVernini (Wed, 27 Jan 2021 08:42:21 GMT):
Has joined the channel.

EmilianoVernini (Wed, 27 Jan 2021 08:42:21 GMT):
Hi All, I need help with permissioning BESU DAPP.

EmilianoVernini (Wed, 27 Jan 2021 08:49:05 GMT):
We are working to build a permissioned network, so only indentified organization can join the nwtwork and add a node, but public meaning that all the users can submit transaction to the network. But we must avoid that users can deploy new smart contracts. ``` There is a way to do this just using the permissiong DAPP (for example by defining an authorization policy)?``` Thanks, Emiliano ``` ``` ``` ```

Julian178 (Wed, 27 Jan 2021 09:47:08 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=6fQ4HcNuN3ySLXHCq) Thanks for answer! I was referring to the maximum number of validators, as we have already a network of 50 nodes and all of them are asking to be validators. We are concern that making all of them validators the performance of the network will decrease

mwaser (Wed, 27 Jan 2021 12:02:14 GMT):
Typescript. It shows in both the server's console and the server page.

mwaser (Wed, 27 Jan 2021 12:04:37 GMT):
DOH! RTFM. My bad. I'll let you know how it goes but I'd be surprised if it doesn't work. :stuck_out_tongue_winking_eye:

shemnon (Wed, 27 Jan 2021 17:02:42 GMT):
whatever data-dir is set to in your config.

EmcLab (Wed, 27 Jan 2021 18:40:42 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=jFbTkpsrqFamBWWZC) Shall the service be started under myUser's home directory where the config.toml resides? The data-dir is under the myUser's home directory and myUser has full access.

EmcLab (Wed, 27 Jan 2021 18:42:42 GMT):
I tested manually start the node.service and it works fine, even though it took more than 5 minutes to get synced (no console output after starting service for 5 or 10 min)

shemnon (Wed, 27 Jan 2021 19:06:00 GMT):
The log indicates it's '/.' Try setting the working directory to your data-dir prior to launch and see if that helps.

shemnon (Wed, 27 Jan 2021 19:06:23 GMT):
or '/./data' based on the static-nodes lookup.

EmcLab (Wed, 27 Jan 2021 19:50:53 GMT):
Hello, why node starting stuck for a few minutes before proceeding? Here is the console output

EmcLab (Wed, 27 Jan 2021 19:50:53 GMT):
Hello, why startup node starting stuck for a few minutes before proceeding? Here is the console output

EmcLab (Wed, 27 Jan 2021 19:51:09 GMT):
2021-01-27 11:46:57.810-08:00 | main | DEBUG | NativeLibrary | Adding system paths: [/usr/lib/x86_64-linux-gnu, /lib/x86_64-linux-gnu, /lib64, /usr/lib, /lib, /usr/lib/x86_64-linux-gnu/libfakeroot] 2021-01-27 11:46:57.810-08:00 | main | DEBUG | NativeLibrary | Trying libsecp256k1.so 2021-01-27 11:46:57.810-08:00 | main | DEBUG | NativeLibrary | Loading failed with message: libsecp256k1.so: cannot open shared object file: No such file or directory 2021-01-27 11:46:57.810-08:00 | main | DEBUG | NativeLibrary | Looking for version variants 2021-01-27 11:46:57.813-08:00 | main | DEBUG | Native | Looking in classpath from jdk.internal.loader.ClassLoaders$AppClassLoader@5bc2b487 for secp256k1 2021-01-27 11:46:57.814-08:00 | main | DEBUG | Native | Found library resource at jar:file:/home/cjadmin/bin/besu/lib/secp256k1-0.3.0.jar!/linux-x86-64/libsecp256k1.so 2021-01-27 11:46:57.814-08:00 | main | DEBUG | Native | Extracting library to /home/cjadmin/.cache/JNA/temp/jna5291301838090606776.tmp 2021-01-27 11:46:57.820-08:00 | main | DEBUG | NativeLibrary | Found library 'secp256k1' at /home/cjadmin/.cache/JNA/temp/jna5291301838090606776.tmp

EmcLab (Wed, 27 Jan 2021 19:52:27 GMT):
The last line (Found library 'secp256k1' is where stuck for a few minutes.

EmcLab (Wed, 27 Jan 2021 19:57:08 GMT):
Here is where regular node stuck for a few minutes before proceeding:

EmcLab (Wed, 27 Jan 2021 19:57:10 GMT):
2021-01-27 11:54:25.324-08:00 | main | INFO | AbstractAltBnPrecompiledContract | Using LibEthPairings native alt bn128

lucassaldanha (Wed, 27 Jan 2021 21:08:15 GMT):
The standard DAPP implementation doesn't provide this functionality. Any account added to the allowed-list will have its transactions accepted by the nodes. However, the rule check that is done in the smart contract can be customised to fit other use cases like yours. Take a look at https://github.com/ConsenSys/permissioning-smart-contracts/blob/master/contracts/AccountRules.sol#L76 and you'll see that the smart contract is only checking if the account belongs to a list of authorised accounts, but the api has got all the information regarding a tx that can be used to write custom rules. For example, you could check if the 2nd address parameter (to) is null, what implies a contract deployment, and check the sender address agains another list, of accounts that can deploy contracts.

lucassaldanha (Wed, 27 Jan 2021 21:08:40 GMT):
By extending the contract you can create your own rules.

EmilianoVernini (Thu, 28 Jan 2021 08:36:53 GMT):
Thanks for answer!

puppeteer701 (Thu, 28 Jan 2021 11:02:30 GMT):
Has joined the channel.

timbeiko (Thu, 28 Jan 2021 16:47:46 GMT):
@EmcLab could you please open a Github issue for this? It will be easier for our engineers to have a look. Thanks!

shemnon (Thu, 28 Jan 2021 18:31:36 GMT):
I think you are seeing issues with the very secure randomization of the secp256k1 library. It drains the native entropy and takes time to re-fill. Here's how the ethereum hive tests fixed it: https://github.com/hyperledger/besu/issues/1464#issuecomment-710027687

macfarla (Fri, 29 Jan 2021 01:21:33 GMT):
ah ok and I see in your later message you're using a feature from a later version of typescript.

RobertJuhasST (Fri, 29 Jan 2021 14:16:32 GMT):
Has joined the channel.

RobertJuhasST (Fri, 29 Jan 2021 14:16:32 GMT):
Hey guys, can you let me know why is this happening in the gas-free-network (I have followed instructions for setting gas-free-network on the official besu docs) ? The transaction I am executing is returning me this: `java.lang.RuntimeException: org.web3j.protocol.exceptions.TransactionException: Transaction has failed with status: 0x0. Gas used: 27506. (not-enough gas?)`

mwaser (Fri, 29 Jan 2021 17:15:29 GMT):
I'm trying to deploy the permissioning contracts per https://besu.hyperledger.org/en/stable/Tutorials/Permissioning/Getting-Started-Onchain-Permissioning/ I had one oddity in that it wanted my account to have a balance despite have a free-gas setup. Whatever. I gave it a balance. What has me stopped is that the truffle migration never completes -------------------------------------------------------------------------------- s$ yarn truffle migrate --reset yarn run v1.22.10 $ /mnt/c/Users/markw/besu-perms-full/permissioning-smart-contracts/node_modules/.bin/truffle migrate --reset Compiling your contracts... =========================== > Everything is up to date, there is nothing to compile. Starting migrations... ====================== > Network name: 'development' > Network id: 2018 > Block gas limit: 0x1fffffffffffff 0_initial_validation.js ======================= > Initial validations ... ------------------------------------- > Total cost: 0 ETH 1_initial_migration.js ====================== Deploying 'Migrations' ---------------------- > transaction hash: 0xa46ce830d50521e3267e2b60595c07d816c6fcaeaa313c3311ccdbe70bd2ec7b ⠧ Blocks: 0 Seconds: 4560 ------------------------------------------------------------------------------------------------------------------------- I've searched Google and seen comments about starting mining but that doesn't seem right . . . .

mwaser (Fri, 29 Jan 2021 17:15:29 GMT):
I'm trying to deploy the permissioning contracts per https://besu.hyperledger.org/en/stable/Tutorials/Permissioning/Getting-Started-Onchain-Permissioning/ I had one oddity in that it wanted my account to have a balance despite have a free-gas setup. Whatever. I gave it a balance. What has me stopped is that the truffle migration never completes -------------------------------------------------------------------------------- s$ yarn truffle migrate --reset yarn run v1.22.10 $ /mnt/c/Users/markw/besu-perms-full/permissioning-smart-contracts/node_modules/.bin/truffle migrate --reset Compiling your contracts... =========================== > Everything is up to date, there is nothing to compile. Starting migrations... ====================== > Network name: 'development' > Network id: 2018 > Block gas limit: 0x1fffffffffffff 0_initial_validation.js ======================= > Initial validations ... ------------------------------------- > Total cost: 0 ETH 1_initial_migration.js ====================== Deploying 'Migrations' ---------------------- > transaction hash: 0xa46ce830d50521e3267e2b60595c07d816c6fcaeaa313c3311ccdbe70bd2ec7b ⠧ Blocks: 0 Seconds: 560 ------------------------------------------------------------------------------------------------------------------------- I've searched Google and seen comments about starting mining but that doesn't seem right . . . .

mwaser (Fri, 29 Jan 2021 17:16:09 GMT):
Repeated from a new entry on the main board (hope you don't mind . . . .) I'm trying to deploy the permissioning contracts per https://besu.hyperledger.org/en/stable/Tutorials/Permissioning/Getting-Started-Onchain-Permissioning/ I had one oddity in that it wanted my account to have a balance despite have a free-gas setup. Whatever. I gave it a balance. What has me stopped is that the truffle migration never completes -------------------------------------------------------------------------------- s$ yarn truffle migrate --reset yarn run v1.22.10 $ /mnt/c/Users/markw/besu-perms-full/permissioning-smart-contracts/node_modules/.bin/truffle migrate --reset Compiling your contracts... =========================== Everything is up to date, there is nothing to compile. Starting migrations... ====================== Network name: 'development' Network id: 2018 Block gas limit: 0x1fffffffffffff 0_initial_validation.js ======================= > Initial validations ... ------------------------------------- > Total cost: 0 ETH 1_initial_migration.js ====================== Deploying 'Migrations' ---------------------- > transaction hash: 0xa46ce830d50521e3267e2b60595c07d816c6fcaeaa313c3311ccdbe70bd2ec7b ⠧ Blocks: 0 Seconds: 4560 ------------------------------------------------------------------------------------------------------------------------- I've searched Google and seen comments about starting mining but that doesn't seem right . . . . THANKS!

diegoll (Fri, 29 Jan 2021 17:59:31 GMT):
Hi @mwaser, you may need to remove the Migrations contract. Once you enable the permissioning, Truffle may be unable to complete the Migrations cycle trying to invoke `setCompleted` method. I think [here](https://github.com/trufflesuite/truffle/blob/master/packages/migrate/Migration.js#L97) you'll find the relevant part of the Truffle source code

mwaser (Fri, 29 Jan 2021 18:41:15 GMT):
Same thing happened with the Admin contract after I removed the Migrations contract.

mwaser (Fri, 29 Jan 2021 18:42:36 GMT):
Is my block gas limit possibly too high? I set it per the zero-price-gas instructions . . . .

mwaser (Fri, 29 Jan 2021 19:55:01 GMT):
I dropped my block gas limit. No effect . . . . :-( Starting migrations... ====================== > Network name: 'development' > Network id: 2018 > Block gas limit: 0xf7b760 0_initial_validation.js ======================= > Initial validations ... ------------------------------------- > Total cost: 0 ETH 1_initial_migration.js ====================== Deploying 'Migrations' ---------------------- > transaction hash: 0xf77073fa6a7c64c71a292351fcd06663b854ecc56d6f8e202901a4562c5af19f ⠏ Blocks: 0 Seconds: 692

mwaser (Fri, 29 Jan 2021 20:05:11 GMT):
Removing the zero gas price also had no effect. I'm at a loss here. I'm clearly connected to my node and the transaction hash indicates that it has been submitted. Are blocks not being produced because there is only one node? That would make sense except the instructions say that you're starting with one node. I'm at a total loss here. :-(

diegoll (Fri, 29 Jan 2021 20:16:27 GMT):
If you start the node with `BESU_LOGGING=TRACE`, you should see messages containing *Account permissioning - Smart Contract* that may tell you what's going on

diegoll (Fri, 29 Jan 2021 20:19:56 GMT):
btw, do you have `BESU_MINER_ENABLED=true` and a `BESU_MINER_COINBASE` defined?

mwaser (Fri, 29 Jan 2021 20:55:22 GMT):
Interesting . . . . I let it run a while longer and it stopped with the error message Deploying 'Migrations' ---------------------- > transaction hash: 0xf77073fa6a7c64c71a292351fcd06663b854ecc56d6f8e202901a4562c5af19f Error: Error: Error: *** Deployment Failed *** "Migrations" -- Transaction was not mined within750 seconds, please make sure your transaction was properly sent. Be aware that it might still be mined!.

mwaser (Fri, 29 Jan 2021 20:59:56 GMT):
I have tried it both with the --miner-enabled and the --miner-coinbase options and without. And both with and without --min-gas-price=0. I did just let it run a while longer and it stopped with the error message "Migrations" -- Transaction was not mined within750 seconds, please make sure your transaction was properly sent. Be aware that it might still be mined!.

mwaser (Fri, 29 Jan 2021 21:00:40 GMT):
I have tried it both with the --miner-enabled and the --miner-coinbase options and without. And both with and without --min-gas-price=0. Why isn't it being mined?

diegoll (Fri, 29 Jan 2021 21:18:18 GMT):
if you set the logging to `DEBUG` you should see the blocks being produced and the transaction count for each block

Koen84 (Fri, 29 Jan 2021 23:33:55 GMT):
Has joined the channel.

Koen84 (Fri, 29 Jan 2021 23:33:56 GMT):
I was looking to confirm the status of EIP-1898 implementation ? For version 20.10.4 it's mentioned in the changelog, but the the release notes.

Koen84 (Fri, 29 Jan 2021 23:33:56 GMT):
I was looking to confirm the status of EIP-1898 implementation ? For version 20.10.4 it's mentioned in the changelog, but not in the release notes.

shemnon (Sat, 30 Jan 2021 17:32:43 GMT):
It's in 21.1.0-RC1, not 20.10.4

shemnon (Sat, 30 Jan 2021 17:44:27 GMT):
21.1.0 will have a production release and announcement at the end of February, there will be another RC in two weeks. - https://wiki.hyperledger.org/display/BESU/Future+Release+Dates

shemnon (Sat, 30 Jan 2021 17:44:41 GMT):
Generally speaking we don't publicly announce RC releases.

shemnon (Sat, 30 Jan 2021 17:44:41 GMT):
Generally speaking we don't publicly announce RC releases, they just show up on the github releases page on teh appropriate day.

Koen84 (Sun, 31 Jan 2021 00:53:34 GMT):
If i wanted to sync an archive node from scratch, approx how much time would this take with besu and would it be best to start with 20.10.4 or 21.1.0-RC1 if my requirement is EIP-1898 support ?

adityajoshi12 (Sun, 31 Jan 2021 16:18:58 GMT):
Has joined the channel.

macfarla (Mon, 01 Feb 2021 00:11:04 GMT):
As @diegoll says, you should see blocks being produced even if you are only running one node. Can you see blocks being produced in your logs?

karthiksamaganam (Mon, 01 Feb 2021 14:44:57 GMT):
Has joined the channel.

shemnon (Mon, 01 Feb 2021 16:42:49 GMT):
Don't archive sync a mainnet node. It will take months and use 6+ Tib of storage (https://etherscan.io/chartsync/chainarchive). Testnets would be quicker, classic can be done full, and most private networks I expect could be full synced if the tx load is below mainnet.

shemnon (Mon, 01 Feb 2021 16:42:49 GMT):
Don't archive sync a mainnet node. It will take months and use 6+ TiB of storage (https://etherscan.io/chartsync/chainarchive). Testnets would be quicker, classic can be done full, and most private networks I expect could be full synced if the tx load is below mainnet.

Koen84 (Mon, 01 Feb 2021 20:15:14 GMT):
My use case is explicitly ETH archive mainnet though. Just want to try an alternative to Open Ethereum, though also with tracing support and EIP-1898. I had a big difference in sync time between OE3.0 (3-4 weeks) and OE2.5 (almost 2 months), that's why i'm asking what the experience is with besu is and which release would be best to start from ?

SuzanaMaranhao (Mon, 01 Feb 2021 20:17:27 GMT):
Hi, I am building a permissioned network that has an onchain permissioning check. I cannot understand why a new node has the option to participate in the permissiong or not. In other words, I cannot understand the flag permissions-nodes-contract-enabled. In each condition this flag should be false in this context?

SuzanaMaranhao (Mon, 01 Feb 2021 20:41:44 GMT):
I mean, the network is already working and the nodes are using the onchain permissiong. What happens when a new node wants to join this network with this flag (permissions-nodes-contract-enabled) off?

SuzanaMaranhao (Mon, 01 Feb 2021 20:42:59 GMT):
Actually, we are having some problems to include a new node and we received the suggestion to disable this flag on the new node. So, We are trying to understand how this works.

macfarla (Mon, 01 Feb 2021 23:12:33 GMT):
Say nodes A and B are already running with permissioning enabled, and node C starts up with permissioning disabled - node C can only connect to A/B if their permissioning rules permit node C, otherwise they will reject the connection.

macfarla (Mon, 01 Feb 2021 23:14:05 GMT):
Alternatively, node C starts with permissioning enabled - nodes A/B still need to add C to their rules, and node C will connect only to bootnodes until it is in sync (and can thus then get the latest state of the onchain permissioning rules).

macfarla (Mon, 01 Feb 2021 23:14:38 GMT):
More context for bootnodes and permissioning here https://besu.hyperledger.org/en/stable/Concepts/Permissioning/Onchain-Permissioning/#bootnodes

SuzanaMaranhao (Mon, 01 Feb 2021 23:59:19 GMT):
Hi @macfarla. I tried the link you mentioned but there is no much info. In my case, I have nodes A and B are already running with permissioning enabled. I want to include a bootnode C. C is permissioned (using onchain permissioning). For some reason, however, C cannot connect. I was informed to start C with its flag false to solve the problem. So, two questions. Does this recommendation make sense? What is the logic behind it? In this case, putting this flag to false helps in any way?

SuzanaMaranhao (Mon, 01 Feb 2021 23:59:28 GMT):
thank you for your help

timbeiko (Tue, 02 Feb 2021 00:33:13 GMT):
Our next quarterly release is scheduled for rough Feb 24th, that's what will be the most stable. If you want to try it ASAP, @Koen84, either 20.10.4 or 21.1.0-RC1 will have EIP-1898 support :+1:

shemnon (Tue, 02 Feb 2021 00:55:40 GMT):
APAC/AMER office hours in ~ 5 min - https://consensys.zoom.us/j/524697595

macfarla (Tue, 02 Feb 2021 02:37:35 GMT):
starting C with permissioning disabled won't really help in this case. I would 1. check that A and B list C as a bootnode and 2. check that they connect if you turn permissioning off on A and B. 3. you can check the logs to see which node is rejecting the connection (A/B or C?)

SuzanaMaranhao (Tue, 02 Feb 2021 13:43:26 GMT):
I will do that, thank you @marfarla

SuzanaMaranhao (Tue, 02 Feb 2021 14:10:20 GMT):
Hi, I am trying to create a set of metrics to monitor a permissioned Besu network. Among the metrics, I want to have an idea of how many transactions are arriving in each the writer node. I found the metric besu_transaction_pool_transactions_added_total. Is it the correct one to use? Will it give the total number in the mempool (all transactions that still not entered in the blockchain)?

mwaser (Tue, 02 Feb 2021 16:50:24 GMT):
Running with --logging=DEBUG it is endlessly trying to connect to peers with no blocks being produced. Another oddity is that even after seeing "JSON-RPC service started and listening on 127.0.0.1:8545", trying to send a miner_start (using the besu Postman export) results in an ECONNREFUSED 127.0.0.1:8545 I'm guessing that the miner_start should be unnecessary but I'm trying everything . . . . My command line is bin/besu --genesis-file=testconfig/genesis.json --node-private-key-file=testconfig/key --min-gas-price=0 --miner-enabled --miner-coinbase=0xC3D693fBE006154eF80C288DB527FaC4bd38ca09 --rpc-http-enabled --rpc-http-api=ETH,MINER --logging=DEBUG --data-path=chester My genesis.json is {

mwaser (Tue, 02 Feb 2021 16:51:12 GMT):
"config": { "chainId": 2018, "constantinoplefixblock": 0, "contractSizeLimit": 2147483647, "ibft2": { "blockperiodseconds": 2, "epochlength": 30000, "requesttimeoutseconds": 10 } }, "nonce": "0x0", "timestamp": "0x58ee40ba", "gasLimit": "0x1fffffffffffff", "difficulty": "0x1", "mixHash": "0x63746963616c2062797a616e74696e65206661756c7420746f6c6572616e6365", "extraData": "0xf8bda00000000000000000000000000000000000000000000000000000000000000000f89394c3d693fbe006154ef80c288db527fac4bd38ca0994cff313da019649782ab9b108c49f216de56209ee94d008f61c85252dda2217afe18e61dd96a5254f5294ba857693079c13981b1da9b46e4b4ec448e2d35e94786796f0906b38a72b8fdebe1ecc77263e6bde919475a10bd9b490d51f3a47ba4bb1cfdc136a8f9c3394bd293eb161ce4f5c809bc91d4f9751f59be118e8808400000000c0", "coinbase": "0x0000000000000000000000000000000000000000", "alloc": { "786796f0906b38a72b8fdebe1ecc77263e6bde91": { "balance": "0xad78ebc5ac6200000" }, "c3d693fbe006154ef80c288db527fac4bd38ca09": { "balance": "0x1b1ae4d6e2ef500000" }, "bd293eb161ce4f5c809bc91d4f9751f59be118e8": { "balance": "90000000000000000000000" }, "0x0000000000000000000000000000000000008888": {

mwaser (Tue, 02 Feb 2021 16:54:21 GMT):
"comment": "Account Ingress smart contract", "balance": "0", "code": , "storage": , "0x0000000000000000000000000000000000009999": { "comment": "Node Ingress smart contract", "balance": "0", "code": , "storage": { } } } }

mwaser (Tue, 02 Feb 2021 17:03:00 GMT):
I'm trying to start with a single node in order to use on-chain permissioning but I can't get it to mine. Dropping back to just trying to get it to mine with --logging=DEBUG is just endlessly trying to connect to peers with no blocks being produced. Another oddity is that even after seeing "JSON-RPC service started and listening on 127.0.0.1:8545", trying to send a miner_start (using the besu Postman export) results in an ECONNREFUSED 127.0.0.1:8545 I'm guessing that the miner_start should be unnecessary but I'm trying everything . . . . My command line is bin/besu --genesis-file=testconfig/genesis.json --node-private-key-file=testconfig/key --min-gas-price=0 --miner-enabled --miner-coinbase=0xC3D693fBE006154eF80C288DB527FaC4bd38ca09 --rpc-http-enabled --rpc-http-api=ETH,MINER --logging=DEBUG --data-path=chester

mwaser (Tue, 02 Feb 2021 17:03:55 GMT):
Note: I've also stuck this back in the main conversation . . . .

diegoll (Tue, 02 Feb 2021 17:35:51 GMT):
just to discard an issue in your `genesis.json`, have tried replacing the `--genesis-file=testconfig/genesis.json` with `--network=dev`

diegoll (Tue, 02 Feb 2021 17:35:51 GMT):
just to discard an issue in your `genesis.json`, have you tried replacing the `--genesis-file=testconfig/genesis.json` with `--network=dev`?

mwaser (Tue, 02 Feb 2021 17:47:05 GMT):
Fantastic catch. That solved it. I guess I'll go grab dev.json and start swapping lines one by one . . . . (I'll let you know what blocked mining). THANK YOU!

mwaser (Tue, 02 Feb 2021 17:48:33 GMT):
SOLVED By @diegoll by using --network=dev instead of my genesis file. Time to go grab dev.json and start swapping lines one by one

diegoll (Tue, 02 Feb 2021 18:31:53 GMT):
awesome! I'm glad it helped :)

mwaser (Tue, 02 Feb 2021 20:22:38 GMT):
So, I see the problem now . . . . I need ethash rather than ibft2 but . . . . can I change that later? I started trying permissioning with a set of four nodes modified from the quick-start but reverted to a single-node to debug. DO I need to go back to that? :-(

diegoll (Tue, 02 Feb 2021 20:27:41 GMT):
no, that's part of the genesis so you cannot change the consensus algorithm later AFAIK. If you go back into your four nodes setup you'll need to setup the initial set of validators to match the addresses for each of the participants

diegoll (Tue, 02 Feb 2021 20:29:51 GMT):
there is a tool for generating a genesis with 4 validators properly setup plus their private keys https://besu.hyperledger.org/en/stable/Tutorials/Private-Network/Create-IBFT-Network/#3-generate-node-keys-and-a-genesis-file

mwaser (Tue, 02 Feb 2021 20:32:18 GMT):
So . . . . with the four-node setup, they were all in a permssions_config.toml and that worked just fine (which is the exact equivalent to your link). Then, I tried switching to on-chain permissioning . . . .

mwaser (Tue, 02 Feb 2021 20:33:33 GMT):
I'm going to have to go back to be sure -- but I believe that the second I added the --permissions-nodes-contract-enabled --permissions-nodes-contract-address "0x0000000000000000000000000000000000009999" it all stopped working

diegoll (Tue, 02 Feb 2021 20:42:01 GMT):
ok, so you are looking for an IBFT2 network with on-chain permissioning. I would go step by step. - Generate the genesis with the tool - Modify the genesis and add the proper Ingress contract as stated here https://besu.hyperledger.org/en/stable/Tutorials/Permissioning/Getting-Started-Onchain-Permissioning/#add-the-ingress-contracts-to-the-genesis-file - Start the four nodes without permissioning enabled and check that they are generating blocks well - stop the nodes and start them with the flags and check if they are still generating blocks (they should b/c the ingress by default doesn't restrict any connection)

mwaser (Tue, 02 Feb 2021 20:43:05 GMT):
I've always had the contracts in the genesis because the quick-start has them

diegoll (Tue, 02 Feb 2021 20:43:29 GMT):
ok, great

diegoll (Tue, 02 Feb 2021 20:44:29 GMT):
so if you start the four nodes you can see them producing blocks but when you enable the on-chain permissioning on the four nodes then you don't see the blockchain moving?

mwaser (Tue, 02 Feb 2021 20:44:44 GMT):
correct.

mwaser (Tue, 02 Feb 2021 20:45:48 GMT):
The bootnode shows 7 peers (I made the quick-starts members peers as well) but each of the other nodes shows only one peer. When it is working, they all show 7 peers.

mwaser (Tue, 02 Feb 2021 20:46:22 GMT):
NOTE: I just restarted the working network with only the two argument different -- so that is what has me tripped up.

diegoll (Tue, 02 Feb 2021 20:48:46 GMT):
ok... this is interesting... looking at the source code for the NodeIngress it works different as the AccountIngress that I was used to use. The AccountIngress allows any transaction to go through when there is no configuration by default, but it seems that the NodeIngress rejects everyconnection by default https://github.com/ConsenSys/permissioning-smart-contracts/blob/master/contracts/NodeIngress.sol#L29

diegoll (Tue, 02 Feb 2021 20:50:13 GMT):
so I would say that before enabling the permissioning, you should deploy your own https://github.com/ConsenSys/permissioning-smart-contracts/blob/master/contracts/NodeRulesProxy.sol and set it in the 0x00....9999 contract

diegoll (Tue, 02 Feb 2021 20:50:54 GMT):
as a first attempt I would try just returning true for every connection attempt

diegoll (Tue, 02 Feb 2021 20:50:54 GMT):
as a first try I would try just returning true for every connection attempt

diegoll (Tue, 02 Feb 2021 20:50:54 GMT):
as a first step I would try just returning true for every connection attempt

diegoll (Tue, 02 Feb 2021 20:53:28 GMT):
once you deploy your own `NodesRulesProxy` you'll only need to invoke `setContractAddress` into the `0x00...9999` contract pointing to your own contract

diegoll (Tue, 02 Feb 2021 20:53:28 GMT):
once you deploy your own `NodesRulesProxy` you'll only need to invoke `setContractAddress` into the `0x00...9999` contract pointing to your own contract address

mwaser (Tue, 02 Feb 2021 20:53:39 GMT):
I was just looking at accounts ingress. It looks like it disallows everything by default as well -- except it is my understanding that the first (admin) account is set up by the migrate . . . .

diegoll (Tue, 02 Feb 2021 20:54:43 GMT):
if there is no proxy contract setup, the accounts ingress allows every transaction AFAICS https://github.com/ConsenSys/permissioning-smart-contracts/blob/master/contracts/AccountIngress.sol#L23

mwaser (Tue, 02 Feb 2021 20:57:07 GMT):
Wouldn't it just be easier to change the nodes contract to be like the accounts contract? I.e. change the false in the following to true if(getContractAddress(RULES_CONTRACT) == address(0)) { return false; }

mwaser (Tue, 02 Feb 2021 20:57:48 GMT):
Or would that block setting up new rules?

mwaser (Tue, 02 Feb 2021 20:58:35 GMT):
(I missed the false/true switch before when I was comparing the two)

diegoll (Tue, 02 Feb 2021 20:58:38 GMT):
well, yes... but then you'll need to properly setup the assembly code in the genesis on your own b/c it'll differ from the one provided by the tool. In this case, being just changing a boolean I think it's safe enough

diegoll (Tue, 02 Feb 2021 20:59:24 GMT):
on other cases, setting up the storage for the contract may not be so straightforward

mwaser (Tue, 02 Feb 2021 20:59:52 GMT):
Mmm. Good point. I forgot that the Genesis was *_special_*

diegoll (Tue, 02 Feb 2021 21:00:32 GMT):
haha you can give it a try, but maybe you'll be changing many pieces at the same time

diegoll (Tue, 02 Feb 2021 21:00:49 GMT):
gotta go, I'll check later how it went

mwaser (Tue, 02 Feb 2021 21:01:13 GMT):
THANK YOU!

shemnon (Tue, 02 Feb 2021 22:43:43 GMT):
Yea, there's no good metric at the moment. besu_transaction_pool_transactions_added_total and besu_transaction_pool_transactions_removed_total will always go up, added - removed is a rough estimate of the size, but because of besu_transaction_pool_transactions_duplicates_total that will never to to zero. In theory subtracting duplicates removed should get that.

shemnon (Tue, 02 Feb 2021 22:43:52 GMT):
Really we need to add a new metric that is a gauge metric.

mwaser (Tue, 02 Feb 2021 22:49:31 GMT):
So . . . . I'm trying to work my way through exactly how to do this. QUESTION 1. Am I correct in assuming that, contrary to the instructions, I do not have to add the two command line arguments until after I migrate/deploy the contracts? If I'm wrong, aren't I dead in the water? QUESTION 2. I don't see where the admin tool requires the command line arguments to be in place before it will function. Am I missing something or could it be as easy as migrating the contracts, running the admin tool and then restarting after adding the command line args? If the admin tool does require the command line arguments, it seems as if I have two options. Both involve altering enodePermitted in NodeRules.sol 1. Just include my initial nodes as always returning true before the exists call for everything else. I can even leave the code in place forever. 2. Always return true, wait until the network is all connected and then migrate again with the normal contract file (I assume that the nodes won't check again until they have to reconnect for some reason). What do you think? I'd love it if the answer to question 2 was DOH! It is that easy. I'm way past quitting time so I'll try it tomorrow if you think it'll work.

SuzanaMaranhao (Wed, 03 Feb 2021 01:21:13 GMT):
Thank you @shemnon. By the way, when I was looking for references on the web, I found a site that should be from you: https://gist.github.com/shemnon.

Koen84 (Wed, 03 Feb 2021 02:17:12 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=yKM6fK4zLHjeCbfZR) Do you have recommendation for amount of CPU cores and RAM (to run a mainnet archive node) ?

diegoll (Wed, 03 Feb 2021 02:35:35 GMT):
Do you mean [these](https://besu.hyperledger.org/en/stable/Tutorials/Permissioning/Getting-Started-Onchain-Permissioning/) instructions? I think those instructions aren't necessarily for the use case when you start a PoA network with 4 validators. I think what they propose there is to start with a single node, setup everything to be controlled from it and then make it grow (allow specific peers, vote for new validators, etc). In the case of starting with 4 validators I would say you'll need to go with what we discussed earlier 1. set the ingress at `0x...9999` in your genesis 1. deploy your own `NodeRulesProxy` (as said, just make one that always return true) 1. set it it in the _ingress_ 1. stop the whole network (without loosing the state for each node) 1. restart all of the participants with the options mentioned in the instructions. About your second question, I'm sorry but I'm not familiar with the admin tool at all, but I would imagine it's meant to be used with the [NodesRules.sol](https://github.com/ConsenSys/permissioning-smart-contracts/blob/master/contracts/NodeRules.sol) that Consensys provide. If you want to use this contract, that would be the second bullet of the previous list then, and you'll need to add another step after that to setup this contract instance (either manually hitting the smart contract or through the admin tool)

diegoll (Wed, 03 Feb 2021 02:35:35 GMT):
Do you mean [these](https://besu.hyperledger.org/en/stable/Tutorials/Permissioning/Getting-Started-Onchain-Permissioning/) instructions? I think those instructions aren't necessarily for the use case when you start a PoA network with 4 validators. I think what they propose there is to start with a single node, setup everything to be controlled from it and then make it grow (allow specific peers, vote for new validators, etc). In the case of starting with 4 validators I would say you'll need to go with what we discussed earlier 1. set the ingress at `0x...9999` in your genesis 2. deploy your own `NodeRulesProxy` (as said, just make one that always return true) 3. set it it in the _ingress_ 4. stop the whole network (without loosing the state for each node) 5. restart all of the participants with the options mentioned in the instructions. About your second question, I'm sorry but I'm not familiar with the admin tool at all, but I would imagine it's meant to be used with the [NodesRules.sol](https://github.com/ConsenSys/permissioning-smart-contracts/blob/master/contracts/NodeRules.sol) that Consensys provide. If you want to use this contract, that would be the second bullet of the previous list then, and you'll need to add another step after that to setup this contract instance (either manually hitting the smart contract or through the admin tool)

shemnon (Wed, 03 Feb 2021 03:56:11 GMT):
Yes, those are my public gists.

shemnon (Wed, 03 Feb 2021 03:56:35 GMT):
Here is a PR that will add this metric in 21.1.1 (released in the second week of march) - https://github.com/hyperledger/besu/pull/1869

adityajoshi12 (Wed, 03 Feb 2021 10:03:45 GMT):
I am facing some wierd issue while trying to get the extraData from for genesis.json file

adityajoshi12 (Wed, 03 Feb 2021 10:03:55 GMT):

Clipboard - February 3, 2021 3:33 PM

mayankmk14 (Wed, 03 Feb 2021 11:24:42 GMT):
Has joined the channel.

mayankmk14 (Wed, 03 Feb 2021 11:24:43 GMT):
Hi... I'm new to Besu and have recently started exploring it and have basic queries. 1. After deploying a permissioned network using OnChain settings can it be reverted back to being permissionless? 2. Also can an ongoing public network be introduced with onchain permissions? thanks in advance for any help.

arsulegai (Wed, 03 Feb 2021 11:34:37 GMT):
@shemnon Could you please check @mayankmk14 's questions? I do not have insights into Besu. Mayank is from India and he reached out to me asking these questions.

mayankmk14 (Wed, 03 Feb 2021 11:41:19 GMT):
@arsulegai thanks

Victorbesu (Wed, 03 Feb 2021 13:26:40 GMT):
Hi there hope you guys are doing great. I have been working with besu and have some questions https://github.com/ConsenSys/permissioning-smart-contracts#deploying-the-dapp Do I need this to work with permissioned besu? Can I just use my smart contracts as is? Right now what I have been able to do is connect to metamask and run txs on the besu network. I have been able to run truffle migrate to do some migrations to the network. Now what I cannot do Use remix to read from the block chain Use ethers.js to connect to smart contracts -> gives me error : UnhandledPromiseRejectionWarning: Error: contract not deployed (contractAddress="0xF9e0929a9D7D5AA6991C441B1FE23901d1193c4a", operation="getDeployed", version=4.0.47) [0] at Object.throwError (...node_modules\ethers\errors.js:76:17) Any tips on how to use my private key to whitelist me when querying this blockchain? I have also had problems with the eth lite explorer from the documentation. Issue here https://github.com/Alethio/ethereum-lite-explorer/issues/84 Any help would be greatly appreciated

Victorbesu (Wed, 03 Feb 2021 13:26:40 GMT):
Hi there hope you guys are doing great. I have been working with besu and have some questions https://github.com/ConsenSys/permissioning-smart-contracts#deploying-the-dapp Do I need this to work with permissioned besu? Can I just use my smart contracts as is? Right now what I have been able to do is connect to metamask and run txs on the besu network. I have been able to run truffle migrate to do some migrations to the network. Now what I cannot do Use remix to read from the block chain (with the code compiling in remix, I can send txs to methods fine) Use ethers.js to connect to smart contracts -> gives me error : UnhandledPromiseRejectionWarning: Error: contract not deployed (contractAddress="0xF9e0929a9D7D5AA6991C441B1FE23901d1193c4a", operation="getDeployed", version=4.0.47) [0] at Object.throwError (...node_modules\ethers\errors.js:76:17) Any tips on how to use my private key to whitelist me when querying this blockchain? I have also had problems with the eth lite explorer from the documentation. Issue here https://github.com/Alethio/ethereum-lite-explorer/issues/84 Any help would be greatly appreciated

Victorbesu (Wed, 03 Feb 2021 13:26:40 GMT):
Hi there hope you guys are doing great. I have been working with besu and have some questions https://github.com/ConsenSys/permissioning-smart-contracts#deploying-the-dapp Do I need this to work with permissioned besu? Can I just use my smart contracts as is? :besu: Right now what I have been able to do is connect to metamask and run txs on the besu network. I have been able to run truffle migrate to do some migrations to the network. Now what I cannot do :pensive: Use remix to read from the block chain (with the code compiling in remix, I can send txs to methods fine) :disappointed: Use ethers.js to connect to smart contracts -> gives me error : UnhandledPromiseRejectionWarning: Error: contract not deployed (contractAddress="0xF9e0929a9D7D5AA6991C441B1FE23901d1193c4a", operation="getDeployed", version=4.0.47) [0] at Object.throwError (...node_modules\ethers\errors.js:76:17) :disappointed: I have also had problems with the eth lite explorer from the documentation. Issue here https://github.com/Alethio/ethereum-lite-explorer/issues/84 Any tips on how to use my private key to whitelist me when querying this blockchain? Any help would be greatly appreciated

SuzanaMaranhao (Wed, 03 Feb 2021 16:28:48 GMT):
Cool! Thank you very much

mharrison (Wed, 03 Feb 2021 17:09:56 GMT):
Will there be any future additions for the whisper protocol? EY's nightfall project requires it. https://github.com/EYBlockchain/nightfall#using-other-networks

eum602 (Wed, 03 Feb 2021 18:39:27 GMT):
Hello everyone, please guys could you help me understand how private transaction logs are stored and how they relate to the public ones. I am confused why I have the option to enter a fromBlock parameter for a private log. Thanks in advance.

eum602 (Wed, 03 Feb 2021 18:39:27 GMT):
Hello everyone, please guys could you help me understand how private transaction logs are stored and how they relate to the public ones?. I am confused why I have the option to enter a fromBlock parameter for a private log. Thanks in advance.

SuzanaMaranhao (Wed, 03 Feb 2021 19:59:30 GMT):
Hi. I am starting with the account permissioning and I was surprised to note that the default implementation of permissioning smart contracts use the same set of admins to node permissioning and account permissioning. That is not the reality in our network. We want to segregate these roles. Are there a ready implementation of permissioning smart contract that segregate the admins of these two different functions?

diegoll (Wed, 03 Feb 2021 20:06:30 GMT):
Hello, I think if you deploy two instances of the [Admin.sol](https://github.com/ConsenSys/permissioning-smart-contracts/blob/master/contracts/Admin.sol) contract and set them into the corresponding ingress (accounts or nodes), you should have two different set of administrators. Would that be enough for your use case?

SuzanaMaranhao (Wed, 03 Feb 2021 20:32:57 GMT):
It would definitely help. I need to check if it would be just a matter of two deploys or if there is any other impact. The permissioning dapp will also be impacted.

SuzanaMaranhao (Wed, 03 Feb 2021 20:33:40 GMT):
I am wondering if it is a frequent issue and if there is a ready solution to that.

SuzanaMaranhao (Wed, 03 Feb 2021 21:40:16 GMT):
Also, I believe it is very common to have the admin role of the permissioning dapps linked to a multisig contract. Do you have this ready? What multisig contract do you recommend?

macfarla (Wed, 03 Feb 2021 21:48:56 GMT):
the short answer to both is yes :)

macfarla (Wed, 03 Feb 2021 21:50:40 GMT):
to achieve 1. you just need to restart nodes with the permissions-enabled option/s set to false

macfarla (Wed, 03 Feb 2021 21:56:34 GMT):
to achieve 2 (assuming you want to continue with an existing genesis and chain) is slightly more complicated if you don't have the onchain contracts already deployed - you will need to deploy them and set the permissions-enabled option/s as well as the contract-address values, and ensure that all the nodes/accounts you want to participate are added to the allowlists. Permissioning with a public network can be a bit counter-intuitive though so whether it will work well depends on what your use case is

macfarla (Wed, 03 Feb 2021 22:03:39 GMT):
We don't have a ready solution to this. You are right that the dapp currently doesn't support this. You could do the 2 deploys as @diegoll suggests and interact with the second one using remix

macfarla (Wed, 03 Feb 2021 22:05:21 GMT):
There is also the environment variable INITIAL_ADMIN_ACCOUNTS which is used by the migration scripts to set initial values in the contract - you could duplicate this - but this will only help with initial values - if you need to add/remove admins, this will mean interacting with the contract

macfarla (Wed, 03 Feb 2021 22:07:41 GMT):
Updating the dapp isn't on our immediate roadmap at this stage, unfortunately - but feel free to create an issue on the repo and we can see if there is appetite for it

macfarla (Wed, 03 Feb 2021 22:17:22 GMT):
you don't _need_ the dapp - you can interact with the smart contracts using your preferred method

macfarla (Wed, 03 Feb 2021 22:19:21 GMT):
Besu permissioning doesn't rely on private keys - if MetaMask can connect to your node, the alethio explorer should be able to as well.

macfarla (Wed, 03 Feb 2021 22:20:33 GMT):
the fromBlock parameter is used to define the range of blocks to search for private logs, just the same as for public logs

eum602 (Wed, 03 Feb 2021 22:24:20 GMT):
Please @macfarla could you let me know where are the private logs stored and how they are related to the blocks in the public chain? thanks

macfarla (Wed, 03 Feb 2021 22:58:04 GMT):
private logs are stored in the private state, they are events emitted by private contracts

macfarla (Thu, 04 Feb 2021 00:35:31 GMT):
It's not on our immediate roadmap

trent.mohay (Thu, 04 Feb 2021 02:17:59 GMT):
Hey all, Currently writing some tests which would benefit hugely from an easy-to-use test parameterization framework (a la JUnit-5) ... is there any appetite to move from JUnit4 --> JUnit5?

macfarla (Thu, 04 Feb 2021 04:56:21 GMT):
permission denied - the process is trying to create a file in /var/log but the directory does not exist or the user doesn't have permission to create a file in that dir. check directory permissions OR change your log4j config - that's what's trying to write to /var/log

shemnon (Thu, 04 Feb 2021 05:05:52 GMT):
#besu-contributors may be a better place to ask, this room seems to be focused on community support and I think Antoine and Ed pay more attention there.

mayankmk14 (Thu, 04 Feb 2021 07:53:38 GMT):
@macfarla thanks for your help :relaxed: . I have some more queries which would require your expertise. As far as my understanding Besu is just an Ethereum client with node permissioning enabled. 1. Is a running Besu ledger also compatable with Geth client or something similar? 2. Is Account Permissioning applicable to type of txn also:- a. Contract deployment b. transfer/contract interaction txn ? 3. Can geth client be used in conjuction with Besu? 4. As for permissioning - 'permissions-enabled option/s set to false' is for disabling Onchain permissioning or Ofchain? 5. I'm running Besu in a permissioned enviornment - nd later want to make it a public chain to expand the customer base, does it require to: a. self-destruct the permissioning contract if that functionality is available? b. Emptying the Allowed List of Nodes or Accounts? c. Any third way which you might suggest? I know its a very long and complex scenario question, your time and help will be really valuable in understanding the nuances of Besu Protocol. Thanks again :slight_smile:

EmilianoVernini (Thu, 04 Feb 2021 13:40:12 GMT):
Hi All. I'm still dealing with the permissioning dapp and smart contracts. I've modified the smart contract logic in order to allow any user to send a transaction, but only accounts with admin role (added to the allowlist) to deploy a smart contract. I also want to to add a blacklist to list accounts that could not use the blockchain. Now i'm trying to understand if i can update the smart contract on the same blockchain or i have to start a new one with a new genesis block (since the permissioning smart contract bytecode is included in the genesis file). Thanks! Emiliano

diegoll (Thu, 04 Feb 2021 13:42:58 GMT):
Hi Emiliano. You should be able to update the permissioning proxy calling the `setContractAddress` method of the ingress that you defined in the genesis

diegoll (Thu, 04 Feb 2021 13:42:58 GMT):
Hi Emiliano. It would depende if you used the default provided ingress contract or a custom one. In the default you should be able to update the permissioning proxy calling the `setContractAddress` method of the ingress that you defined in the genesis

diegoll (Thu, 04 Feb 2021 13:42:58 GMT):
Hi Emiliano. It would depend if you used the default provided ingress contract or a custom one. In the default you should be able to update the permissioning proxy calling the `setContractAddress` method of the ingress that you defined in the genesis

diegoll (Thu, 04 Feb 2021 13:45:59 GMT):
depending on which permissioning are you dealing with you gonna need to implement a [AccountRulesProxy.sol](https://github.com/ConsenSys/permissioning-smart-contracts/blob/master/contracts/NodeRulesProxy.sol) or [AccountRulesProxy.sol](https://github.com/ConsenSys/permissioning-smart-contracts/blob/master/contracts/AccountRulesProxy.sol)

diegoll (Thu, 04 Feb 2021 13:45:59 GMT):
depending on which permissioning are you dealing with you gonna need to implement [AccountRulesProxy.sol](https://github.com/ConsenSys/permissioning-smart-contracts/blob/master/contracts/NodeRulesProxy.sol) or [AccountRulesProxy.sol](https://github.com/ConsenSys/permissioning-smart-contracts/blob/master/contracts/AccountRulesProxy.sol)

diegoll (Thu, 04 Feb 2021 13:45:59 GMT):
depending on which permissioning are you dealing with you gonna need to implement [NodeRulesProxy.sol](https://github.com/ConsenSys/permissioning-smart-contracts/blob/master/contracts/NodeRulesProxy.sol) or [AccountRulesProxy.sol](https://github.com/ConsenSys/permissioning-smart-contracts/blob/master/contracts/AccountRulesProxy.sol)

diegoll (Thu, 04 Feb 2021 13:55:32 GMT):
if you are using a custom one and you don't want to restart the blockchain by changing the genesis, I think you could deploy new contracts respecting the mentioned interfaces, and restart all of your nodes by pointing into those address directly in the [--permissions-accounts-contract-address](https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#permissions-accounts-contract-address) and [--permissions-nodes-contract-address](https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#permissions-nodes-contract-address) options

diegoll (Thu, 04 Feb 2021 13:55:32 GMT):
if you are using a custom one and you don't want to restart the blockchain by changing the genesis, I think you could deploy new contracts respecting the mentioned interfaces, and restart all your nodes by pointing into those address directly in the [--permissions-accounts-contract-address](https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#permissions-accounts-contract-address) and [--permissions-nodes-contract-address](https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#permissions-nodes-contract-address) options

helderjnpinto (Thu, 04 Feb 2021 14:23:02 GMT):
@shemnon so if includes muirGlacier even if not present in genesis for X blockNumber. For working only with forkA and forkB i need to remove this muirGlacier hardfork from MainnetProtocolSpecs?

helderjnpinto (Thu, 04 Feb 2021 14:23:02 GMT):
@shemnon so if includes muirGlacier even if not present in genesis for X blockNumber. For working only with forkA and forkB i need to remove this muirGlacier hardfork from MainnetProtocolSpecs?

shemnon (Thu, 04 Feb 2021 14:24:27 GMT):
Let me look for the code snippet, but only the most "recent" registered fork applies. No matter from what they extend their definition.

shemnon (Thu, 04 Feb 2021 14:26:42 GMT):
org.hyperledger.besu.ethereum.mainnet.ProtocolScheduleBuilder#createProtocolSchedule registers a set of protocol specs in order. If a block has multiple at the same number the last one registered is used.

shemnon (Thu, 04 Feb 2021 14:27:41 GMT):
Each spec is 100% independent from prior specs. However you will notice that the pattern is when we define a spec we reference the prior spec. This is how we get the definition of "Muir Glacier is Istanbul plus Difficulty Defuse".

shemnon (Thu, 04 Feb 2021 14:28:50 GMT):
If we added a definition that skipped muir glacier but exetended from petersburg things would work just fine. We also don't need to list all fork blocks in a genesis.config.

shemnon (Thu, 04 Feb 2021 14:29:48 GMT):
So while we say skipping a fork block (like setting istanbulBlock to zero) implies that all the other forks that is only because the definition for istanbul includes all those changes.

shemnon (Thu, 04 Feb 2021 14:31:13 GMT):
This is how we support classic forks. Many classic fork blocks skip features mainnet has (like block reward changes) and there are classic changes not in mainnet (difficulty defuse and block reward schedule policy for example).

shemnon (Thu, 04 Feb 2021 14:31:52 GMT):
so you don't need to remove other hard forks from the code.

helderjnpinto (Thu, 04 Feb 2021 14:55:46 GMT):
ok, resuming i not want muirGlacier :sweat_smile: , i have a forkA(extended from istanbulDefinition that starts in blockNumber 0 in custom genesis) and forkB(extends forkA for a blockNumber 1000), in the code i need to extend muirGlacier from (forkA) instead of actual (istambulDefinition) OR just add my forksA and B put my definitions in the code and set in genesis only this two forks configs stay the all like it is ?

helderjnpinto (Thu, 04 Feb 2021 14:55:46 GMT):
@shemnon ok, resuming i not want muirGlacier :sweat_smile: , i have a forkA(extended from istanbulDefinition that starts in blockNumber 0 in custom genesis) and forkB(extends forkA for a blockNumber 1000), in the code i need to extend muirGlacier from (forkA) instead of actual (istambulDefinition) OR just add my forksA and B put my definitions in the code and set in genesis only this two forks configs stay the all like it is ?

helderjnpinto (Thu, 04 Feb 2021 14:56:18 GMT):
using only this two forks in genesis config it will skip muir glacier

shemnon (Thu, 04 Feb 2021 15:00:43 GMT):
Just use forkA and forkB in the genesis config. Have ForkB extend ForkA.

shemnon (Thu, 04 Feb 2021 15:01:08 GMT):
Unless you have a PoW network MuirGlacier won't have an impact.

helderjnpinto (Thu, 04 Feb 2021 15:02:06 GMT):
hm ok, my network is IBFT

helderjnpinto (Thu, 04 Feb 2021 15:03:56 GMT):
was asking me the same :smile: cool thank you about this explanation @shemnon

Helen_Garneau (Thu, 04 Feb 2021 15:11:23 GMT):
Has joined the channel.

SuzanaMaranhao (Thu, 04 Feb 2021 22:22:14 GMT):
@shemnon, do we have a metric to check if the besu nodes have their permissioning flag enable? I mean, if any node in the network forgot to enable this flag, we can have problems, so it would be nice to monitor this. What do you think?

eum602 (Thu, 04 Feb 2021 22:39:18 GMT):
Hello everyone, I've been testing eth_getLogs and priv_getLogs, I am surprised that even when I have --auto-log-bloom-caching-enabled some tests takes too long to resolve(It is with the besu version 20.10.2). The same happens when searching private logs (in this case I noticed that searching a range greater than 100K blocks can throw a timeout error, I assume it is because the search is slow).

eum602 (Thu, 04 Feb 2021 22:39:18 GMT):
Hello everyone, I've been testing eth_getLogs and priv_getLogs, I am surprised that even when I have --auto-log-bloom-caching-enabled some tests takes too long to resolve(It is with the besu version 20.10.2). The same happens when searching private logs (in this case I noticed that searching a range greater than 100K blocks can throw a timeout error, I assume it is because the search is too slow).

shemnon (Thu, 04 Feb 2021 22:45:18 GMT):
I would defer to Sally and Lucas on this. My question would be would the flag change value over the life of a chain or will it always have the same value?

mwaser (Thu, 04 Feb 2021 22:56:54 GMT):
SIGH. FINAL rat-simple resolution (isn't it always that way? :stuck_out_tongue_winking_eye: ) Deploy quickstart somewhere in the cloud with local node info added to permissions_config.toml Do NOT run with the --permissions-nodes-contract-enabled --permissions-nodes-contract-address options The four (or in my modified case seven) quickstart nodes mine nicely. Connect the local node to the blockchain. Deploy the contracts to the local node. Run the admin tool. NOW you can stop and restart all the nodes with the --permissions-nodes-contract-enabled --permissions-nodes-contract-address options It was my attempts to run with the command line arguments at the beginning that kept the quickstart from working and mining and I never should have expected a single BFT node to mine . . . Ah well. It's all good now.

macfarla (Thu, 04 Feb 2021 23:01:01 GMT):
individual nodes can turn their permissioning on and off, so it can change over time.

macfarla (Thu, 04 Feb 2021 23:03:47 GMT):
I don't know what your use case is - but even if you know that all the nodes have permissioning enabled, they could be pointing to different contracts so I think you're going to have to have some level of trust and/or control outside of this

macfarla (Thu, 04 Feb 2021 23:06:01 GMT):
1. yes Besu can talk to Geth and other nodes - we run Besu nodes on mainnet, goerli and other test nets

macfarla (Thu, 04 Feb 2021 23:07:07 GMT):
2. you would need to extend the existing smart contract implementation to add more granular permissions. If you search this channel you will find other users doing exactly this

macfarla (Thu, 04 Feb 2021 23:07:22 GMT):
3. see 1

macfarla (Thu, 04 Feb 2021 23:08:12 GMT):
4. Whichever permissioning method you are using - all are false by default so whichever ones you have set to true

macfarla (Thu, 04 Feb 2021 23:09:33 GMT):
5. if you turn permissioning off on that node (see 4) and restart, it will ignore the smart contract - you don't have to destroy the contract.

macfarla (Thu, 04 Feb 2021 23:12:13 GMT):
I should add - it can change over time _in theory_ but in practice it probably won't

macfarla (Thu, 04 Feb 2021 23:12:25 GMT):
but I guess that also depends on your use case

shemnon (Thu, 04 Feb 2021 23:17:34 GMT):
So we do have a whole set of metrics that count permits and denys for each permissioning scheme. If there are any metrics that have `besu_permissioning_` as a prefix then permissioning is enabled. But our devops guru said that metrics are not meant for echoing configurations.

SandeepChalla (Fri, 05 Feb 2021 06:18:22 GMT):
Has joined the channel.

marco.cassandro (Fri, 05 Feb 2021 06:45:21 GMT):
Has joined the channel.

marco.cassandro (Fri, 05 Feb 2021 06:45:21 GMT):
In version 20.10.4 I deployed the smart contracts taken on git https://github.com/ConsenSys/permissioning-smart-contracts, with no problem. Now I have enabled authenticated RPC and would like to know if it is possible to do the same thing? Thank you

EmilianoVernini (Fri, 05 Feb 2021 09:14:51 GMT):
Thanks @diegoll!

SuzanaMaranhao (Fri, 05 Feb 2021 10:54:49 GMT):
Thank you for your reply. The original idea was to check if a node is misbehaving by lefting its flag disable in a permissioned newtork. By not checking permissiong, a node would allow other nodes to connect and send transactions and it can be an issue. This rule could be included in an offchain legal agreement among the nodes. Since the flag is not enough, the metric would need to check that every node is using the same smart contract to check permissions. If any deviation is detected, the misbehaving node should be pushined.

SuzanaMaranhao (Fri, 05 Feb 2021 10:57:35 GMT):
It does not seems that the current metrics will allow me to do that @shemnon

SuzanaMaranhao (Fri, 05 Feb 2021 13:32:26 GMT):
Is there any situations in each a Besu node sign a transaction (and not a block)? I know a node does not sign for eth transactions, but it also does not sign to admin or ibft or any other transaction?

SuzanaMaranhao (Fri, 05 Feb 2021 13:32:26 GMT):
Is there any situation in each a Besu node signs a transaction (and not a block)? I know a node does not sign for eth transactions, but it also does not sign to admin or ibft or any other transaction?

diegoll (Fri, 05 Feb 2021 13:45:46 GMT):
Hi Suzana, the node itself signs RLPx messages as part of the wire protocol and also, in an IBFT network, it adds their signature to the proposed block in each round (and eventually, as you said, they can cast a vote for add/remove a member)

mayankmk14 (Fri, 05 Feb 2021 15:37:56 GMT):
@macfarla thanks :thumbsup:

SuzanaMaranhao (Fri, 05 Feb 2021 16:23:21 GMT):
We have a network with two institutions (each one with a writer, 2 validators and 1 boot). We were trying to include a third institution in the network (with a write, 2 validators and 1 boot). After permission the new nodes with onchain permissioning, we have the could successfully synchronize the writer and the validator nodes. However, the boot node did not synchronize nor could connect to any peer (we existing nodes have included the new boot node as an existing boot node in the config.toml). We could finally synchronize the boot when we disable the permissioning flag of this new boot node (obs.: we did not disable the flag of any other node, only from this new boot node), we could synchronize and connect. After that, we put the flag true again. My question is: why it is different only to the boot node?

SuzanaMaranhao (Fri, 05 Feb 2021 16:23:21 GMT):
We have a network with two institutions (each one with a writer, 2 validators and 1 boot). We were trying to include a third institution in the network (with a write, 2 validators and 1 boot). After permission the new nodes with onchain permissioning, we have the could successfully synchronize the writer and the validator nodes. However, the boot node did not synchronize nor could connect to any peer (we existing nodes have included the new boot node as an existing boot node in the config.toml). We could finally synchronize the boot when we disabled the permissioning flag of this new boot node (obs.: we did not disabled the flag of any other node, only from this new boot node), and later the boot node connected. After that, we put the flag true again. My question is: why it is different only to the boot node?

SuzanaMaranhao (Fri, 05 Feb 2021 22:23:47 GMT):
Thank you, Diego!

rami.fatayri (Sat, 06 Feb 2021 19:50:02 GMT):
Has joined the channel.

rami.fatayri (Sat, 06 Feb 2021 19:51:30 GMT):
Hello, we've been testing performance under a continuous 200 tps load on hyperledger besu using IBFT 2

rami.fatayri (Sat, 06 Feb 2021 19:51:30 GMT):
Hello, we've been testing performance under a continuous 200 tps load on hyperledger besu using IBFT 2.0, however we noticed that some transactions that had an invalid nonce were kept in the transaction pool and taking place there and slowing down the generation of blocks by the validator nodes. With a transaction pool of 4096 transactions it was full with these invalid nonce transactions, is this a bug or is there some configuration to ignore invalid nonce transactions from filling the pool.

atoulme (Sat, 06 Feb 2021 23:20:04 GMT):
Can you qualify what you mean by invalid nonce? Was it a nonce that was set to zero for example, or was less than the current account nonce?

rami.fatayri (Sun, 07 Feb 2021 15:56:16 GMT):
There were transactions both that had zero nonce (sent wrong) and some that had non zero nonce but less than the current account nonce.

macfarla (Sun, 07 Feb 2021 22:38:52 GMT):
There is nothing special about bootnodes, it is only that during discovery, nodes treat addresses in their _bootnodes_ list differently. But a bootnode doesn't know it's a bootnode for other nodes, if that makes sense. So - it shouldn't be different. I would ask 1. did the "bootnode" have other nodes for its bootnodes? Because with onchain permissioning, a new node has to sync with the chain in order to get the latest state of the permissioning contracts ie the allowlist. So if the new node has no bootnodes (or has discovery disabled) it can't connect to any nodes because its allowlist is effectively empty.

macfarla (Sun, 07 Feb 2021 22:40:18 GMT):
You can confirm this by looking at the logs to see which node is rejecting the connection.

rami.fatayri (Sun, 07 Feb 2021 22:46:38 GMT):
This behavior seems to be easily reproducible I started fresh besu nodes and sent again this load including some invalid nonce transactions and these transactions remained in the pool. Enabling debug logs shows the node reading them on the generation of every block and logging that the transactions have invalid nonce. So they are being processed on every block and remaining in the pool.

macfarla (Sun, 07 Feb 2021 23:29:18 GMT):
Agree metrics is not the answer for this kind of control

helderjnpinto (Mon, 08 Feb 2021 16:59:29 GMT):
HI, i'm updating my besu from 1.4 to tag version 20.10.4, and when a launch my IBFT network 3 nodes with oldversion and try to join 4 node with new client and this client without database start to sync, sometimes when importing blocks says "Decrypting an incoming handshake message failed give me an Invalid Mac" https://gist.github.com/helderjnpinto/3c7fd4a00b54ca51b3fcc3da029e6c16

helderjnpinto (Mon, 08 Feb 2021 17:00:14 GMT):
but the node with the latest version continues to importing

helderjnpinto (Mon, 08 Feb 2021 17:00:14 GMT):
but this new node with the latest version (20.10.4) continues to importing

helderjnpinto (Mon, 08 Feb 2021 17:02:29 GMT):
what this means ?

SuzanaMaranhao (Mon, 08 Feb 2021 17:28:43 GMT):
Thank you, @macfarla. Actually, you gave me some instructions in the past saying that it does not make sense. People from other Besu network said that they have seen this behaviour other times in the past. Bootnodes sometimes have problems to syncronize with the flag enable. Regarding your question. Yes, the "bootnode with problems to connect" has in its config.toml file other bootnodes. And other bootnodes have also include this new bootnode in theirs config.toml.

SuzanaMaranhao (Mon, 08 Feb 2021 17:28:43 GMT):
Thank you, @macfarla. Actually, you gave me some instructions in the past saying that it does not make sense. People from other Besu network said that they have seen this behaviour other times in the past. Bootnodes sometimes have problems to syncronize with the flag enable. Regarding your question. Yes, the "bootnode with problems to connect" has in its config.toml file other bootnodes. And other bootnodes have also include this new bootnode in their config.toml.

SuzanaMaranhao (Mon, 08 Feb 2021 17:38:09 GMT):
Do you recommend any way to solve this issue?

SuzanaMaranhao (Mon, 08 Feb 2021 17:57:02 GMT):
Is there any documentation about how close the clock of different nodes need to be? We generate blocks every 2sec and we are facing some issues with clock from nodes that are "on premise". How close the clocks need to be?

atoulme (Mon, 08 Feb 2021 19:24:29 GMT):
that sounds like a valid problem, thanks for providing context. Would you like to file an issue?

shemnon (Mon, 08 Feb 2021 20:50:24 GMT):
Clique or IBFT2?

SuzanaMaranhao (Mon, 08 Feb 2021 20:50:39 GMT):
IBT2

SuzanaMaranhao (Mon, 08 Feb 2021 20:50:43 GMT):
IBFT2

trent.mohay (Mon, 08 Feb 2021 20:53:45 GMT):
Hi @SuzanaMaranhao at the moment IBFT2 expects blocks to not have a timestamp more than 1 second later than current system time. But, to be honest, its probably a restriction we should/could rethink - its a useful check for PoW, but IBFT2 much less so ...

rami.fatayri (Mon, 08 Feb 2021 21:52:48 GMT):
Sure, since we need to find a solution to this problem as we can't have such a case appearing in production. What should we do?

macfarla (Mon, 08 Feb 2021 22:13:07 GMT):
It is possible. The dapp would need to send the JWT token in all requests. And the logged in user would need to have permission to the JSON-RPC APIs that the dapp uses. It would depend on your use case as to whether this is worth doing.

lucassaldanha (Mon, 08 Feb 2021 23:02:22 GMT):
FYI the option for generating the logs blooms only applies for public logs. We don't support bloom filters for private logs atm.

lucassaldanha (Mon, 08 Feb 2021 23:02:22 GMT):
FYI the option for generating the logs bloom caching only applies for public logs. We don't support bloom filters for private logs atm.

lucassaldanha (Mon, 08 Feb 2021 23:11:13 GMT):
It is hard to suggest a solution without more context. If you have control over all nodes in the network, you could prevent misconfigurations by using an automated deployment process. If you don't have control over the nodes in the network, you can't really prevent another node from misbehaving. As long as the majority of nodes in the network are playing fair, you should be fine and any transactions that aren't allowed won't make it into the canonical chain. And it isn't possible to prevent a node from relaying messages to an unauthorised node if they don't want to.

atoulme (Tue, 09 Feb 2021 00:42:43 GMT):
open an issue here: https://github.com/hyperledger/besu/issues the issue has a template to guide you along

eum602 (Tue, 09 Feb 2021 02:39:40 GMT):
Hello @lucassaldanha, yes I read that in the documentation. So the slow responses for private logs makes sense. On the other hand I am curious why public logs have slow responses (when it is supposed that logs bloom caching is enabled). In the past (1 year ago) I tested searching public logs with besu 1.4.1 (with this version the search was performed very fast) but with the version 20.10.2 I notice very slow responses.

trent.mohay (Tue, 09 Feb 2021 05:02:40 GMT):
Hey @helderjnpinto, I believe the short-answer - it means a peer has sent an invalid peering request - and thus you won't peer with said node. From memory, its to do with a peer sending an encrypted handshake msg, which contains its node-key - if the encrypting key and the node-key contained therein do not align, you get this error.

trent.mohay (Tue, 09 Feb 2021 05:02:40 GMT):
Hey @helderjnpinto, I believe the short-answer - it means a peer has sent an invalid peering request - and thus you won't peer with said node. From memory, its to do with a peer sending an encrypted handshake msg, which contains its node's address - if the encrypting key and the node-key contained therein do not align, you get this error.e

trent.mohay (Tue, 09 Feb 2021 05:02:40 GMT):
Hey @helderjnpinto, I believe the short-answer - it means a peer has sent an invalid peering request - and thus you won't peer with said node. This check has been in every version of besu in memory - and its more about the interop between besu and the remote node - and potentially caused by a configuration failure on the other end.

mayankmk14 (Tue, 09 Feb 2021 05:44:34 GMT):
Hi, As most people aren't aware of the #jobs channel, so I'm posting this here. We have an urgent opening for people with relevant experience in Hyperledger Fabric/ Hyperledger Besu/ Ethereum. Kindly dm or reach out at reenu.choudhary@prolitus.com. https://chat.hyperledger.org/channel/jobs?msg=oLtXMkkXEP5xkZkJ4

rami.fatayri (Tue, 09 Feb 2021 08:16:38 GMT):
Thank you, will do!

helderjnpinto (Tue, 09 Feb 2021 10:24:41 GMT):
@trent.mohay Hi thank you for the answer, if the node continues to importing blocks and giving sometimes this error, is a bad continue like this right Or if is just a P2P communication its not a problem ?

SuzanaMaranhao (Tue, 09 Feb 2021 13:08:24 GMT):
That is good to know the rule and the possibility of changing in the future. Thank you @trent.mohay.

SuzanaMaranhao (Tue, 09 Feb 2021 13:13:45 GMT):
Thank you @lucassaldanha. I agree with you about having an automated deploy process. We have it and it helps a lot. However, we definitely do not have control of what other nodes can do. Thank you for explaining that we cannot prevent a node from misbehave.

SuzanaMaranhao (Tue, 09 Feb 2021 13:23:46 GMT):
About this part: " As long as the majority of nodes in the network are playing fair, you should be fine and any transactions that aren't allowed won't make it into the canonical chain". IMHO -> I think it is important to implement security barriers in many layers. Since a misbehaving node can open to the door to many other nodes, unfortunately this permissioning layer, although keeping the data onchain, is still fragile.

SuzanaMaranhao (Tue, 09 Feb 2021 13:30:30 GMT):
Thank you for explaining, @macfarla and @diegoll

SuzanaMaranhao (Tue, 09 Feb 2021 19:41:05 GMT):
Is there any metric that deals with specific transactions in the standard way of doing Besu monitoring? For example, I would love to create an alert if a transaction (any transaction) is still not included in a block after x seconds. I bet the answer is no, but still trying :-)

lucassaldanha (Tue, 09 Feb 2021 20:56:06 GMT):
You do need mining enabled if you want transactions to be processed. And truffle migrations send transaction to the node. So you do need to have at least one mining node in your setup.

mdwright88 (Wed, 10 Feb 2021 01:14:12 GMT):
Has joined the channel.

mdwright88 (Wed, 10 Feb 2021 01:17:35 GMT):
@grace.hartley :wave:

shemnon (Wed, 10 Feb 2021 03:20:19 GMT):
No, that's not what metrics are for. The best practice would be for a node to observe the resulting blocks and if it does not see it's transaction committed within a certain window of time to re-submit the transaction.

shemnon (Wed, 10 Feb 2021 03:20:19 GMT):
No, that's not what metrics are for. The best practice would be for a client program (not the node itself) to observe the resulting blocks and if it does not see it's transaction committed within a certain window of time to re-submit the transaction.

besu-bot (Wed, 10 Feb 2021 04:03:04 GMT):
welcome @mdwright88

SuzanaMaranhao (Wed, 10 Feb 2021 14:35:54 GMT):
Agree. Thank you @shemnon

DVasin (Thu, 11 Feb 2021 13:54:15 GMT):
Has joined the channel.

tenghu 1 (Thu, 11 Feb 2021 15:53:23 GMT):
Has joined the channel.

tenghu 1 (Thu, 11 Feb 2021 15:54:08 GMT):
Hello, I am new to besu, and I have a simple question. `besu can interact with ethereum mainnet?`

tenghu 1 (Thu, 11 Feb 2021 15:54:29 GMT):
It is real ethereum mainnet or just besu network?

tenghu 1 (Thu, 11 Feb 2021 16:01:50 GMT):
@shemnon could you give me answer?

besu-bot (Thu, 11 Feb 2021 16:13:48 GMT):
Hi @tenghu 1 it can interact with real Ethereum mainnet, that is correct.

adityajoshi12 (Thu, 11 Feb 2021 18:03:42 GMT):

Clipboard - February 11, 2021 11:33 PM

adityajoshi12 (Thu, 11 Feb 2021 18:03:50 GMT):
I am trying to setup onchain permissioning but getting this error

mmaryo 1 (Thu, 11 Feb 2021 20:01:24 GMT):
Has joined the channel.

mmaryo 1 (Thu, 11 Feb 2021 20:01:34 GMT):
Hello, I would like to know more about Besu I would like to send transaction to nodes, like this one (it's random node) https://www.ethernodes.org/node/007393595c6622e58b3383f4876691d455dab198a59488524ff9de56e773800b0398eb7de04fc75cafd89ea078ff830dfd87e2f3c62d1841e95af7b168468ce5 Can I tell to Besu to connect to a list of nodes I provide ? So the usage I looking for is to use Besu like a proxy node

mmaryo 1 (Thu, 11 Feb 2021 20:04:53 GMT):
Or can I connect to node and send transaction by using Java depency to your code? (org.hyperledger.besu.internal or

mmaryo 1 (Thu, 11 Feb 2021 20:04:53 GMT):
Or can I connect to node and send transaction by using Java depency to your code? (org.hyperledger.besu.internal or .plugin-api)

mmaryo 1 (Thu, 11 Feb 2021 20:04:53 GMT):
Or can I connect to node and send transaction by using your Java depency ? (org.hyperledger.besu.internal or .plugin-api)

bgravenorst (Thu, 11 Feb 2021 21:23:22 GMT):
Hi @mmaryo 1, we have some documentation regarding sending transactions, see https://besu.hyperledger.org/en/latest/HowTo/Send-Transactions/Transactions/. 

Besu does not sign transactions, so you’ll need to use a client library, or use EthSigner to create and sign a transaction. EthSigner documentation: https://docs.ethsigner.consensys.net/en/stable/Reference/API-Methods/#eth_sendtransaction

lucassaldanha (Thu, 11 Feb 2021 22:03:42 GMT):
ping

macfarla (Thu, 11 Feb 2021 22:24:34 GMT):
The fix is to add --permissions-nodes-contract-version=2 to your besu command line

macfarla (Thu, 11 Feb 2021 22:25:16 GMT):
This is because in v 2.0.0 of permissioning smart contracts repo we changed the interface as per the changelog https://github.com/ConsenSys/permissioning-smart-contracts/releases/tag/v2.0.0

macfarla (Thu, 11 Feb 2021 22:29:04 GMT):
It is in the besu docs here https://besu.hyperledger.org/en/stable/HowTo/Limit-Access/Specify-Perm-Version/ but I will also raise a ticket to update the onchain permissioning tutorial in the besu docs

macfarla (Thu, 11 Feb 2021 22:39:16 GMT):
pong

spacecadet (Thu, 11 Feb 2021 23:26:00 GMT):
Has joined the channel.

spacecadet (Thu, 11 Feb 2021 23:26:01 GMT):
Sounds like you should just make your own network and sync some aggregate of that to ethereum via a transaction?

mmaryo 1 (Fri, 12 Feb 2021 08:55:28 GMT):
@bgravenorst thank you for transactions

mmaryo 1 (Fri, 12 Feb 2021 08:56:09 GMT):
@spacecadet yes I would like to choose nodes which besu will connect

mmaryo 1 (Fri, 12 Feb 2021 08:56:14 GMT):
Is it possible

mmaryo 1 (Fri, 12 Feb 2021 08:56:14 GMT):
Is it possible?

spacecadet (Fri, 12 Feb 2021 08:58:39 GMT):
It is :-)

mmaryo 1 (Fri, 12 Feb 2021 09:00:49 GMT):
Top! I see "specify bootnodes" in document

mmaryo 1 (Fri, 12 Feb 2021 09:02:11 GMT):
Because I don't know well Etherum protocol, do you think Besu can connect to any node if I give to him address like this? https://www.ethernodes.org/node/007393595c6622e58b3383f4876691d455dab198a59488524ff9de56e773800b0398eb7de04fc75cafd89ea078ff830dfd87e2f3c62d1841e95af7b168468ce5

marco.cassandro (Fri, 12 Feb 2021 09:12:05 GMT):
Ok for the dapp we have to rewrite the code to use the jwt, but we also have the problem of authorizing the deployment of the smart contract made through Truffle. How do we insert the JWT Token in the deployment with Truffle? Thank you

spacecadet (Fri, 12 Feb 2021 09:28:33 GMT):
If you want I can help you out over some VOIP application?

spacecadet (Fri, 12 Feb 2021 09:28:40 GMT):
Or I can try at least

spacecadet (Fri, 12 Feb 2021 09:28:56 GMT):
It's a bit too involved for me to explain via chat

spacecadet (Fri, 12 Feb 2021 09:29:17 GMT):
Partly due to the tech being pretty new to me as well

spacecadet (Fri, 12 Feb 2021 09:29:52 GMT):
But I have a understanding of the Besu source code at a high level

spacecadet (Fri, 12 Feb 2021 09:30:01 GMT):
Think we can figure the rest out

diegoll (Fri, 12 Feb 2021 14:21:08 GMT):
Hello team, quick question, is it planned to implement the [non-normative spec from the EEA](https://entethalliance.github.io/client-spec/spec.html#sec-account-permissioning) regarding account permissioning? they added two more parameters to the `transactionAllowed` method

geleeroyale (Fri, 12 Feb 2021 16:28:50 GMT):
Has joined the channel.

geleeroyale (Fri, 12 Feb 2021 16:28:50 GMT):
Hello besu

mmaryo 1 (Fri, 12 Feb 2021 17:18:29 GMT):
Hi @spacecadet where would you like chat or have a call?

NicolasMassart (Fri, 12 Feb 2021 19:13:31 GMT):

Postman

NicolasMassart (Fri, 12 Feb 2021 19:13:58 GMT):
https://www.postman.com/assets/logos/pm-orange-logo-horiz.svg Hi everyone, you now find a nice Besu JSON-RPC doc at https://api.besu.hyperledger.org/ Thanks @rjones for the help!

NicolasMassart (Fri, 12 Feb 2021 19:13:58 GMT):
Hi everyone, you now find a nice Besu JSON-RPC doc at https://api.besu.hyperledger.org/ Thanks @rjones for the help!

NicolasMassart (Fri, 12 Feb 2021 19:13:58 GMT):
Hi everyone, you can now find a nice Besu JSON-RPC doc at https://api.besu.hyperledger.org/ Thanks @rjones for the help!

helderjnpinto (Sat, 13 Feb 2021 15:24:32 GMT):
Hi i need some help about P2P, i have a IBFT 2.0 network with bootnode and genesis specified, i don't know how the client is connecting with others of my network (i recently updated my besu version of 1.4 for 20.10.4)

helderjnpinto (Sat, 13 Feb 2021 15:24:35 GMT):

Clipboard - February 13, 2021 3:24 PM

helderjnpinto (Sat, 13 Feb 2021 15:25:40 GMT):
the green box is my bootnode, the red ones is other mainnet of ethereum with chain id 1.

helderjnpinto (Sat, 13 Feb 2021 15:26:15 GMT):
i tested comment the code about EthNetworkConfig for other networks but still give-me other peers

helderjnpinto (Sat, 13 Feb 2021 15:31:29 GMT):
Exist any fallback to Mainnet ?

shemnon (Sat, 13 Feb 2021 23:04:25 GMT):
This is one of the emergent behaviors of the discovery protocol. At discovery the nodes do not know key information about other nodes, such as the chainID or clients. They only know ports and addresses, and sometime fork IDs. Some clients makes sure the fork IDs match before "knocking," others don't. My guess is the two red clients are forked off of 1.9.6 geth or earlier.

shemnon (Sat, 13 Feb 2021 23:06:03 GMT):
So the ports and ips get gossiped across the DHT and once an entry is added it's hard to get it out if it's live.

shemnon (Sat, 13 Feb 2021 23:07:35 GMT):
One way to make sure these peers get disconnected promptly is to add required blocks to the bootnodes. (https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#required-block) - This will cause connected peers to be polled for specific blocks and dropped if the check fails.

shemnon (Sat, 13 Feb 2021 23:09:19 GMT):
This was initially deployed to deal with the net split style forks often seen in Ropsten but can be used to ensure that different networks that cross-connect will disconnect promptly. Other blockchains call this "checkpointing"

helderjnpinto (Sun, 14 Feb 2021 11:22:12 GMT):
thanks @shemnon it worked. with the previous version that I had 1.4. this did not happen.

helderjnpinto (Sun, 14 Feb 2021 11:25:01 GMT):
when I made the query to get the peers only gave me what was supposed to be 5, I found it strange to be going to get others if I had a bootnode on a closed network!

IonutS (Sun, 14 Feb 2021 17:30:29 GMT):
Has joined the channel.

spacecadet (Sun, 14 Feb 2021 17:30:54 GMT):
@mmaryo 1 shoot me a mail at konstantinovitz@blackswan.engineer and we can figure it out :-)

IonutS (Sun, 14 Feb 2021 17:32:54 GMT):
Hi guys! I'm pretty interested in running my own Ethereum Archive Node using the Besu client, especially after the recent support for EIP 1898 (querying by hash), which I was interested to have support for. I'm interested to know how much space does the current Besu requires. The Open Ethereum client goes in the direction of 6.4-6.5T.

IonutS (Sun, 14 Feb 2021 17:33:41 GMT):
I have heard that besu requires only 3.6-4T currently, is this true?

bgravenorst (Sun, 14 Feb 2021 20:28:48 GMT):
Hi @IonutS, we currently have some documentation which you might find useful. It also includes some sizing suggestions. https://besu.hyperledger.org/en/latest/Concepts/Pruning/

IonutS (Sun, 14 Feb 2021 20:38:47 GMT):
Thank you @bgravenorst. I've read that but wasn't sure if is still up to date because 3TB is half of Open Ethereum and is amazing! Any reason why it actually requires half of the disk space, are some informations missing from the archive node or do you use compression? The difference is impressive. :-) Also I'm curious how far your implementation differs from GETH or Open Ethereum. Is there maybe a comparison table to see which feature is extra and what is maybe missing?

IonutS (Sun, 14 Feb 2021 20:38:47 GMT):
Thank you @bgravenorst. I've read that but wasn't sure if is still up to date because 3TB is half of Open Ethereum and is amazing! Any reason why it actually requires half of the disk space, are some informations missing from the archive node or do you use compression? The difference is impressive. :-) Also I'm curious how far your implementation differs from GETH or Open Ethereum. Is there maybe a comparison table to see which feature is extra and what is maybe missing? Thank you!

IonutS (Sun, 14 Feb 2021 22:40:58 GMT):
Also which version is recommended to be used to have full support of EIP 1898?

hmijail (Sun, 14 Feb 2021 23:28:53 GMT):
FWIW, last time I ran a Besu archive node, up to block ~10M, it took around 4TB

hmijail (Sun, 14 Feb 2021 23:29:41 GMT):
that was around last August. No idea how things have evolved since then

diegoll (Sun, 14 Feb 2021 23:41:51 GMT):
it doesn't seems to be supported yet https://github.com/hyperledger/besu/issues/1733

IonutS (Sun, 14 Feb 2021 23:44:51 GMT):
The initiative for that comes from me more or less :) But I've found it, it got implemented so v20.10.4 has support for it: https://github.com/hyperledger/besu/blob/21.1.0-RC1/CHANGELOG.md

IonutS (Sun, 14 Feb 2021 23:46:06 GMT):
Ah cool, so 4.5 TB maybe is more realistic. Thanks! I would have planned anyway with more than 6 TB, just to be prepared to run it longer.

diegoll (Sun, 14 Feb 2021 23:49:57 GMT):
oh, that's great. It seems they forgot to add the entry to the 20.10.4 [changelog](https://github.com/hyperledger/besu/blob/20.10.4/CHANGELOG.md) :)

IonutS (Sun, 14 Feb 2021 23:51:21 GMT):
You are totally right. That's why I couldn't find that info in the past as I searched for it also last week or so... And that's a serious feature. :)

trent.mohay (Mon, 15 Feb 2021 11:08:18 GMT):
Hey all, when working with Quorum/Geth and Besu, it appears that besu responds differently to a few Json RPCs, to that of Geth. Specifically: admin_peers.result.id on Besu == node's public key; on Geth == keccack256(publicKey) admin_nodeInfo.result.id on Besu == node's public key; on Geth == keccack256(publicKey) I'm assuming its in everyone's best interests if these line up - should Besu be updated to reflect Geth's behaviour?

NicolasMassart (Mon, 15 Feb 2021 11:22:15 GMT):
For more info, here are the links to Geth docs (aka the spec): - https://geth.ethereum.org/docs/rpc/ns-admin#admin_peers - https://geth.ethereum.org/docs/rpc/ns-admin#admin_nodeinfo But we can only deduce that from the example and the return data type is not clearly described. We can still ask them what they plan to do though.

RobbeV 1 (Mon, 15 Feb 2021 11:34:51 GMT):
Has joined the channel.

RobbeV 1 (Mon, 15 Feb 2021 11:34:51 GMT):
Hey everyone, I heard the Consensys founder say in a podcast that eventually Hyperledger Besu will replace GoQourun completely but it would use Tessera as its private transaction manager instead of Orion. Can u allready use this configuration at this point in time or are these two not compatible yet?

IonutS (Mon, 15 Feb 2021 12:05:52 GMT):
Are 12 physical cores(24vcpu) and 128 GB RAM good enough for Besu Archive node?

IonutS (Mon, 15 Feb 2021 12:05:52 GMT):
Are 12 physical cores(24vcpu) and 128 GB RAM good enough for Besu Archive node with trace api enabled?

shemnon (Mon, 15 Feb 2021 15:13:11 GMT):
Cores and memory are not the issue in creating the archive node, it's raw disk i/o that is the bottleneck. While creating the archive node 16-32 Gib should be more than sufficient (16GiB will fall into some cached induced memory pressure during import but if you reboot it every few weeks will be fine). 12 cores will be excessive during the import. May be useful once service RPCs.

shemnon (Mon, 15 Feb 2021 15:16:31 GMT):
The lack of clear definition is an issue. I have a script that uses admin_peers to extract enode URLs from the result, so a keccack in the ID would hurt. If we do align with Geth I think we should add an "enode" field.

shemnon (Mon, 15 Feb 2021 15:19:38 GMT):
4Tib at 10M blocks aligns with Geth and OE's size growth. This chart says 6 TiB us the current size - https://etherscan.io/chartsync/chainarchive

shemnon (Mon, 15 Feb 2021 15:19:38 GMT):
4Tib at 10M blocks aligns with Geth and OE's size growth. This chart says 6 TiB is the current size - https://etherscan.io/chartsync/chainarchive

shemnon (Mon, 15 Feb 2021 15:20:01 GMT):
That's ~ 2TiB a year growth rate.

IonutS (Mon, 15 Feb 2021 16:22:19 GMT):
Sure, disks are super important. For that I'll use already use some good NVMe. I run already OE 3.0.1 and a lot of RAM helped due to many issues of OE properly gestioning OOM issues. From what I understand besu seems to be more stable in this regard.

IonutS (Mon, 15 Feb 2021 16:22:19 GMT):
Sure, disks are super important. For that I'll use already some good NVMe. I run already OE 3.0.1 and a lot of RAM helped due to many issues of OE properly gestioning OOM issues. From what I understand besu seems to be more stable in this regard.

shemnon (Mon, 15 Feb 2021 16:41:47 GMT):
After over a month of uptime memory beyond 16GiB is useful.

helderjnpinto (Mon, 15 Feb 2021 19:15:45 GMT):
Hi @shemnon when i execute the node "besu v20.10.4" to my old network "besu v1.4", i getting this Snappy decompression failed https://gist.github.com/helderjnpinto/faa4b09efe350dabe049c1a01823c83d (Caused by: org.hyperledger.besu.ethereum.p2p.rlpx.framing.FramingException: Snappy decompression failed AND Caused by: java.io.IOException: FAILED_TO_UNCOMPRESS(5)), also the flag of required-block works but why version 20.10.4 gets this peers if my network is private IBFT 2.0 with only 5 nodes, maybe this Exceptions is about P2P messages of this ethereum mainnet clients ? with version of 1.4 this not happening

helderjnpinto (Mon, 15 Feb 2021 19:16:27 GMT):

Clipboard - February 15, 2021 7:16 PM

helderjnpinto (Mon, 15 Feb 2021 19:17:06 GMT):
also i get this SocketException https://gist.github.com/helderjnpinto/00e6ad61a1504919e98ba1b4084a8e1f

helderjnpinto (Mon, 15 Feb 2021 19:17:51 GMT):
In a closed IBFT 2.0 network with custom transaction processor this peers not make sense

shemnon (Mon, 15 Feb 2021 20:37:21 GMT):
This is a parity bug - https://github.com/openethereum/parity-ethereum/issues/6647 - Parity doesn't properly support snappy. When they advertise v5 then subsequent messages should be snappy compressed.

shemnon (Mon, 15 Feb 2021 20:38:18 GMT):
these are all in the same nio thread nioEventLoopGroup-3-5. Multiple connections are going on at the same time.

trent.mohay (Mon, 15 Feb 2021 21:07:50 GMT):
Quorum (and I guess Geth) has added the enode field to admin_peers (as well as modifying the id to be the k256 hash of pubkey).

shemnon (Mon, 15 Feb 2021 22:36:39 GMT):
We should open a PR to compare and contrast. The question is if this is a strong enough break of backward compatability to wait untul a quarterly release to change. The last one just barely closed the cargo bay doors...

shemnon (Tue, 16 Feb 2021 01:17:21 GMT):
https://github.com/hyperledger/besu/pull/1917 should fix this.

aminghasemi (Tue, 16 Feb 2021 07:19:12 GMT):
Has joined the channel.

aminghasemi (Tue, 16 Feb 2021 07:19:13 GMT):
hey guys, I have problem connecting to besu

aminghasemi (Tue, 16 Feb 2021 07:19:26 GMT):
2021-02-16 10:46:33.285+03:30 | main | INFO | DefaultSynchronizer | Starting synchronizer. 2021-02-16 10:46:33.288+03:30 | main | INFO | FullSyncDownloader | Starting full sync. 2021-02-16 10:46:33.290+03:30 | main | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2021-02-16 10:46:33.307+03:30 | main | INFO | JsonRpcHttpService | Starting JSON-RPC service on 127.0.0.1:8545 2021-02-16 10:46:33.376+03:30 | main | INFO | WebSocketService | Starting Websocket service on 127.0.0.1:8546

aminghasemi (Tue, 16 Feb 2021 07:19:45 GMT):
it all working and mining but when i try rpc it fails

aminghasemi (Tue, 16 Feb 2021 07:20:11 GMT):
no matter If I run it from binary, docker or brew I have tried all but I hot nothing

helderjnpinto (Tue, 16 Feb 2021 10:07:28 GMT):
:rocket:

helderjnpinto (Tue, 16 Feb 2021 12:24:21 GMT):
@shemnon if i put static nodes configuration https://besu.hyperledger.org/en/stable/HowTo/Find-and-Connect/Static-Nodes/#configure-static-nodes this problems of my private network IBFT2.0 connecting with Ethereum nodes will disappear?

shemnon (Tue, 16 Feb 2021 14:00:24 GMT):
If the IPs are out and in the main DHT other nodes may start connecting. If you could change the external IPs as well that should address it. Another option is to add firewall rules blocking it from outside the vpn.

shemnon (Tue, 16 Feb 2021 14:31:59 GMT):
Office Hours in ~ 30 minues - https://wiki.hyperledger.org/display/BESU/2021-02-16+Office+Hours -- https://consensys.zoom.us/j/199741148

kvbik (Tue, 16 Feb 2021 16:19:52 GMT):
Has joined the channel.

Skyler827 (Tue, 16 Feb 2021 18:16:53 GMT):
Has joined the channel.

Skyler827 (Tue, 16 Feb 2021 18:16:53 GMT):
Hi, I'm trying to install Besu on linux, but I don't understand the last step in the instructions. After extracting the release, there is no bin/besu executable in the archive, but the instructions say to run `bin/besu --help`.

Skyler827 (Tue, 16 Feb 2021 18:39:16 GMT):
nevermind I figured it out, I just needed to run `sh gradlew` to compile besu. (I think that should be in the instructions.)

macfarla (Tue, 16 Feb 2021 22:57:39 GMT):
Can you give some more information - what rpc command are you sending, and what error do you get?

bgravenorst (Wed, 17 Feb 2021 01:08:03 GMT):
Hi @Skyler827, did you download the the packaged binary from link on the releases page? The latest packaged binary is available on Artifactory. See https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/21.1.0-RC2/besu-21.1.0-RC2.zip The steps you described sounds like you possibly downloaded the source code.

bgravenorst (Wed, 17 Feb 2021 01:09:53 GMT):
You will find the build from source instructions on the Hyperledger wiki: https://wiki.hyperledger.org/display/BESU/Building+from+source

bgravenorst (Wed, 17 Feb 2021 01:10:06 GMT):
https://wiki.hyperledger.org/display/BESU/Building+from+source

sankara 5 (Wed, 17 Feb 2021 07:36:49 GMT):
Hi Team, I am using Besu for ETH fast node, from this can i get the balance of an account at a particular blockheight?

sankara 5 (Wed, 17 Feb 2021 07:36:49 GMT):
Hi Team, I am using Besu for ETH fast node, from this can i get the balance of an account at a particular blockheight? I tried with curl getting null as result

shemnon (Wed, 17 Feb 2021 14:33:15 GMT):
You can get a balance for any block height after the pivot. For historical values you will need an archive node.

shemnon (Wed, 17 Feb 2021 14:33:46 GMT):
Typically the pivot block is around the height of the block chain when the fast sync started.

adityajoshi12 (Wed, 17 Feb 2021 17:50:09 GMT):
i am getting error Wrong chainId, when i am trying to deploy the contract. ` const besuAccount = web3.eth.accounts.privateKeyToAccount(`0x${privateKey}`); const rawTx = { nonce: web3.utils.numberToHex(0), from: besuAccount.address, value: 0, to: null, data: bytecode, gasPrice: "0xFFFFFF", gasLimit: "0xFFFFFFF", }; const tx = new Tx(rawTx); tx.sign(Buffer.from(privateKey, "hex")); const serializedTx = tx.serialize(); return web3.eth.sendSignedTransaction( `0x${serializedTx.toString("hex")}` ) .then(transactionReceipt => { console.log("Public Transaction Receipt\n", transactionReceipt); logBuffer += `now you have to run:\n export PUBLIC_CONTRACT_ADDRESS=${ transactionReceipt.contractAddress }\n`; return transactionReceipt.contractAddress; });`

adityajoshi12 (Wed, 17 Feb 2021 17:50:09 GMT):
i am getting error Wrong chainId, when i am trying to deploy the contract. let chainId=2018 const Web3 = require("web3"); const EEAClient =require('web3-eea') const web3 = new EEAClient(new Web3("http://localhost:20000"), chainId); ` const besuAccount = web3.eth.accounts.privateKeyToAccount(`0x${privateKey}`); const rawTx = { nonce: web3.utils.numberToHex(0), from: besuAccount.address, value: 0, to: null, data: bytecode, gasPrice: "0xFFFFFF", gasLimit: "0xFFFFFFF", }; const tx = new Tx(rawTx); tx.sign(Buffer.from(privateKey, "hex")); const serializedTx = tx.serialize(); return web3.eth.sendSignedTransaction( `0x${serializedTx.toString("hex")}` ) .then(transactionReceipt => { console.log("Public Transaction Receipt\n", transactionReceipt); logBuffer += `now you have to run:\n export PUBLIC_CONTRACT_ADDRESS=${ transactionReceipt.contractAddress }\n`; return transactionReceipt.contractAddress; });`

adityajoshi12 (Wed, 17 Feb 2021 17:50:09 GMT):
i am getting error Wrong chainId, when i am trying to deploy the contract. ` const Tx=require('ethereumjs-tx').Transaction let chainId=2018 const Web3 = require("web3"); const EEAClient =require('web3-eea') const web3 = new EEAClient(new Web3("http://localhost:20000"), chainId); ` const besuAccount = web3.eth.accounts.privateKeyToAccount(`0x${privateKey}`); const rawTx = { nonce: web3.utils.numberToHex(0), from: besuAccount.address, value: 0, to: null, data: bytecode, gasPrice: "0xFFFFFF", gasLimit: "0xFFFFFFF", }; const tx = new Tx(rawTx); tx.sign(Buffer.from(privateKey, "hex")); const serializedTx = tx.serialize(); return web3.eth.sendSignedTransaction( `0x${serializedTx.toString("hex")}` ) .then(transactionReceipt => { console.log("Public Transaction Receipt\n", transactionReceipt); logBuffer += `now you have to run:\n export PUBLIC_CONTRACT_ADDRESS=${ transactionReceipt.contractAddress }\n`; return transactionReceipt.contractAddress; });`

adityajoshi12 (Wed, 17 Feb 2021 17:52:12 GMT):

Screenshot 2021-02-17 at 11.20.59 PM.png

diegoll (Wed, 17 Feb 2021 18:17:16 GMT):
What library are you using for signing the transaction? I don't see in your code where are you setting the `chainId` value in the `rawTx` object. There are some libraries, like web3js, that can resolve it by calling the `eth_chainId` JSON-RPC method and set the proper one

adityajoshi12 (Wed, 17 Feb 2021 18:18:36 GMT):
i am using ethereumjs-tx

adityajoshi12 (Wed, 17 Feb 2021 18:19:47 GMT):
I tried setting by setting it in rawTx like this ` const rawTx = { nonce: web3.utils.numberToHex(0), from: besuAccount.address, value: 0, to: null, data: bytecode, gasPrice: "0xFFFFFF", gasLimit: "0xFFFFFFF", chainId };` but still getting same issue

diegoll (Wed, 17 Feb 2021 19:15:55 GMT):
it seems to me that this is not an issue on Besu but in the transaction you are intending to send. I'm not used to use `ethereumjs-tx` but on your last modification it looks like what you would need to add is `chainId: 2018` instead of just a single reference to the `chainId` object. Somethig like ```javascript const rawTx = { nonce: web3.utils.numberToHex(0), from: besuAccount.address, value: 0, to: null, data: bytecode, gasPrice: "0xFFFFFF", gasLimit: "0xFFFFFFF", chainId: 2018 };```

adityajoshi12 (Wed, 17 Feb 2021 19:24:52 GMT):
I tried that also but no luck

rampatra (Wed, 17 Feb 2021 21:32:45 GMT):
Has joined the channel.

CodeReaper (Thu, 18 Feb 2021 06:54:44 GMT):
Has joined the channel.

CodeReaper (Thu, 18 Feb 2021 06:59:02 GMT):
Greetings community, I'm new to this protocol and was wondering Hyperledger Besu can also be run for public networks(perhaps switching the permissions off for most part of it except selected components). Does it go against the purpose of Hyperledger Besu and in inadvisable? If not can it be used then with current public ethereum networks as well?

tomhay (Thu, 18 Feb 2021 15:33:02 GMT):
@CodeReaper - Hyperledger Besu can be run for public Ethereum mainnet, as well as testnets. Here is some documentation on how to start Besu for the various networks (mainnet and testnets): https://besu.hyperledger.org/en/stable/HowTo/Get-Started/Starting-node/

shemnon (Thu, 18 Feb 2021 17:18:16 GMT):
Please be specific as to why the nonces are invalid. That will help in reproducing the bug.

IonutS (Thu, 18 Feb 2021 18:54:53 GMT):
Finally got the machine for Besu. Is there any config.toml for Ethereum Archive Node on Mainnet available? I would be particularly interested in the bootnodes. I guess genesis-file isn't actually needed as well as mining can be turned off.

mattheuspirovani (Thu, 18 Feb 2021 19:03:48 GMT):
Has joined the channel.

diegoll (Thu, 18 Feb 2021 19:07:17 GMT):
I would say that the most important config for an archive node is to set `BESU_SYNC_MODE=FULL`

IonutS (Thu, 18 Feb 2021 19:10:15 GMT):
Definitely, already on the list but I guess I also need some bootnodes for Mainent. Are those published somewhere?

IonutS (Thu, 18 Feb 2021 19:10:15 GMT):
Definitely, already on the list but I guess I also need some bootnodes for Mainnet. Are those published somewhere?

diegoll (Thu, 18 Feb 2021 19:13:24 GMT):
by default, when connecting to mainnet, Besu uses [this list](https://github.com/hyperledger/besu/blob/master/ethereum/p2p/src/main/java/org/hyperledger/besu/ethereum/p2p/config/DiscoveryConfiguration.java#L39) of bootnodes

IonutS (Thu, 18 Feb 2021 19:14:43 GMT):
Ah cool, so is not necessarily to add them manually. Coming from Open Ethereum where I had to define them.

IonutS (Thu, 18 Feb 2021 19:14:43 GMT):
Ah cool, so is not necessarily to add them manually. Coming from Open Ethereum where I had to define them. Thanks a lot!

IonutS (Thu, 18 Feb 2021 19:50:33 GMT):
For besu the trace api is simply enabled by using --rpc-ws-api=trace, etc. and --rpc-ws-api=trace, etc. ?

SuzanaMaranhao (Thu, 18 Feb 2021 19:51:05 GMT):
I noticed Besu supports push or pull monitoring methods using Prometheus. Is there any significant difference in performance between these two methods considering the Besu node? I mean, is pull more demanding to a Besu node? If we think in a monitoring process running every 1 minute, is it a problem if 20 processes query a Besu node (1 request each 3seconds)? Is it possible that it impacts on the Besu node performance considering a machine good enough? An alternative would be to export the metrics to an external monitoring tool, but it would demand more work to the infra team so we are analyzing possibilities.

IonutS (Thu, 18 Feb 2021 19:52:22 GMT):
Or is there another flag. At Open Ethereum was --tracing=on

shemnon (Thu, 18 Feb 2021 19:55:23 GMT):
Each request is the same amount of demanding. All the same metrics are queried. Typically a prometheus setup will have one centralized prometheus instance polling multiple nodes, not the other way around. Tools like grafana are put in front of the prometheus instance to render fancier graphs than the prometheus instance can render.

shemnon (Thu, 18 Feb 2021 19:56:16 GMT):
Another service to pair with prometheus is alertmanager, which can fire off slack alerts based on configurable alerts, such as the process being down, blocks not being produced, node behind chain head for too long.

shemnon (Thu, 18 Feb 2021 19:57:16 GMT):
besu also added support for reading nodes from the EF's DNS discovery list. Mainnet has a nice large list.

IonutS (Thu, 18 Feb 2021 19:58:29 GMT):
One quick question about enabling trace api on Besu: is that being activated by simply defining it using --rpc-ws-api=trace, etc. and --rpc-ws-api=trace, etc. ?

IonutS (Thu, 18 Feb 2021 20:00:17 GMT):
Also are there any flags related to performance, for example cache size db, blocks, queue ? Same for disks if one uses hdd or ssd/nvme or it doesn't matter?

shemnon (Thu, 18 Feb 2021 20:52:57 GMT):
If WS and RPC are already enabled those flags will enable it. If you specify any APIs only those APIs are enabled, so I would include trace,eth,admin,etc.

shemnon (Thu, 18 Feb 2021 20:52:57 GMT):
If WS and RPC are already enabled those flags will enable tracing. If you specify any APIs only those APIs are enabled, so I would include trace,eth,admin,etc.

shemnon (Thu, 18 Feb 2021 20:53:20 GMT):
We haven't plumbed through many rocksdb configuration options yet.

IonutS (Thu, 18 Feb 2021 21:16:13 GMT):
I see, cool, thanks. Yes, I already added web3,eth,net,trace. Those are the ones I'm mostly interested in. Syncing working fine, almost at block 1,5M

IonutS (Thu, 18 Feb 2021 21:16:13 GMT):
I see, cool, thanks. Yes, I already added web3,eth,net,trace. Those are the ones I'm mostly interested in. Syncing working fine, almost at block 1,5M :woo:

EmcLab (Fri, 19 Feb 2021 03:38:27 GMT):
Hello team, why do I need to assign large amount of gas when deploy to besu network? Otherwise it throws error.

CodeReaper (Fri, 19 Feb 2021 08:21:56 GMT):
Hi, I don't know the full extent of permissions in Besu. But is it possible to have a new public network without POA, but with an on-chain permission of who can deploy the smart-contracts on the network?

adovale (Fri, 19 Feb 2021 08:22:00 GMT):
Hello, We have noticed that if a private tx reverts (e.g, when a _require_ condition fails), then the private nonce is not incremented. On the other hand, the public nonce, that of the privacy marker tx, do increment. So my question is: ¿is there any way to change this behaviour? We have found it problematic when leading with concurrent private tx, because if tx n fails, then n+1, n+2, etc will also fail.

adovale (Fri, 19 Feb 2021 08:22:00 GMT):
Hello, We have noticed that if a private tx reverts (e.g, when a _require_ condition fails), then the private nonce is not incremented. On the other hand, the public nonce, that of the privacy marker tx, do increment. So my question is: ¿is there any way to change this behaviour, allowing the private nonce to increment? We have found it problematic when leading with concurrent private tx, because if tx n fails, then n+1, n+2, etc will also fail.

adovale (Fri, 19 Feb 2021 08:22:00 GMT):
Hello, We have noticed that if a private tx reverts (e.g, when a _require_ condition fails), then the private nonce is not incremented. On the other hand, the public nonce, that of the privacy marker tx, do increment. So my question is: ¿is there any way to change this behaviour, allowing the private nonce to increment? We have found this situation problematic when leading with concurrent private tx, because if tx n fails, then n+1, n+2, etc will also fail.

adovale (Fri, 19 Feb 2021 08:22:00 GMT):
Hi community, We have noticed that if a private tx reverts (e.g, when a _require_ condition fails), then the private nonce is not incremented. On the other hand, the public nonce, that of the privacy marker tx, do increment. So my question is: ¿is there any way to change this behaviour, allowing the private nonce to increment? We have found this situation problematic when leading with concurrent private tx, because if tx n fails, then n+1, n+2, etc will also fail. Thank you very much in advance community!

prashantgangwar (Fri, 19 Feb 2021 12:33:53 GMT):

error_on_startup.png

prashantgangwar (Fri, 19 Feb 2021 12:36:22 GMT):
Has joined the channel.

prashantgangwar (Fri, 19 Feb 2021 12:36:23 GMT):
on running the besu node, this error came up but the node kept syncing .

adityajoshi12 (Fri, 19 Feb 2021 12:40:53 GMT):
is there any way to remove all the pending transactions?

IonutS (Fri, 19 Feb 2021 12:45:12 GMT):
I got the same, then I restarted and went away...

IonutS (Fri, 19 Feb 2021 12:48:25 GMT):
So my experience so far syncing besu archive node - it went very fast until around 2,2M but now I have the feeling is very slow, syncing at 0,25-0,7Mg/s. An is only block 2,4M where Ethereum wasn't used too much so not that many tx. I use max peers 200. Anything it can be done to improve sync speed? Using nvme disks, 128 GB RAM, 32G min heap with 64G max heap memory and 12 core (24vcore) ryzen.

IonutS (Fri, 19 Feb 2021 12:48:25 GMT):
So my experience so far syncing besu archive node - it went very fast until around 2,2M but now I have the feeling is very slow, syncing at 0,25-0,7Mg/s. An is only block 2,4M where Ethereum wasn't used too much so not that many tx. I use max peers 200. Anything it can be done to improve sync speed? Using nvme disks, 128 GB RAM, 32G min heap with 64G max heap memory and 12 core (24vcore) amd ryzen.

IonutS (Fri, 19 Feb 2021 12:48:25 GMT):
So my experience so far syncing besu archive node - it went very fast until around 2,2M but now I have the feeling is very slow, syncing at 0,25-0,7Mg/s. And is only at block 2,4M where Ethereum wasn't used too much so not that many tx. I use max peers 200. Anything it can be done to improve sync speed? Using nvme disks, 128 GB RAM, 32G min heap with 64G max heap memory and 12 core (24vcore) amd ryzen.

diegoll (Fri, 19 Feb 2021 12:54:15 GMT):
I think it should be possible. Permissioning is independent of the proof. Bear in mind that the transaction permissioning intercepts incoming transactions where you can check the destination address to be 0x0, but that's not the only way to deploy smart contracts. You can deploy an smart contract from another smart contract and filtering that will be more difficult b/c you'll need to somehow instrument the bytecode of every deployed smart contract to detect that behavior

prashantgangwar (Fri, 19 Feb 2021 12:57:08 GMT):
in my case i see this error every time

shemnon (Fri, 19 Feb 2021 13:59:53 GMT):
This matches typical experiences. 2.2M block is the "shanghai" attacks and state bloat clearing. core count and memory isn't the issue it's the serial need to re-calculate the merkle trie. I/O speed is the blottleneck. Things will get markedly better in the late 2.xmm blocks when the state clearing ends, then get gradually worse until byzantium fork where we stop calculating state roots in TXes. Then better, then gradually worse due to general use. You will get some relief at hard forks when storage gas prices go up, but block gas limit always rises. It's months to catch up to chain head via archive sync.

SuzanaMaranhao (Fri, 19 Feb 2021 14:01:58 GMT):
Thank you for your reply, @shemnon

CodeReaper (Fri, 19 Feb 2021 14:07:06 GMT):
So let's say that all the smart-contracts that are deployed were allowed by this whitelisting. None of them allow to deploy other smart-contracts or at least they were all intentional. The first check on the parent contract should be sufficient by this, is that correct assumption? The check itself that if destination address to if 0x0 would require additional checks in bytecode perhaps? Otherwise other transactions which have destination address as 0x0 might also be blocked by this logic.

diegoll (Fri, 19 Feb 2021 14:19:40 GMT):
I think yes, your first assumption is correct, not an easy task though. Essentially you should inspect the bytecode and look for `CREATE` or `CREATE2` opcodes and even in that case I think you'll not be covering all cases, because, for example, you may even have a contract receiving arbitrary data in the constructor which would look like just data but it's intended to be executed, so in that case you should inspect the parameters to every invocation to `CALL` opcode, and so on... About your second statement I don't know if I'm getting it right, but AFAIK there isn't other usage for sending a transaction to the 0x0 address other than deploying an smart contract (it may also be a conventional address to burn gas/assets but I think that's something that can be advised to your network users)

diegoll (Fri, 19 Feb 2021 15:22:59 GMT):
Hello team, is there a bounty program for Besu? I found one in H1 from hyperledger but it seems to be only for Fabric

diegoll (Fri, 19 Feb 2021 15:23:26 GMT):
https://hackerone.com/hyperledger

rjones (Fri, 19 Feb 2021 15:29:13 GMT):
@diegoll the hacker one program is only for fabric. Please report security issues to security@hyperledger.org

CodeReaper (Fri, 19 Feb 2021 16:04:09 GMT):
If the 0x0 address is only used for contract deployment in to address then I think there shall be no need of checking opcodes. which I'll make a check on separately. However I'm looking at some contract deployment transactions on etherscan and I can see the to address is the contract address itself. For example- USDT's cotract deployment transaction:- https://etherscan.io/tx/0x2f1c5c2b44f771e942a8506148e256f94f1a464babc938ae0690c6e34cd79190

diegoll (Fri, 19 Feb 2021 16:13:25 GMT):
what you are seeing in the etherscan dashboard is an interpretation of a contract creation transaction, in this case it prints the contract address field from the transaction receipt resulted from executing the transaction

diegoll (Fri, 19 Feb 2021 16:13:48 GMT):
here you can see a raw view of the same transaction https://www.ethereumdecoder.com/?search=0x2f1c5c2b44f771e942a8506148e256f94f1a464babc938ae0690c6e34cd79190

diegoll (Fri, 19 Feb 2021 16:14:19 GMT):
you'll see there the `"to": null` field

IonutS (Fri, 19 Feb 2021 17:43:23 GMT):
Wow, if is really months than that is really long. I synced Open Ethereum Archive sync with trace api enabled in about 5 weeks to chain head.

shemnon (Fri, 19 Feb 2021 18:56:02 GMT):
Merkle Trie caching is a weak spot for us right now.

IonutS (Fri, 19 Feb 2021 19:05:55 GMT):
I see

stev 627 (Fri, 19 Feb 2021 20:48:48 GMT):
Has joined the channel.

IonutS (Fri, 19 Feb 2021 21:35:36 GMT):
It picked up steam once again, you were right, now at 3,86M blocks.

IonutS (Fri, 19 Feb 2021 21:35:36 GMT):
It picked up steam once again, you were right, now at 3,86M blocks. Hope will do it in 5 weeks, let's see :fingers_crossed:

mwaser (Sat, 20 Feb 2021 23:00:27 GMT):
So, I'm still not succeeding at setting up on-chain permissioning I have the web app working I add all of my validator nodes I restart the network after uncommenting "permissions-nodes-contract-enabled=true" in my config.toml And, all of a sudden, my nodes can't connect to each other.

mwaser (Sat, 20 Feb 2021 23:00:27 GMT):
So, I'm still not succeeding at setting up on-chain permissioning I have the web app working I add all of my validator nodes I restart the network after uncommenting "permissions-nodes-contract-enabled=true" in my config.toml And, all of a sudden, my nodes can't connect to each other. If I comment out that line again and restart, everything is fine again. I've gone back and forth several times uncommenting and commenting and the behavior is 100% consistent. What could I be doing wrong? The web app is showing the correct e-nodes. Grafana shows that the first/boot node often has a connection with one other node -- but that is pretty much it . . . . Should I grab a new version of the contracts?

CodeReaper (Sun, 21 Feb 2021 09:18:04 GMT):
Thanks @diegoll . It turns out that the 0x00 address isn't used by any other transaction by design. However, it is actually is used for 'signifying' burning of ether by sending it in t address, which I'm willing to block as a transaction itself if needed.

CodeReaper (Sun, 21 Feb 2021 09:23:32 GMT):
I was wondering:- 1. if the current onchain permission contracts will allow me to block all transactions coming to 0x00 address without any modifications. 2. The contract deployment transactions as it seems don't have the to field at all associated with them. 0x00 is picked just to satisfy the transaction schema. Would Besu still block 0x00 with destination address transactions in case of smart-contract deployment? The idea is to enable/disable the simple capability of smart-contract deployment in the network.

CodeReaper (Sun, 21 Feb 2021 10:16:47 GMT):
I am seeing that the permissive contracts are present to check if the sender account has ability to perform a transaction on the network. For my implementation where 'to' if set to 0x00 needs to be blocked to disallow any contract deployments. In my case then it then shall be the receiver that needs to be checked instead in a transaction. It will be good if someone can point me the lines in Besu where this the current from address checks are made.

CodeReaper (Sun, 21 Feb 2021 11:01:54 GMT):
I am seeing that the permissive contracts are present to check if the sender account has ability to perform a transaction on the network. For my implementation where 'to' if set to 0x00 needs to be blocked to disallow any contract deployments. In my case then it then shall be the receiver that needs to be checked instead in a transaction. It will be good if someone can point me the lines in Besu where this the current from address checks are made.

CodeReaper (Sun, 21 Feb 2021 11:04:58 GMT):
Hi, block syncing on one of the nodes while syncing to a public network failed due to an error:- ```max retries reached, cancel pivot block download```. Can anyone confirm that this is the expected behavior?

CodeReaper (Sun, 21 Feb 2021 11:05:04 GMT):

Clipboard - February 21, 2021 4:34 PM

mwaser (Sun, 21 Feb 2021 13:07:30 GMT):
So . . . going back to February 11th, I see that I need to add the following to my config file permissions-nodes-contract-version=2 Unfortunately, doing so prevents the containers from coming up. Commenting this line out again, fixes the problem. Anyone have a guess? @macfarla @diegoll the awesome

mwaser (Sun, 21 Feb 2021 13:07:30 GMT):
So . . . going back to February 11th, I see that I need to add the following to my config file permissions-nodes-contract-version=2 Unfortunately, doing so prevents the containers from coming up. Commenting this line out again, fixes the problem. Anyone have a guess? @macfarla @diegoll the awesome EDIT: adding that line to the config file for a stand-alone besu (i.e. no docker) causes no problems

mwaser (Sun, 21 Feb 2021 13:59:54 GMT):
Looking at the logs - on a startup WITHOUT the permissions-nodes-contract-version=2, the first four lines (at DEBUG level) are {"timestamp":"2021-02-21T13:47:39,490","container":"3c7ca855fffe","level":"INFO","thread":"main","class":"KeyPairUtil","message":"Loaded public key 0x4aa4d644343ab239d28f3b15cd9199e36ac5fd72b884ae5d9a0a2121c5fa51b224665eb0cd9eb8f5cbb1bebc642a834c0f74525768cb93e42cc74175643b006a from /opt/besu/key","throwable":""} {"timestamp":"2021-02-21T13:48:02,946","container":"3c7ca855fffe","level":"INFO","thread":"main","class":"AltBN128PairingPrecompiledContract","message":"Using native alt bn128","throwable":""} {"timestamp":"2021-02-21T13:48:11,075","container":"3c7ca855fffe","level":"INFO","thread":"main","class":"SECP256K1","message":"Using native secp256k1","throwable":""} {"timestamp":"2021-02-21T13:48:11,136","container":"3c7ca855fffe","level":"INFO","thread":"main","class":"Besu","message":"Starting Besu version: besu/v20.10.0/linux-x86_64/oracle_openjdk-java-11","throwable":""} With the line permissions-nodes-contract-version=2, it just repeats the first line indefinitely (presumably as the container keeps restarting) The "class":"AltBN128PairingPrecompiledContract","message":"Using native alt bn128","throwable":""} in the second line seems pretty suspicious since it does talk about Precompiled Contracts . . . .

mwaser (Sun, 21 Feb 2021 14:06:12 GMT):
OOF! The latest docker image is 20.10.0 from 3 months ago. https://github.com/ConsenSys/permissioning-smart-contracts/releases/tag/v2.0.0 says that it supports Besu 20.10.1+ permissioning features. My stand-alone version is 20.10.4. Could the team please put a newer version in the hyperledger/besu registry?

shemnon (Sun, 21 Feb 2021 19:49:33 GMT):
There are more current versions - https://hub.docker.com/r/hyperledger/besu/tags?page=1&ordering=last_updated

shemnon (Sun, 21 Feb 2021 19:49:53 GMT):
what command are you using to update your docker image?

prashantgangwar (Mon, 22 Feb 2021 03:38:39 GMT):

rpc connection is established

prashantgangwar (Mon, 22 Feb 2021 03:38:39 GMT):

rpc connection is established

cyberservicesindia (Mon, 22 Feb 2021 08:45:57 GMT):
Has joined the channel.

cyberservicesindia (Mon, 22 Feb 2021 08:45:58 GMT):
hi

cyberservicesindia (Mon, 22 Feb 2021 08:48:39 GMT):
i am working in private chain and want to explore verified blocks

cyberservicesindia (Mon, 22 Feb 2021 08:48:45 GMT):
please help

cyberservicesindia (Mon, 22 Feb 2021 08:49:29 GMT):
its already been crossed 20 million blocks

diegoll (Mon, 22 Feb 2021 10:24:15 GMT):
You could take a look to the [Permissioning Smart Contracts](https://github.com/ConsenSys/permissioning-smart-contracts/blob/master/contracts/AccountRulesProxy.sol) you can see there that you can make checks for `sender`, `target`, `value`, `gasPrice`, `gasLimit` and the whole raw `payload`

prashantgangwar (Mon, 22 Feb 2021 13:32:40 GMT):

showing status DOWN on readiness

prashantgangwar (Mon, 22 Feb 2021 13:32:40 GMT):

showing status DOWN on readiness

mwaser (Mon, 22 Feb 2021 13:52:58 GMT):
DOH! I missed where it was specified in .env FIXED! Thank you!

SuzanaMaranhao (Mon, 22 Feb 2021 14:12:49 GMT):
Our Besu nodes have key saved in plain text (saved data/key). Is it possible to encrypt these keys in a way that Besu can still use?

diegoll (Mon, 22 Feb 2021 14:17:29 GMT):
Hello Suzana, Besu allows you to setup a [security module](https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#security-module) for how you store the credentials, but the [Encrypted Storage plugin](https://doc.quorumplugins.consensys.net/en/latest/Concepts/Besu-Plugins/Encrypted-Storage/) is under a Consensys Quorum subscription

diegoll (Mon, 22 Feb 2021 14:17:29 GMT):
Hello Suzana, Besu allows you to setup a [security module](https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#security-module) for how you store the credentials

SuzanaMaranhao (Mon, 22 Feb 2021 14:23:10 GMT):
Good!! So if I use --node-private-key-file=, I can specify a UTC JSON V3 file, right?

diegoll (Mon, 22 Feb 2021 14:28:02 GMT):
no, the `--node-private-key-file` expects a plain text file, I think you would need to develop your own plugin for supporting [Web3 Secret Storage Definitions] (https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition)

diegoll (Mon, 22 Feb 2021 14:28:02 GMT):
no, the `--node-private-key-file` expects a plain text file, I think you would need to develop your own plugin for supporting [Web3 Secret Storage Definitions](https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition)

diegoll (Mon, 22 Feb 2021 14:30:35 GMT):
idk if there is something for that under a Consensys Quorum subscription. I can see there is at least [one](https://doc.quorumplugins.consensys.net/en/latest/Concepts/Besu-Plugins/Hardware-Security-Module/) for supporting HSM

SuzanaMaranhao (Mon, 22 Feb 2021 14:57:34 GMT):
Oh, not seem easy! Thank you for giving the directions.

shemnon (Mon, 22 Feb 2021 16:37:23 GMT):
did you enable the debug namespace? `--rpc-http-apis=debug`? probably will need `--rpc-http-apis=debug,eth,net,web3`

prashantgangwar (Mon, 22 Feb 2021 19:06:45 GMT):
rpc-http-api=["DEBUG","ETH","NET","WEB3"] I have included above line in the config.toml still /liveness is not giving the expected result.

shemnon (Mon, 22 Feb 2021 19:38:51 GMT):
can you set logging to debug? `logging="DEBUG"` - that should tell us if connections are being attempted.

shemnon (Mon, 22 Feb 2021 19:40:00 GMT):
Also, I'm making the assumption that this is directly on localhost, and not in some separate node docker container. If so you will need to set `rpc-http-host='0.0.0.0'` so it will listen to all interfaces

shemnon (Mon, 22 Feb 2021 19:40:00 GMT):
Also, I'm making the assumption that this is directly on localhost, and not in some separate node or in a docker container. If so you will need to set `rpc-http-host='0.0.0.0'` so it will listen to all interfaces

mwaser (Mon, 22 Feb 2021 21:37:15 GMT):
Nodes are only connecting to nodes in a static nodes file . . . . I can't seem to get any of the boot nodes commands to work nor are nodes discovering additional nodes. If it isn't in a static-nodes file, it isn't connected to. What am I missing?

lucassaldanha (Mon, 22 Feb 2021 21:42:26 GMT):
Hi mwaser, could you share the config file that you are using with your Besu node? Also, please let us know the version that you are using. Cheers!

mwaser (Mon, 22 Feb 2021 21:47:31 GMT):
Hmmm. Just found out that some nodes have 20.10.0 and some have 20.10.4. I needed to get that straightened out anyway -- but could that be causing the problem? Those are two awfully close versions . . . . # desktop config.toml host-whitelist=["*"] # rpc rpc-http-enabled=true rpc-http-host="0.0.0.0" rpc-http-port=8545 rpc-http-cors-origins=["*"] # ws rpc-ws-enabled=true rpc-ws-host="0.0.0.0" rpc-ws-port=8546 # graphql graphql-http-enabled=true graphql-http-host="0.0.0.0" graphql-http-port=8547 graphql-http-cors-origins=["*"] # metrics metrics-enabled=true metrics-host="0.0.0.0" metrics-port=9545 # permissions # permissions-nodes-config-file-enabled=true # permissions-nodes-config-file="/config/permissions_config.toml" # bootnodes bootnodes=["enode://45f5f2ee@20.44.99.125:30303"]

mwaser (Mon, 22 Feb 2021 21:47:56 GMT):
Hmmm. Just found out that some nodes have 20.10.0 and some have 20.10.4. I needed to get that straightened out anyway -- but could that be causing the problem? Those are two awfully close versions . . . . # desktop config.toml host-whitelist=["*"] # rpc rpc-http-enabled=true rpc-http-host="0.0.0.0" rpc-http-port=8545 rpc-http-cors-origins=["*"] # ws rpc-ws-enabled=true rpc-ws-host="0.0.0.0" rpc-ws-port=8546 # graphql graphql-http-enabled=true graphql-http-host="0.0.0.0" graphql-http-port=8547 graphql-http-cors-origins=["*"] # metrics metrics-enabled=true metrics-host="0.0.0.0" metrics-port=9545 # permissions # permissions-nodes-config-file-enabled=true # permissions-nodes-config-file="/config/permissions_config.toml" # bootnodes bootnodes=["enode://45f5f2ee@20.44.99.125:30303"]

mwaser (Mon, 22 Feb 2021 21:48:23 GMT):
We are sooooo close to being fully operational . . . .

lucassaldanha (Mon, 22 Feb 2021 21:50:16 GMT):
I don't think the version is an issue. And I can't see anything in your config that seems wrong. Have you checked your firewall config for the port used by discovery? By default it uses UDP 30303.

lucassaldanha (Mon, 22 Feb 2021 21:52:07 GMT):
And just to confirm, your node isn't connecting to the bootnode enode://45f5f2ee@20.44.99.125:30303, is it?

rampatra (Mon, 22 Feb 2021 22:52:23 GMT):
Hello, a newbie here. I was wondering what's the difference (or rather one's advantage over the other) between JSON-RPC API and web3j?

atoulme (Mon, 22 Feb 2021 23:50:00 GMT):
web3j is a Java library that calls out to the JSON-RPC API

rampatra (Tue, 23 Feb 2021 00:12:39 GMT):
great, thanks. So, I can directly call the JSON-RPC API in my java application but if I use web3j then it makes my work slightly easierI assume?

rampatra (Tue, 23 Feb 2021 00:12:39 GMT):
great, thanks. So, I can directly call the JSON-RPC API in my java application but if I use web3j then it makes my work slightly easier I assume?

atoulme (Tue, 23 Feb 2021 00:12:52 GMT):
yes

atoulme (Tue, 23 Feb 2021 00:13:36 GMT):
I built a simple JSON-RPC client for my own needs here: https://github.com/apache/incubator-tuweni/blob/master/jsonrpc/src/main/kotlin/org/apache/tuweni/jsonrpc/JSONRPCClient.kt

atoulme (Tue, 23 Feb 2021 00:13:45 GMT):
since I just wanted to get some very specific things.

atoulme (Tue, 23 Feb 2021 00:14:10 GMT):
web3j IIUC also has the ability to help you interact with smart contracts, I have never used that.

rampatra (Tue, 23 Feb 2021 00:14:58 GMT):
Neat.

rampatra (Tue, 23 Feb 2021 00:15:20 GMT):
Thanks for the help 🙏

Koen84 (Tue, 23 Feb 2021 03:12:48 GMT):
Is JDK 11 (LTS) or JDK 15 (latest) prefered ? How about Oracle OpenJDK over "regular" Oracle JDK ?

shemnon (Tue, 23 Feb 2021 04:52:19 GMT):
JDK 15 will have better performance. We target Java 11 as it is a LTS version. There's not much difference between OracleJDK and OpenJDK, the main differentiator being one offers paid support.

shemnon (Tue, 23 Feb 2021 04:52:38 GMT):
GraalVM has slightly better performance overall, but it is still at Java 11.

atoulme (Tue, 23 Feb 2021 07:03:37 GMT):
I think I pushed https://github.com/hyperledger/besu/pull/1882 to a better state and it can be reviewed again. Most recently, I added an acceptance test showing the chain can create valid blocks.

rampatra (Tue, 23 Feb 2021 09:42:24 GMT):
btw, does web3j use web sockets for some use cases? Or, is it configurable in web3j whether to use json-rpc or WS?

prashantgangwar (Tue, 23 Feb 2021 11:42:45 GMT):
facing same issue, but after multiple restart of docker image syncying working fine.

Koen84 (Tue, 23 Feb 2021 15:28:50 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=YaDcLmC2GPRheJ7FN) Cool. People using GraalVM on production high-load besu installs ?

shemnon (Tue, 23 Feb 2021 17:10:40 GMT):
Be sure to do your own validation, but that is a reason we also ship graalVM variant docker images.

mwaser (Wed, 24 Feb 2021 00:01:46 GMT):
Still fighting with discovery. Oddity #1 - I've got a core network of 7 validation nodes and 1 RPC node (like the quickstart but I changed the members to validators). Each time I restart, the bootnode has seven peers, four validators have five peers and two validators have one peer. Which validator have five peers and which have only one peer changes each time I stop and restart. What do I not understand here?

mwaser (Wed, 24 Feb 2021 00:24:23 GMT):
Oddity #2 - Remote nodes can connect via a static-nodes.json file but cannot connect using the bootnodes command either in the command line or in a config.toml file. This is despite the fact that the core network nodes are connecting via a bootnodes command in a config.toml file. The core network is on Azure and does have 30303 open for Any protocol. One remote node is on WSL2 and the windows firewall is open both inbound and outbound for Any. Another remote node is on a Raspberry Pi. They all see one peer and process it DEBUG | RecursivePeerRefreshState | Iterative peer search complete. 1 peers processed over 1 rounds. but then are forever waiting for peers DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected.

mwaser (Wed, 24 Feb 2021 00:25:44 GMT):
The node is NOT connecting to the bootnode UNLESS I put it in a static-nodes.json file.

mwaser (Wed, 24 Feb 2021 00:26:32 GMT):
I've upgraded so everything is 20.10.4 (which solved the last of my permissions problems).

mwaser (Wed, 24 Feb 2021 00:29:47 GMT):
periodically it tries the iterative peer search but finds no peers RecursivePeerRefreshState | Iterative peer search complete. 0 peers processed over 1 rounds.

lucassaldanha (Wed, 24 Feb 2021 00:33:32 GMT):
Got it. Could you try updating your config file with the property p2p-host matching your server external IP address? https://besu.hyperledger.org/en/latest/Reference/CLI/CLI-Syntax/#p2p-host

lucassaldanha (Wed, 24 Feb 2021 00:40:24 GMT):
This property will be used when advertising this peer address to other peers in the network. So you need to ensure it contains the ip for your server that is accessible by other peers.

mwaser (Wed, 24 Feb 2021 00:48:31 GMT):
When you say server -- do you mean the Azure core network or the remote node? I tried with the remote node to no effect. If I try it on the core network, won't that mess up the internal communications between the core nodes which is happening on the internal (Docker) network? If so, should I try exposing all their ports to the outside world and then use the external addresses (seems a bit problematical)?

lucassaldanha (Wed, 24 Feb 2021 00:53:24 GMT):
I'm not familiar with Azure deployment so I'm afraid I can't really help you on the actual setup. But I did notice that you don't have the p2p-host property on your config file. That means that the node will advertise its enode as enode://@127.0.0.1:30303. Any other node that tries to connect to this address (127.0.0.1) won't reach your node. So what I'm saying is that each node in the network must advertise an address that other peers can connect to. It doesn't have to be open in the internet if all other nodes are running in some isolated network (like a VPC).

madelinemurray (Wed, 24 Feb 2021 03:39:10 GMT):
hi @adovale - we're investigating this and have raised https://github.com/hyperledger/besu/issues/1942 to track.

prashantgangwar (Wed, 24 Feb 2021 09:49:39 GMT):

Clipboard - February 24, 2021 3:19 PM

prashantgangwar (Wed, 24 Feb 2021 09:49:41 GMT):
Now i can connect the besu node with remix, but i am having trouble when deploying as their is no account addresses in the remix account section.

prashantgangwar (Wed, 24 Feb 2021 09:51:05 GMT):
How can i create accounts for the deployment which have ethers in the addresses.

prashantgangwar (Wed, 24 Feb 2021 09:57:46 GMT):

Clipboard - February 24, 2021 3:27 PM

helderjnpinto (Wed, 24 Feb 2021 11:31:01 GMT):
Hello guys. I need some help again with a question about P2P, so i have the follow scenario. I have version 1.4 of besu, (2 public nodes + 4 validators in private network IBFT2.0). One of public nodes is a bootnode also! I have the next problems: 1) Other clients networks try to connect as peers (OpenEthereum, Parity, Geth, etc...). For this i put the flag of `--required-block=` and only for validator in private network i cut access to external network, only comunicate with relayed transactions from public nodes. I don't know if static nodes resolve this problems and disable discovery ? > https://besu.hyperledger.org/en/stable/HowTo/Find-and-Connect/Static-Nodes/ 2) Next and more critical problem is, when i stop one validator for update something for example, all network stops!!! When i put this validator up again with --bootnodes flag of public node nothing happens i wait more than 10 minutes and nothing! So what i did, i get enode of validator-0 and via ADMIN api added to others validator this enode... and all network start to process blocks again... What is happening here? bootnode struggling with peers like OpenEthereum, Geth....? Becase in the first year that we lunch the network this not happen.

helderjnpinto (Wed, 24 Feb 2021 11:31:01 GMT):
Hello guys. I need some help again with a question about P2P, so i have the follow scenario. I have version 1.4 of besu, (2 public nodes + 4 validators in private network IBFT2.0). One of public nodes is a bootnode also! I have the next problems: 1) Other clients networks try to connect as peers (OpenEthereum, Parity, Geth, etc...). For this i put the flag of `--required-block=` and only for validator in private network i cut access to external network, only comunicate with relayed transactions from public nodes. I don't know if static nodes resolve this problems and disable discovery ? > https://besu.hyperledger.org/en/stable/HowTo/Find-and-Connect/Static-Nodes/ 2) Next and more critical problem is, when i stop one validator for update something for example, all network stops!!! When i put this validator up again with --bootnodes flag of public node nothing happens i wait more than 10 minutes and nothing! So what i did, i get enode of validator-0 and via ADMIN api added to others validators this enode... and all network start to process blocks again... What is happening here? bootnode struggling with peers like OpenEthereum, Geth....? Becase in the first year that we lunch the network this not happen.

helderjnpinto (Wed, 24 Feb 2021 11:31:01 GMT):
Hello guys. I need some help again with a question about P2P, so i have the follow scenario. I have version 1.4 of besu, (2 public nodes + 4 validators in private network IBFT2.0). One of public nodes is a bootnode also! I have the next problems: 1) Other clients networks try to connect as peers (OpenEthereum, Parity, Geth, etc...). For this i put the flag of `--required-block=` and only for validator in private network i cut access to external network, only comunicate with relayed transactions from public nodes. I don't know if static nodes resolve this problems and disable discovery ? > https://besu.hyperledger.org/en/stable/HowTo/Find-and-Connect/Static-Nodes/ 2) Next and more critical problem is, when i stop one validator for update something for example, all network stops!!! When i put this validator up again with --bootnodes flag of public node nothing happens i wait more than 10 minutes and nothing! So what i did, i get enode of validator-0 and via ADMIN api added to others validators this enode... and all network start to process blocks again... What is happening here? bootnode struggling with peers like OpenEthereum, Geth....? Becase in the first year that we launch the network this not happen.

helderjnpinto (Wed, 24 Feb 2021 11:32:17 GMT):
When i query https://besu.hyperledger.org/en/stable/Reference/API-Methods/#debug_metrics, i get this about p2p ```"peers": { "pending_peer_requests_current": 0.0, "disconnected_total": { "remote": { "ALREADY_CONNECTED": 2.0 }, "local": { "ALREADY_CONNECTED": 3.0 } }, "connected_total": 10.0 },````

helderjnpinto (Wed, 24 Feb 2021 11:32:35 GMT):
```"discovery_interaction_count": { "PONG": 37.0, "NEIGHBORS": 33.0 }, "discovery_interaction_retry_count": { "PONG": 167.0, "NEIGHBORS": 66.0 } ```

helderjnpinto (Wed, 24 Feb 2021 11:32:51 GMT):
``` "discovery_messages_inbound": { "PING": 2.0, "FIND_NEIGHBORS": 15.0, "PONG": 3.0, "NEIGHBORS": 19.0 }, "discovery_messages_outbound": { "PING": 204.0, "FIND_NEIGHBORS": 99.0, "PONG": 2.0, "NEIGHBORS": 15.0 } ```

helderjnpinto (Wed, 24 Feb 2021 11:33:07 GMT):
I notice that i have "FIND_NEIGHBORS": 99.0

helderjnpinto (Wed, 24 Feb 2021 11:33:22 GMT):
my network only have 10 peers

helderjnpinto (Wed, 24 Feb 2021 11:34:10 GMT):
Maybe @shemnon can help with this ???

mwaser (Wed, 24 Feb 2021 12:41:04 GMT):
Hmmm. I think you're on to something. The Azure deployment is just that there are multiple besu instances, each in it's own Docker container. Docker-compose then sets up a private network between them. What I didn't notice before that their command line has a --p2p-host=$$(hostname -i) option which advertises that private network. I'll try changing that to the external ip address as I mentioned above. I'm not savvy enough on ip routing to know whether that is tremendously inefficient or not but I'm guessing/hoping not. I'll report back after I try. Do you have any idea why p2p-host doesn't default to (hostname -i) ?

mwaser (Wed, 24 Feb 2021 12:44:55 GMT):
@helderjnpinto 2) Static-nodes resolves p2p discovery problems1) If you have only 4 validators and 1 is stopped, you've fallen below the number needed to continue producing blocks (assuming that your public nodes are not validatprs)

mwaser (Wed, 24 Feb 2021 12:44:55 GMT):
@helderjnpinto !) Static-nodes DO skips p2p discovery problems when connecting to the nodes listed (and thus avoids any discovery problems) but does not shut off discovery for other nodes. I'm guessing that you are missing the p2p-host option (like I was ;-) ) which unfortunately defaults to the useless 127.0.0.1:30303) 2) If you have only 4 validators and 1 is stopped, you've fallen below the number needed to continue producing blocks (assuming that your public nodes are not validators)

mwaser (Wed, 24 Feb 2021 12:44:55 GMT):
@helderjnpinto !) Static-nodes DO skip p2p discovery process when connecting to the nodes listed (and thus avoids any discovery problems) but does not shut off discovery for other nodes. I'm guessing that you are missing the p2p-host option (like I was ;-) ) which unfortunately defaults to the useless 127.0.0.1:30303) 2) If you have only 4 validators and 1 is stopped, you've fallen below the number needed to continue producing blocks (assuming that your public nodes are not validators)

helderjnpinto (Wed, 24 Feb 2021 13:13:04 GMT):
@mwaser (2) yes but when i start up this node again, the network not run until i add peers via ADMIN api again... there is any timeout for p2p discovery

helderjnpinto (Wed, 24 Feb 2021 13:13:04 GMT):
@mwaser (2) yes but when i start up this node again, the network not run until i add peers via ADMIN api again... there is any timeout for p2p discovery?

helderjnpinto (Wed, 24 Feb 2021 13:19:57 GMT):
(1) so for p2p-host is to listen on all interfaces with 0.0.0.0 and only local 127.0.0.1, i not understand what this can help in stating p2p network

helderjnpinto (Wed, 24 Feb 2021 13:19:57 GMT):
(1) so for p2p-host is to listen on all interfaces with 0.0.0.0 and only local 127.0.0.1, i not understand what this can help in p2p discovery

helderjnpinto (Wed, 24 Feb 2021 13:19:57 GMT):
(1) so for p2p-host is to listen on all interfaces with 0.0.0.0 and only local 127.0.0.1, i not understand what this can help in p2p discovery, if they after ADMIN api add peer connects it's not a problem of network right?

helderjnpinto (Wed, 24 Feb 2021 13:20:57 GMT):
ok maybe i will put static-nodes list...

helderjnpinto (Wed, 24 Feb 2021 13:20:57 GMT):
ok maybe i will put static-nodes list... and disable p2p discovery like doc says https://besu.hyperledger.org/en/stable/HowTo/Find-and-Connect/Static-Nodes/#configure-static-nodes

helderjnpinto (Wed, 24 Feb 2021 13:24:24 GMT):
thanks....

NicolasMassart (Wed, 24 Feb 2021 13:31:00 GMT):
Hi, Besu 1.4 is exactly 1 yo in 3 days... we fixed a lot of issues since. Could you try to see if that also happens with latest version please?

NicolasMassart (Wed, 24 Feb 2021 13:32:01 GMT):
Latest stable release is currently 20.10.4

helderjnpinto (Wed, 24 Feb 2021 14:09:40 GMT):
yes i notice that because i recently updated the client to 20.10.4 version... and add it as 5 validator with the others in previous version for testing upgrade of client if all its good.

rampatra (Wed, 24 Feb 2021 14:10:22 GMT):
Again a greenhorn question, is it advisable to have our application as a separate node and interact with the besu node via jsonrpc/ws or is there a way I can embed my application and besu node into one? Is the latter even worth it?

helderjnpinto (Wed, 24 Feb 2021 14:13:22 GMT):
so i have 4 validators 1.4 and 2 public nodes ... and added yesterday the 5 validator with 20.10.4

rampatra (Wed, 24 Feb 2021 14:14:30 GMT):
I am referring to the normal besu node here and not the validator or bootnode.

rampatra (Wed, 24 Feb 2021 14:14:49 GMT):
Any link or reference would also be helpful. 🙏

diegoll (Wed, 24 Feb 2021 14:44:35 GMT):
the usual architecture for blockchain applications is to connect to your node through http/ws. It would depend on your application if the latency introduced by that connection affects your performance and may justify embedding somehow your application into Besu, most usual dapps doesn't have those requirements AFAIK

rampatra (Wed, 24 Feb 2021 14:47:18 GMT):
yea, was wondering the same. But is it even possible, in a straight forward way, to have my application code in the besu node itself?

rampatra (Wed, 24 Feb 2021 14:47:18 GMT):
yea, was wondering the same. But is it even possible, in a straight forward way, to add besu as a java dependency or something to my java application?

rampatra (Wed, 24 Feb 2021 14:47:18 GMT):
yea, was wondering the same. But is it even possible, in a straight forward way, to add besu as a java dependency (i.e, maven/gradle) or something to my java application?

diegoll (Wed, 24 Feb 2021 14:48:50 GMT):
the most straight forward extension point for Besu is its [plugin system](https://besu.hyperledger.org/en/stable/Reference/Plugin-API-Interfaces/) you should evaluate if that provides enough information for your use case

rampatra (Wed, 24 Feb 2021 14:50:11 GMT):
cool, thanks for confirming and clarifying my doubts.

shemnon (Wed, 24 Feb 2021 15:10:03 GMT):
Besu is not a wallet provider. You should put something like ethsigner between besu and remix - https://github.com/consensys/ethsigner

NicolasMassart (Wed, 24 Feb 2021 15:18:45 GMT):
It seems that p2p between 1.4 and 20.10.4 Besu nodes could require the `--compatibility-eth64-forkid-enabled` CLI option to be used on 20.10.4 nodes to be able to discover 1.4 nodes. See https://besu.hyperledger.org/en/latest/Reference/CLI/CLI-Syntax/#compatibility-eth64-forkid-enabled _Note that it is only in our latest doc but still apply since 20.10.1_

helderjnpinto (Wed, 24 Feb 2021 15:24:23 GMT):
hm... ok i will try

helderjnpinto (Wed, 24 Feb 2021 15:27:56 GMT):
about p2p-host flag is important ? i think this is not a problem but mwaser talks about this case....

helderjnpinto (Wed, 24 Feb 2021 15:34:49 GMT):
exist any timout when we have unsuficient peers as validators to p2p discovery ?

helderjnpinto (Wed, 24 Feb 2021 15:34:49 GMT):
exist any timout when we have unsuficient peers as validators to trigger p2p discovery ?

helderjnpinto (Wed, 24 Feb 2021 15:35:52 GMT):
becasuse all works when i put via ADMIN api add new peer to all validator... all starts to produce blocks

SuzanaMaranhao (Wed, 24 Feb 2021 19:57:12 GMT):
Hi. I want to enable some “observer nodes” in a permissioned Besu network. I mean, a set of nodes that are able to synchronize the blocks of the network but cannot relay transactions from users. The default permissioning smart contracts provided by Besu do not help me, because I cannot restrict that a node can only read transactions and not receiving transactions. Also, I do not want to use gas to solve that (I have some arguments to this decision, but I do not want to go in details about them to avoid confusion). I am wondering what the best option is. One possibility would be to filter what is been received by the peer-to-peer port. Besu offers the possibility of exposing or not some APIs to the user (for example, enabling ETH and disabling ADMIN) so I am wondering if it also possible to filter or not some functions on the peer-to-peer port. In this case I want to enable block synchronization (I mean, the observer node can synchronize and read all the info) but disable the possibility of receiving transactions (I mean, the observer nodes cannot send/relay transactions to the network.

josenogueiradalmeida (Wed, 24 Feb 2021 20:06:18 GMT):
Hello everyone, Our permissioned network is made by 3 organizations (A, B and C), 2 validators each organization. Organization C is still pending in the rpc ibft_getPendingVotes query in A and B, although A and B has proposed/voted for C. Organization C is already validating blocks, we can see that in the block explorer. So my question is... Is it common to have a validator pending in the ibft_getPending Votes query and the same validator running the consensus as if it was not pending ?

josenogueiradalmeida (Wed, 24 Feb 2021 20:42:19 GMT):
I can see the C validators in the ibft_getSignerMetrics. However, they simply proposedBlockCount is ZERO

RobbeV 1 (Wed, 24 Feb 2021 22:19:40 GMT):
Hi everyone,

RobbeV 1 (Wed, 24 Feb 2021 22:23:01 GMT):
Hi everyone, I'm pretty new at using docker but I think I have a good understanding of how to setup a private network using the binaries. I'm struggling getting it to work using docker tho. What would a docker command look like if I wanted to use a config.toml file?

trent.mohay (Wed, 24 Feb 2021 22:25:07 GMT):
Hey @SuzanaMaranhao, So to confirm - you're looking fora. way to prevent Ethereum transactions from being sent to a given node in the network? Would this node would still be expected to receive blocks and update its internal world state? Or what is the purpose of this node in your network?

RobbeV 1 (Wed, 24 Feb 2021 22:25:44 GMT):
This is what I got so far: docker run --rm --name node1 -p 8545:8545 -p 13001:30303 hyperledger/besu --config-file=/config.toml

RobbeV 1 (Wed, 24 Feb 2021 22:27:02 GMT):
Unable to read TOML configuration, file not found. I'm getting this error even tho the file is located there.

trent.mohay (Wed, 24 Feb 2021 22:27:39 GMT):
If I've got that somewhat right - the answer is "receiving transactions over Eth doesn't affect the world state" - only mined blocks can do that. So every node receives every transaction, and stores it in the local transaction pool, _but doesn't execute it_. So, I'd typically say that receiving transactions over the P2P port is normal & safe, but without full understanding of your goals, I just want to be careful :)

diegoll (Wed, 24 Feb 2021 23:20:34 GMT):
Hello RobbeV, I think you need to [mount](https://docs.docker.com/storage/volumes/#choose-the--v-or---mount-flag) the `config.toml` from the host file system into the container

hesusruiz (Wed, 24 Feb 2021 23:23:59 GMT):
My understanding is that @SuzanaMaranhao wants a node to be able to have a local copy of the blockchain, but not be able to inject new transactions into the network. So it would be a "read only" node. It can be used to "publish" the information of the blockchain and allow (for example) any actor to participate as "observers" but without having the possibility to inject new transactions. This could be done by wrapping the JSON-RPC interface with a filtering sw, but it would depend on the operator of the node. The question is if the restriction on writes can be imposed at the replication protocol level, so the operator of the observer node can not override it

hesusruiz (Wed, 24 Feb 2021 23:27:18 GMT):
As a side note, @SuzanaMaranhao in Brasil, LACChain in several other countries, we in Alastria and the European Union EBSI (where I also participate) would welcome this functionality, to better implement what we all call Public-Permissioned blockchain networks.

trent.mohay (Wed, 24 Feb 2021 23:34:57 GMT):
It's possible "account permissioning" may provide the required behaviour. In that, every transaction must be signed - and account permission effectively only allows certain keys to sign transactions. Thus, transactions signed by disallowed keys would be rejected by the miner, and never included in a block.

prashantgangwar (Thu, 25 Feb 2021 06:05:34 GMT):

fast_sync

prashantgangwar (Thu, 25 Feb 2021 06:05:34 GMT):

fast_sync

prashantgangwar (Thu, 25 Feb 2021 06:05:34 GMT):

fast_sync

prashantgangwar (Thu, 25 Feb 2021 06:05:34 GMT):

fast_sync

prashantgangwar (Thu, 25 Feb 2021 06:05:34 GMT):

fast_sync

prashantgangwar (Thu, 25 Feb 2021 06:05:34 GMT):

fast_sync

prashantgangwar (Thu, 25 Feb 2021 06:05:34 GMT):

fast_sync

prashantgangwar (Thu, 25 Feb 2021 06:05:34 GMT):

fast_sync

prashantgangwar (Thu, 25 Feb 2021 06:05:34 GMT):

fast_sync

prashantgangwar (Thu, 25 Feb 2021 06:05:34 GMT):

fast_sync

prashantgangwar (Thu, 25 Feb 2021 06:05:34 GMT):

fast_sync

prashantgangwar (Thu, 25 Feb 2021 06:05:34 GMT):

fast_sync

prashantgangwar (Thu, 25 Feb 2021 06:54:55 GMT):
*Fast sync was requested, but cannot be enabled because the local blockchain is not empty.* data-path="~/database_ropsten" sync-mode="FAST" I have defined the configuration options and when using with different network, different path for the data directory was defined. What I am doing wrong here.

prashantgangwar (Thu, 25 Feb 2021 06:54:55 GMT):
*Fast sync was requested, but cannot be enabled because the local blockchain is not empty.* data-path="~/database_ropsten" sync-mode="FAST" I have defined the configuration options and when using with different network, a different path for the data directory was defined. What I am doing wrong here.

hesusruiz (Thu, 25 Feb 2021 07:09:11 GMT):
That is a possibility, but is is not very scalable in a setting like that. The idea is that anybody can join the network and create and deploy whatever smart contracts the want, including any accounts they want. Permissioning should be only at the node level. Once an entity has one node connected to the network, it essentially works as decentralized as the public Ethereum. Even more: permissioning should only be required if the node is a "writer". For reader nodes, the ideal would be that anyone can join and leave the network when they wish.

hesusruiz (Thu, 25 Feb 2021 07:12:34 GMT):
Using an analogy: it would work like in the "real economy": in order to create a business and start operation, you have to register the identity of the company in the business registry of some country. Once this is done, you can do whatever you wish (legal things, of course). But there may be "observers", like regulators or civil society watchdogs, that do not participate in the economic activity but can observe it.

hesusruiz (Thu, 25 Feb 2021 07:17:11 GMT):
Or an even better analogy: the Internet (at the level of the infrastructure). The Internet is permissioned: the carriers, the access providers, the businesses, and even the citizens, they need to "register" to participate. Once this is done, you are basically free to do your business without asking permission. But in the case of the blockchain we want those observer nodes to join the network but not inject transactions.

RobbeV 1 (Thu, 25 Feb 2021 08:00:23 GMT):
hey Diego! I tried mounting like this: docker run --rm --name node1 -p 8545:8545 -p 13001:30303 --mount type=bind,source=/mnt/c/Users/robbe/network/udemy/node1,target=/var/lib/besu hyperledger/besu --config-file=./config.toml Unable to read TOML configuration, file not found.

RobbeV 1 (Thu, 25 Feb 2021 08:00:23 GMT):
hey Diego! I tried mounting like this: docker run --rm --name node1 -p 8545:8545 -p 13001:30303 --mount type=bind,source=/mnt/c/Users/robbe/network/node1,target=/var/lib/besu hyperledger/besu --config-file=./config.toml Unable to read TOML configuration, file not found. Still getting same error :/

diegoll (Thu, 25 Feb 2021 11:09:00 GMT):
try this: ```shell $ docker run --rm --name node1 -p 8545:8545 -p 13001:30303 -v /mnt/c/Users/robbe/network/node1/config.toml:/config.toml hyperledger/besu --config-file=/config.toml ``` I don't know exactly the path of your local `config.toml` but you should adjust this command to your needs

RobbeV 1 (Thu, 25 Feb 2021 12:45:44 GMT):
That found the file, thank you so much! So if i want to use a path on my local machine I have to first set it with the -v flag and than type the path followed by : and then an alias?

diegoll (Thu, 25 Feb 2021 13:25:50 GMT):
the `-v` links files (or directories) between your system and the container. The `--config-file=/config.toml` is executed in the context of the container, then the path you should refer there is the one that's linked in the `-v` option (the value after the colon)

RobbeV 1 (Thu, 25 Feb 2021 14:38:46 GMT):
Thank you very much, u helped me alot!

rampatra (Thu, 25 Feb 2021 15:11:30 GMT):
Are normal besu nodes mandatory? Can I have just my application nodes (dApp) and validator nodes only? _My app nodes can directly make requests to validator nodes and they in turn can validate/add block._

rampatra (Thu, 25 Feb 2021 15:11:30 GMT):
Are normal besu nodes mandatory? Can I have just my application nodes (dApp) and validator/bootnodes nodes only? _My app nodes can directly make requests to validator nodes and they in turn can validate/add block._

SuzanaMaranhao (Thu, 25 Feb 2021 17:21:33 GMT):
thank you, @hesusruiz. You explained very well the point.

SuzanaMaranhao (Thu, 25 Feb 2021 17:21:59 GMT):
As pointed out, it cannot depend on the observer node operator. Like principle of least privilege. Unfortunately, account permissioning is also not the solution to this problem. The issue is really nodes, and I do not want to use accounts to solve nodes.

SuzanaMaranhao (Thu, 25 Feb 2021 17:22:12 GMT):
By the way, the observer node is a very important feature to our Brazilian Blockchain Network too. We want to create a permissioned government network. Not everyone can validate, not everyone can write. But every citizen should be able to deploy an observer node and read the information “by themselves”. Ideally this observer node would not even need permissioning.

SuzanaMaranhao (Thu, 25 Feb 2021 17:22:15 GMT):
So the question is… What is the best way to implement “observer nodes” in Besu?

SuzanaMaranhao (Thu, 25 Feb 2021 17:33:02 GMT):
One solution we imagined was the one described before. "One possibility would be to filter what is been received by the peer-to-peer port. Besu offers the possibility of exposing or not some APIs to the user (for example, enabling ETH and disabling ADMIN) so I am wondering if it also possible to filter or not some functions on the peer-to-peer port. In this case I want to enable block synchronization (I mean, the observer node can synchronize and read all the info) but disable the possibility of receiving transactions (I mean, the observer nodes cannot send/relay transactions to the network.)"

SuzanaMaranhao (Thu, 25 Feb 2021 17:33:16 GMT):
Does it make sense? What would be other approaches?

RobbeV 1 (Thu, 25 Feb 2021 17:33:35 GMT):
Im still struggling to get the besu docker network working, but i feel like im close! I use this command for node 1: `docker run --rm --name node1 -p 8545:8545 -p 30303:30303 -v /mnt/c/Users/robbe/network/IBFT-Network/Node-1/data:/data -v /mnt/c/Users/robbe/network/IBFT-Network/genesis.json:/genesis.json hyperledger/besu --data-path=/data --genesis-file=/genesis.json --rpc-http-enabled --rpc-http-api=ETH,NET,IBFT --host-allowlist="*" --rpc-http-cors-origins="all"` For node 2 I use: `docker run --rm --name node2 -p 8546:8545 -p 30304:30303 -v /mnt/c/Users/robbe/network/IBFT-Network/Node-2/data:/data -v /mnt/c/Users/robbe/network/IBFT-Network/genesis.json:/genesis.json hyperledger/besu --data-path=/data --genesis-file=/genesis.json --bootnodes=enode://f13e0a2e23eb233f7eccd52e0cec902c4d0178838d205a53fd1f3bd72ad6bdb330e0d94d6579db2567c4c462e05a1d3c5c75311fe2a1140532edb6913a6db201@127.0.0.1:30303 --rpc-http-enabled --rpc-http-api=ETH,NET,IBFT --host-allowlist="*" --rpc-http-cors-origins="all" --rpc-http-port=8546 --p2p-port=30304` Both nodes can't find each other and stuck on: No sync target, waiting for peers: 0

RobbeV 1 (Thu, 25 Feb 2021 17:33:35 GMT):
Im still struggling to get the besu docker network working, but i feel like im close! I use this command for the bootnode: `docker run --rm --name node1 -p 8545:8545 -p 30303:30303 -v /mnt/c/Users/robbe/network/IBFT-Network/Node-1/data:/data -v /mnt/c/Users/robbe/network/IBFT-Network/genesis.json:/genesis.json hyperledger/besu --data-path=/data --genesis-file=/genesis.json --rpc-http-enabled --rpc-http-api=ETH,NET,IBFT --host-allowlist="*" --rpc-http-cors-origins="all"` For the other nodes I use: `docker run --rm --name node2 -p 8546:8545 -p 30304:30303 -v /mnt/c/Users/robbe/network/IBFT-Network/Node-2/data:/data -v /mnt/c/Users/robbe/network/IBFT-Network/genesis.json:/genesis.json hyperledger/besu --data-path=/data --genesis-file=/genesis.json --bootnodes=enode://f13e0a2e23eb233f7eccd52e0cec902c4d0178838d205a53fd1f3bd72ad6bdb330e0d94d6579db2567c4c462e05a1d3c5c75311fe2a1140532edb6913a6db201@127.0.0.1:30303 --rpc-http-enabled --rpc-http-api=ETH,NET,IBFT --host-allowlist="*" --rpc-http-cors-origins="all" --rpc-http-port=8546 --p2p-port=30304` Both nodes can't find each other and stuck on: No sync target, waiting for peers: 0

rampatra (Thu, 25 Feb 2021 18:02:21 GMT):
The official doc says IBFT 2.0 needs 4 nodes to be BFT and also says 2/3rd should be up and running in order to successfully add blocks. So, does this mean that having 6 validator nodes will give me leeway of 2 failed nodes?

diegoll (Thu, 25 Feb 2021 19:00:07 GMT):
I would suggest you to take a look at [this repository](https://github.com/ConsenSys/quorum-dev-quickstart), where are many examples for running a few nodes and services in isolated environments (basically through docker-compose)

RobbeV 1 (Thu, 25 Feb 2021 19:20:31 GMT):
I fixed it. the nodes couldnt connect on the docker bridge network so i added a flag --network host to all the nodes and it worked!

diegoll (Thu, 25 Feb 2021 19:36:53 GMT):
excellent!

trent.mohay (Fri, 26 Feb 2021 01:20:35 GMT):
Hey @rampatra, Sorry for the confusion - you must have at least 4 validators to be BFT safe - meaning you can afford to lose 1 validator due to failure/byzantine behaviour. You do NOT need 6 (though if you do, you can afford to lose 2 validators at the same time)

trent.mohay (Fri, 26 Feb 2021 01:54:07 GMT):
Hei @rampatra, normal nodes are completely not required. A validator offers all the features of a "normal" node, plus a few extra ones (ie making blocks). So yes, you can a validator can be a bootnode, and you can also submit transactions to a validator.

joshuafernandes (Fri, 26 Feb 2021 02:14:47 GMT):
Hi @mwaser is this a single compose file with n nodes on a single VM? Or mulitple VMs each with an instance of Besu managed by docker? If it is the former using a docker bridge for the networking would be the simpler approach akin to https://github.com/ConsenSys/quorum-dev-quickstart/blob/master/templates/besu/docker-compose.yml#L505

joshuafernandes (Fri, 26 Feb 2021 02:14:47 GMT):
Hi @mwaser is this a single compose file with n nodes on a single VM? Or mulitple VMs each with an instance of Besu managed by docker? If it is the former using a docker bridge for the networking would be the simpler approach akin to https://github.com/ConsenSys/quorum-dev-quickstart/blob/master/templates/besu/docker-compose.yml#L505 Also on that note, if you're attempting to peer to the bootnode, you'll need to map the discovery port to the host port. We've got a quickstart which you can spin up here: https://www.npmjs.com/package/quorum-dev-quickstart - this creates a compose file you can use for reference and customize to suit your requirements

lemonsuy (Fri, 26 Feb 2021 03:44:46 GMT):
Has joined the channel.

adovale (Fri, 26 Feb 2021 08:00:21 GMT):
Thank you very much madeline!

rampatra (Fri, 26 Feb 2021 09:40:33 GMT):
So, in short, if I have 4 then I can afford to lose 1 and still successfully add blocks. If I have 6 then I can afford to lose 2 while still successfully adding blocks.

rampatra (Fri, 26 Feb 2021 09:40:33 GMT):
@trent.mohay So, in short, if I have 4 then I can afford to lose 1 and still successfully add blocks. If I have 6 then I can afford to lose 2 while still successfully adding blocks.

rampatra (Fri, 26 Feb 2021 10:38:05 GMT):
If this is the case then I am still confused. In the former, having 3 nodes suffices but in the latter, it is 4 nodes. Could you pl kindly clarify?

trent.mohay (Fri, 26 Feb 2021 10:39:31 GMT):
sure sure :) So - for a network to be BFT safe, there must be enough validators to determine if one of them is "faulty" - and the minimum number required (including the faulty one) is 4.

trent.mohay (Fri, 26 Feb 2021 10:39:31 GMT):
sure sure :) So - for a network to be BFT safe, there must be enough validators to overcome the effects of a faulty/byzantine node - and the minimum number required (including the faulty one) is 4.

trent.mohay (Fri, 26 Feb 2021 10:40:18 GMT):
i.e. having 4 validators allows the IBFT 2.0 protocol to still successfully produce blocks, even if 1 of the nodes is faulty.

trent.mohay (Fri, 26 Feb 2021 10:41:00 GMT):
If, in a network of 4, you have 2 or more faulty nodes you could: 1. Get the chain halting 2. have forks in the chain (which is bad, as IBFT is meant to provide transaction finality)

trent.mohay (Fri, 26 Feb 2021 10:41:34 GMT):
If you only had a network configured with 3 nodes, then a single faulty node would be sufficient to halt the network.

rampatra (Fri, 26 Feb 2021 10:44:25 GMT):
Thanks @trent.mohay. This makes sense. 🙏

lemonsuy (Fri, 26 Feb 2021 10:50:05 GMT):
Hi there, Is it possible to upgrade private network protocol (IBFT2.0) attributes such as gasLimit or others without restart the node ?

RahulPrasad (Fri, 26 Feb 2021 11:45:25 GMT):
Has joined the channel.

RahulPrasad (Fri, 26 Feb 2021 11:45:27 GMT):
hello, I am not able to make backup of Besu node. I have tried copying the /opt/besu/data/database folder from docker container but I don't know what to do with it. Previously I was using a ethash consensus network but now I want to change consensus to Clique with the backup from ethash node. please help me it is very urgent

mwaser (Fri, 26 Feb 2021 12:24:59 GMT):
Hi @joshuafernandes It started life as the quickstart and is using the docker bridge. Have you ever tried implementing permissions on the quickstart? It works perfectly without permissions but with permissions, discovery does not work either internally or externally. I understand that it has to do with p2p-host -- and I probably have to make sure that each node has only one address (for internal and external) but haven't had a chance to implement yet. It would be awesomely helpful if the team 1) just changed the .env file to the newest version so it doesn't fail the second you tell it to use the newest perms version (that took me a while to debug) and 2) told us what we need to do to get internal and external peer-discovery working -- particularly if there is an easier way than having seven separate config files (each with a different p2p host)

mwaser (Fri, 26 Feb 2021 12:24:59 GMT):
Hi @joshuafernandes It started life as the quickstart and is using the docker bridge. Have you ever tried implementing permissions on the quickstart? It works perfectly without permissions but with permissions, discovery does not work either internally or externally. I understand that it has to do with p2p-host -- and I probably have to make sure that each node has only one address (for internal and external) but haven't had a chance to implement yet. It would be awesomely helpful if the team 1) just changed the quickstart .env file to the newest version so it doesn't fail the second you tell it to use the newest perms version (that took me a while to debug) and 2) told us what we need to do to get internal and external peer-discovery working -- particularly if there is an easier way than having seven separate config files (each with a different p2p host)

mwaser (Fri, 26 Feb 2021 12:38:18 GMT):
@rampatra - The system can tolerate at most F faulty nodes in a N validator nodes network, where N = 3F + 1 -- or F <= (N - 1)/3 -- with a minimum of four nodes. Using this formula, 4 nodes can't have any faulty nodes, 5-6 can have 1, 7-9 and each successive triplet can support 1 additional faulty node (So, at the limit, it can tolerate 1/3 faulty nodes).

mwaser (Fri, 26 Feb 2021 12:49:30 GMT):
@lemonsuy - Why is restarting the node a problem? I suspect that your real problem is that your gasLimit is in the genesis file and all your nodes must have the same genesis file hash -- so even restarting the node won't solve the problem since it won't be able to connect.

lemonsuy (Fri, 26 Feb 2021 14:31:13 GMT):
@mwaser My problem is I already launched the blockchain network and want to adjust the gasLimit value in the genesis file to update the network but I don't wanna have a down time for the network. So my question is there are any ways to update the network without down time ?

mwaser (Fri, 26 Feb 2021 14:52:11 GMT):
@lemonsuy - I do NOT have enough knowledge to be sure that I can accurately answer your question. I *THINK* that you may not increase your gas limit above that set in your Genesis file -- but someone else who knows the answer needs to chime in. The answer to your question "is there are any ways to update the network without down time?" is -- a) anything in the command line or config file can be changed and nodes bounced one by one and you'll have no downtime b) someone else needs to answer the question about items in the genesis file

lemonsuy (Fri, 26 Feb 2021 15:16:50 GMT):
@mwaser Thank you 🙏

JPonna (Fri, 26 Feb 2021 15:24:36 GMT):
Has joined the channel.

JPonna (Fri, 26 Feb 2021 15:24:37 GMT):
Hi, is there a use case with sample code to test besu in lab

NicolasMassart (Fri, 26 Feb 2021 15:25:32 GMT):
What kind of test would you like to do? Just tryout Besu and see how it works or more?

JPonna (Fri, 26 Feb 2021 15:26:45 GMT):
I would like access to all test use cases with sample code if there are more than one

JPonna (Fri, 26 Feb 2021 15:26:58 GMT):
Thank you Nicolas for responding so quickly

rampatra (Fri, 26 Feb 2021 15:27:36 GMT):
Okay, I initially understood this from the doc but @trent.mohay said a slightly different thing.

rampatra (Fri, 26 Feb 2021 15:27:36 GMT):
@mwaser Okay, I initially understood this from the doc but @trent.mohay said a slightly different thing.

rampatra (Fri, 26 Feb 2021 15:28:53 GMT):
This is what we discussed earlier: https://chat.hyperledger.org/channel/besu?msg=kzkcR2apcLy8BWXDr

rampatra (Fri, 26 Feb 2021 15:43:36 GMT):
Does Besu have a feature that lets my different dApp nodes to communicate with each other? Can this be done somehow with the help of Orion nodes? Any link or reference would be really helpful.

NicolasMassart (Fri, 26 Feb 2021 15:44:53 GMT):
Use cases for Besu are the same as for any Ethereum client. You can tryout any dapp, any smart contract that you can find in the Ethereum ecosystem and play with them on Besu. Besu is just a regular Ethereum client.

JPonna (Fri, 26 Feb 2021 15:45:44 GMT):
Could you please provide me one link you have handy

NicolasMassart (Fri, 26 Feb 2021 15:45:59 GMT):
For instance, you can play with the Truffle pet shop example, we provide a full example of how to run it on a private Besu network here https://besu.hyperledger.org/en/stable/Tutorials/Examples/Private-Network-Example/#smart-contract-and-dapp-usage-with-the-blockchain-network

NicolasMassart (Fri, 26 Feb 2021 15:48:13 GMT):
The reason why we suggest to play with it on a private network is for you to be in a free gas network and experiment with Besu. But this is the same Truffle pet shop example code that you can test on Ropsten or any testnet. (Try not to play with it on Mainnet if you want to save your money...).

NicolasMassart (Fri, 26 Feb 2021 15:49:30 GMT):
One thing that is specific to Besu is enterprise parts: - the private network privacy - permissionning - monitoring

NicolasMassart (Fri, 26 Feb 2021 15:50:33 GMT):
These enterprise features are expected to run in a private network: - https://besu.hyperledger.org/en/stable/Tutorials/Permissioning/Create-Permissioned-Network/ - https://besu.hyperledger.org/en/stable/Tutorials/Privacy/Configuring-Privacy/

JPonna (Fri, 26 Feb 2021 15:53:25 GMT):
Thank you Nicolas. That was very helpful

NicolasMassart (Fri, 26 Feb 2021 15:57:18 GMT):
Then one you will have tried that, you will be able to clone and customise and deploy any dapp/smart contracts that you can find on Ethereum network. They usually provide source code in a Github repository, so you have everything to learn from it. Also look at https://www.trufflesuite.com/tutorials for good tutorials and for instance https://openzeppelin.com/contracts/ for framworks to write your own advanced contracts. Last step will be to design your own use case. Good luck!

NicolasMassart (Fri, 26 Feb 2021 15:57:18 GMT):
Then once you will have tried that, you will be able to clone and customise and deploy any dapp/smart contracts that you can find on Ethereum network. They usually provide source code in a Github repository, so you have everything to learn from it. Also look at https://www.trufflesuite.com/tutorials for good tutorials and for instance https://openzeppelin.com/contracts/ for framworks to write your own advanced contracts. Last step will be to design your own use case. Good luck!

NicolasMassart (Fri, 26 Feb 2021 16:01:23 GMT):
Hi, could you explain exactly what you would like to do? To me dapps usually communicate by reading/writing the chain, so there's nothing to do on the Besu side. But given you cite Orion, that is our privacy enclave software that has nothing to do with making dapps communicate together, I wonder what your goal really is. Thanks for providing more detail.

rampatra (Fri, 26 Feb 2021 16:04:22 GMT):
Thanks for helping out. Let's say I have 2 app nodes connecting to 2 different besu nodes (each having their own orion nodes). Now, I want one app node of mine to send some messages to the other app node. So, does Besu provide a way to do this?

rampatra (Fri, 26 Feb 2021 16:04:53 GMT):
@NicolasMassart

mwaser (Fri, 26 Feb 2021 16:05:58 GMT):
He is correct that you do not need six. He is incorrect that you can lose 2 validators at six. You must have 7 validators to survive having 2 faulty ones.

NicolasMassart (Fri, 26 Feb 2021 16:07:35 GMT):
I will consider that what you call "app node" is a service running on some machine with or without a graphical web interface. So let's say it's just regular services. They connect to your Besu node using either a library (web3j for instance if your apps are Java apps) or directly by making JSON-RPC calls to Besu. Is that right?

rampatra (Fri, 26 Feb 2021 16:10:34 GMT):
Yes, think of them as simple java sprint-boot apps communicating with besu nodes via web3j. Now I want the 2 java sprint-boot apps to communicate with each other without involving the chain. Of course, I can implement this myself but lookup etc. would be needed and it would be a lot of work to do. If Besu supports this out of the box somehow then nothing like it.

rampatra (Fri, 26 Feb 2021 16:12:39 GMT):
Or, does besu have an api to send messages among besu nodes? If yes, I can use the same to send the messages and the other app node can somehow subscribe/poll for messages at the other end.

rampatra (Fri, 26 Feb 2021 16:12:39 GMT):
Or, does besu have an api to send messages among besu nodes? If yes, I can use the same to send the messages and the other app node can somehow subscribe/poll for messages from the other besu node.

rampatra (Fri, 26 Feb 2021 16:14:29 GMT):
Thanks a lot for the clarification.

NicolasMassart (Fri, 26 Feb 2021 16:15:29 GMT):
No, sorry, Besu doesn't provide this kind of feature. P2P communication happens only Between Ethereum nodes about the Ethereum protocol itself. There's not way to "plug" your apps in this network to exchange informations with other apps that would be somewhere connected on the network for what I know. If you don't want to pass through the chain to exchange data, you will have to setup your own communication system. You can use a lot of existing technologies for that but they are not related to Ethereum. Also, last detail, what kind of info would you like to pass between your apps? Maybe it would help me give you some ideas.

rampatra (Fri, 26 Feb 2021 16:23:25 GMT):
A straight forward example would be to instruct an app node to make a transaction on the chain. Another would be one app node requesting some internal data from other app node.

NicolasMassart (Fri, 26 Feb 2021 17:36:42 GMT):
Hum, I guess yes you have all the current decentralised computing tools to check for... discovery, messaging, this subject is to broad to give an enlightened advice without knowing far more about your project. If you would like to give me more confidential infos, just DM me.

EmcLab (Fri, 26 Feb 2021 21:16:32 GMT):
Hi team, how to limit the log size under /log/besu/node1.log? The log with debug info can grow to over 1GB in a couple of weeks.

shemnon (Fri, 26 Feb 2021 21:24:51 GMT):

log4j2-rollingdebug.xml.txt

shemnon (Fri, 26 Feb 2021 21:24:55 GMT):
There's several solutions. First, log4j can be used to setup rolling debug files. I've attached a fairly elaborate one I use for debugging.

shemnon (Fri, 26 Feb 2021 21:27:26 GMT):
Second many sysadmin tools can do zip and rolling archives. I'd have to ping our devops folks but it's a fairly low overhead service that will do daily ziping of a particular /var/log/* set/

shemnon (Fri, 26 Feb 2021 21:27:26 GMT):
Second many sysadmin tools can do zip and rolling archives. I'd have to ping our devops folks but it's a fairly low overhead service that will do daily ziping of a particular /var/log/* set.

shemnon (Fri, 26 Feb 2021 21:28:08 GMT):
Antoine works at Splunk and can also help set up sending logs directly to splunk as a third option. Elk is another such solution.

atoulme (Fri, 26 Feb 2021 21:36:30 GMT):
thanks @shemnon!

atoulme (Fri, 26 Feb 2021 21:36:49 GMT):
@EmcLab check out https://besu.hyperledger.org/en/stable/HowTo/Monitor/Logging/ and https://besu.hyperledger.org/en/stable/HowTo/Monitor/Splunk-Enterprise/

mwaser (Sat, 27 Feb 2021 00:37:27 GMT):
Still fighting with permissions and discovery with the quick-start. Without permissions, the nodes are fully interconnected. With permissions, every node connects to the boot node and nothing else. With permissions, the boot node must have --p2p-host=$$(hostname -i) but whether all other nodes have it or not has no effect. If I drop a node off the permissions list. the boot node immediately drops it. Dropping the boot node off the permissions list obviously kills everything. What am I missing here?

mwaser (Sat, 27 Feb 2021 01:03:03 GMT):
An external node will connect to the boot node and start downloading blocks. It often will crash with maximum retries and show no peers. When I retry enough so that it finally reaches the current block, it shows no peers and doesn't continue. If I restart it, it downloads the intervening blocks and repeats the behavior.

mwaser (Sat, 27 Feb 2021 01:03:03 GMT):
An external node will connect to the boot node and start downloading blocks. It often will crash with maximum retries and show no peers. When I retry enough so that it finally reaches the current block, it shows no peers and doesn't continue. If I restart it, it downloads the intervening blocks and repeats the behavior. Eventually though, it does connect and stay connected to the boot node.

Koen84 (Sat, 27 Feb 2021 03:07:41 GMT):
To run an ETH archive node, it's the combination of these 2 options, right ? `--pruning-enabled=false --sync-mode=full`

Koen84 (Sat, 27 Feb 2021 03:07:41 GMT):
To run an ETH archive node, it's the combination of these 2 options, right ? ```--pruning-enabled=false --sync-mode=full```

Koen84 (Sat, 27 Feb 2021 03:16:41 GMT):
Are there any sort of cache options, to configure how much RAM besu uses ? (in combination with graalVM) Or any other sort of performance tweaking when running on a beefy server ?

s157261 (Sat, 27 Feb 2021 09:06:29 GMT):
Has joined the channel.

s157261 (Sat, 27 Feb 2021 09:06:30 GMT):
Hi

s157261 (Sat, 27 Feb 2021 09:08:12 GMT):
i am working on the onchain permisioning

s157261 (Sat, 27 Feb 2021 09:08:34 GMT):
git clone https://github.com/ConsenSys/permissioning-smart-contracts.git

s157261 (Sat, 27 Feb 2021 09:09:00 GMT):
when i tried to build using the yarn run build getting the following error message

s157261 (Sat, 27 Feb 2021 09:09:42 GMT):
SUPPORTED TYPESCRIPT VERSIONS: >=3.2.1 <3.5.0 YOUR TYPESCRIPT VERSION: 3.5.1

s157261 (Sat, 27 Feb 2021 09:09:49 GMT):
after that not continuing

mwaser (Sat, 27 Feb 2021 12:28:44 GMT):
@s157261 - Yeah. I never got it to compile. Use one of the top two artifacts at https://github.com/ConsenSys/permissioning-smart-contracts/releases -- don't try to compile from source. Also, note that it is VERSION 2. Make sure that you are using a besu version > 20.10.0 and be sure to use the --permissions-nodes-contract-version=2 command line option (or config file or env option). I've got it working (finally) but it breaks discovery for me. :-( If you can figure out why, I'd love a "heads-up"

mwaser (Sat, 27 Feb 2021 12:28:44 GMT):
@s157261 - Yeah. I never got it to compile from source. Use one of the top two artifacts at https://github.com/ConsenSys/permissioning-smart-contracts/releases -- don't try to compile from source. Also, note that it is VERSION 2. Make sure that you are using a besu version > 20.10.0 and be sure to use the --permissions-nodes-contract-version=2 command line option (or config file or env option). I've got it working (finally) but it breaks discovery for me. :-( If you can figure out why, I'd love a "heads-up"

mwaser (Sat, 27 Feb 2021 12:28:44 GMT):
@s157261 - Yeah. I never got it to compile from source. Use one of the top two artifacts at https://github.com/ConsenSys/permissioning-smart-contracts/releases -- don't try to compile from source. Also, note that it is VERSION 2. Make sure that you are using a besu version > 20.10.0 and be sure to use the --permissions-nodes-contract-version=2 command line option (or config file or env option). Make sure you do things in the right order. For example, do not enable the contracts until after you've run the permissions app and added your initial set of nodes. I've got it working (finally) but it breaks discovery for me. :-( If you can figure out why, I'd love a "heads-up"

mwaser (Sat, 27 Feb 2021 13:08:41 GMT):
With my permissioning/discovery problems, there are a couple of other probably related facts that I should repeat (actually, I'll repeat all facts here): 1. Putting more than one boot node in the boot nodes option causes a node to not connect to any boot node 2. The boot nodes option will not work for an external node. The only option that works is the static nodes option. 3. Internal nodes (those in the quickstart) discover each other when there is no permissioning, only connect to the boot node when permissioning is active. 4. External nodes connect to a static node but no other node (I'm guessing that you need a boot node for discovery to work). I'm sure that I'm missing one last little discovery (or boot node) thing or two (though why it works internally but not externally without permissioning but not with permissioning has me scratching my head as well).

mwaser (Sat, 27 Feb 2021 13:08:41 GMT):
With my permissioning/discovery problems, there are a couple of other probably related facts that I should repeat (actually, I'll repeat all facts here): 1. Putting more than one boot node in the boot nodes option causes a node to not connect to any boot node 2. The boot nodes option will not work for an external node. The only option that works is the static nodes option. 3. Internal nodes (those in the quickstart) discover each other when there is no permissioning, only connect to the boot node when permissioning is active. 4. External nodes connect to a static node but no other node (I'm guessing that you need a boot node for discovery to work). 5. I'm guessing that my external boot node problem is probably because p2p-host is not set correctly because it is already set so that the internal nodes can connect (and discover when permissions are disabled). I could set the p2p-host correctly for external if I could get my internal nodes to use the external address as a boot node -- but I'm not succeeding at that. I'm sure that I'm missing one last little discovery (or boot node) thing or two (though why it works internally but not externally without permissioning but not with permissioning has me scratching my head as well).

mwaser (Sat, 27 Feb 2021 13:59:34 GMT):
Hmmm. Possible new clue. Only the first node can serve as a boot node. If I try using node 3 as a boot node for node 4, it doesn't work and node 4 doesn't connect to the network. :-(

mwaser (Sat, 27 Feb 2021 13:59:34 GMT):
Hmmm. Possible new clue. Only the first node can serve as a boot node. If I try using node 3 as a boot node for node 4, it doesn't work and node 4 doesn't connect to the network. :-( Though, of course, node 3 CAN serve as a boot node if permissions isn't enabled . . . . :-P

mwaser (Sat, 27 Feb 2021 13:59:34 GMT):
Hmmm. Possible new clue. Only the first node can serve as a boot node. If I try using node 3 as a boot node for node 4, it doesn't work and node 4 doesn't connect to the network. :-( Though, of course, node 3 CAN serve as a boot node if permissions isn't enabled . . . . :-P -- but with the oddity that all nodes cross-connect EXCEPT 1 and 4. Someone has got to know what is going on. Does ANYONE have boot nodes and permissions FULLY working (and discovery)? Team?

mwaser (Sat, 27 Feb 2021 13:59:34 GMT):
Hmmm. Possible new clue. Only the first node can serve as a boot node. If I try using node 3 as a boot node for node 4, it doesn't work and node 4 doesn't connect to the network. :-( Though, of course, node 3 CAN serve as a boot node if permissions isn't enabled . . . . :-P -- but with the oddity that all nodes cross-connect EXCEPT 1 and 4. Someone has got to know what is going on. Does ANYONE have boot nodes and permissions FULLY working (and discovery)? Team? This is starting to reach the point of becoming a make-or-break issue as to whether or not we can use besu . . . .

mwaser (Sat, 27 Feb 2021 13:59:34 GMT):
Hmmm. Possible new clue. Only the first node can serve as a boot node. If I try using node 3 as a boot node for node 4, it doesn't work and node 4 doesn't connect to the network. :-( Though, of course, node 3 CAN serve as a boot node if permissions isn't enabled . . . . :-P -- but with the oddity that all nodes cross-connect EXCEPT 1 and 4. Someone has got to know what is going on. Does ANYONE have boot nodes and permissions FULLY working (and discovery) -- especially for the quickstart and external nodes? Team? This is starting to reach the point of becoming a make-or-break issue as to whether or not we can use besu . . . .

mwaser (Sat, 27 Feb 2021 13:59:34 GMT):
Hmmm. Possible new clue. Only the first node can serve as a boot node. If I try using node 3 as a boot node for node 4, it doesn't work and node 4 doesn't connect to the network. :-( Though, of course, node 3 CAN serve as a boot node if permissions isn't enabled . . . . :-P -- but with the oddity that all nodes immediately cross-connect EXCEPT 1 and 4 which take some time to finally connect. Someone has got to know what is going on. Does ANYONE have boot nodes and permissions FULLY working (and discovery) -- especially for the quickstart and external nodes? Team? This is starting to reach the point of becoming a make-or-break issue as to whether or not we can use besu . . . .

atoulme (Sun, 28 Feb 2021 08:01:47 GMT):
you're confusing bootnodes and connecting to peers. Bootnodes are used for discovery and give the address of other nodes, and possibly theirs. It is possible during discovery that your node will not connect to all the bootnodes as peers. Bootnodes are only really useful for large public networks. You might be better off having static nodes for small private networks.

devapanda (Sun, 28 Feb 2021 12:02:52 GMT):
Has joined the channel.

devapanda (Sun, 28 Feb 2021 12:03:19 GMT):
is besu is same like geth fork?

Koen84 (Sun, 28 Feb 2021 12:53:46 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=x7RFfQwF9zvGtCsbJ) It's an ETH client like geth, but it's a completely different implementation in a different programming language.

mwaser (Sun, 28 Feb 2021 13:28:03 GMT):
@atoulme - Hi! No, I am not confusing boot nodes and connecting to peers. As I said in number 2, static nodes DOES work for external nodes and, though I didn't mention it, static nodes also works for internal nodes. It is definitely not a connectivity issue. It is a discovery issue. There is also the question why permissions have ANYTHING to do with discovery as long as there is connectivity (static nodes are stopped without permissions just like any other node so why do static nodes work and discovery does not?). I wasn't expecting nodes to connect to all the boot nodes. The problem is that when I put two boot nodes in the command line or config file, the node stops working (i.e. [] works and [, does not). Yes, we building a large private network (anticipated 200ish nodes).

mwaser (Sun, 28 Feb 2021 13:28:03 GMT):
@atoulme - Hi! No, I am not confusing boot nodes and connecting to peers. As I said in number 2, static nodes DOES work for external nodes and, though I didn't mention it, static nodes also works for internal nodes. It is definitely not a connectivity issue. It is a discovery issue. There is also the question why permissions have ANYTHING to do with discovery as long as there is connectivity (static nodes are stopped without permissions just like any other node so why do static nodes work and discovery does not?). I wasn't expecting nodes to connect to all the boot nodes. The problem is that when I put two boot nodes in the command line or config file, the node stops working (i.e. [] works and [, does not). Yes, we building a large private network (anticipated 200ish nodes). [Yeah, I could probably still do static nodes but I'd have to seriously pre-plan it and that's a lot of effort when it should just work}

mwaser (Sun, 28 Feb 2021 13:28:03 GMT):
@atoulme - Hi! No, I am not confusing boot nodes and connecting to peers. As I said in number 2, static nodes DOES work for external nodes and, though I didn't mention it, static nodes also works for internal nodes. It is definitely not a connectivity issue. It is a discovery issue. There is also the question why permissions have ANYTHING to do with discovery as long as there is connectivity (static nodes are stopped without permissions just like any other node so why do static nodes work and discovery does not?). I wasn't expecting nodes to connect to all the boot nodes. The problem is that when I put two boot nodes in the command line or config file, the node stops working (i.e. [] works and [, does not). Note that this problem exists whether I have permissions or not. Maybe unraveling this will be the key to everything else. I think that I'll put it in a separate message . . . . Yes, we building a large private network (anticipated 200ish nodes). [Yeah, I could probably still do static nodes but I'd have to seriously pre-plan it and that's a lot of effort when it should just work}

mwaser (Sun, 28 Feb 2021 13:28:03 GMT):
@atoulme - Hi! No, I am not confusing boot nodes and connecting to peers. As I said in number 2, static nodes DOES work for external nodes and, though I didn't mention it, static nodes also works for internal nodes. It is definitely not a connectivity issue. It is a discovery issue. There is also the question why permissions have ANYTHING to do with discovery as long as there is connectivity (static nodes are stopped without permissions just like any other node so why do static nodes work and discovery does not?). I wasn't expecting nodes to connect to all the boot nodes. The problem is that when I put two boot nodes in the command line or config file, the node stops working (i.e. [] works and [,] does not). Note that this problem exists whether I have permissions or not. Maybe unraveling this will be the key to everything else. I think that I'll put it in a separate message . . . . Yes, we building a large private network (anticipated 200ish nodes). [Yeah, I could probably still do static nodes but I'd have to seriously pre-plan it and that's a lot of effort when it should just work}

Renaud404 (Sun, 28 Feb 2021 15:00:45 GMT):
Has joined the channel.

Renaud404 (Sun, 28 Feb 2021 15:01:49 GMT):
Hello, any node as a services where i can pay to get a private besu network to recommand pls ?

atoulme (Sun, 28 Feb 2021 16:11:23 GMT):
Thank you for clarifying and sorry for the assumption. Can you explain how it doesn’t work? Is it that besu doesn’t start, doesn’t run discovery, or something else?

atoulme (Sun, 28 Feb 2021 16:11:38 GMT):
Kaleido?

mwaser (Sun, 28 Feb 2021 16:17:07 GMT):
No worries. It's great that you stated your assumptions at the top and if I had been assuming that, it would have solved the problem. If I have one boot node in the command line or the config file, it works (regardless of permissions) and a node connection (at least to the boot node) is made. If I have two boot nodes, no connection is ever made. I'm hoping that this is key to unlocking the whole problem.

mwaser (Sun, 28 Feb 2021 16:20:51 GMT):
@Renaud404 - Azure has such a thing but it places the nodes on overly expensive machines. Besu will run on a Raspberry pi, it does NOT need the high-performance machines the Azure template gives it. The template is also a very old version of besu and has several other problems. Do NOT use this. OTOH, you can easily set up a lightweight virtual machine on Azure and create your own node on it. This isn't really node-as-a-service but it is a pretty good alternative.

atoulme (Sun, 28 Feb 2021 16:54:31 GMT):
Are the two bootnodes aware of each other and have the same genesis file? Can you report this as a bug?

mwaser (Sun, 28 Feb 2021 16:55:49 GMT):
Will test and get back to you. Great question. May be a few hours or tomorrow so I don't piss off the wife working weekends too much. ;-)

mwaser (Sun, 28 Feb 2021 16:56:36 GMT):
Everything has the same Genesis file (they wouldn't connect even with static nodes otherwise). ;-)

mwaser (Sun, 28 Feb 2021 16:57:57 GMT):
I'm disinclined to immediately report this as a bug if no one else is having the problem -- unless I can determine what in my setup makes me a problem child (something that I can change or something that I cannot change).

mwaser (Sun, 28 Feb 2021 16:57:57 GMT):
I'm disinclined to immediately report this as a bug if no one else is having the problem -- unless I can determine what in my setup makes me a problem child (i.e. is it something that I can/should change or something that I cannot or should have to change).

mwaser (Sun, 28 Feb 2021 16:57:57 GMT):
I'm disinclined to immediately report this as a bug if no one else is having the problem -- unless I can determine what in my setup makes me a problem child (i.e. is it something that I can/should change or something that I cannot or should not have to change).

atoulme (Sun, 28 Feb 2021 17:02:13 GMT):
Same boat, family comes first

Renaud404 (Sun, 28 Feb 2021 17:09:42 GMT):
thx for the answer, yes azure is too expansive if you just need some nodes... but i dont want to install everything myself, just want my Dapp run on a hosting..

Renaud404 (Sun, 28 Feb 2021 17:12:19 GMT):
Exactly what i need @atoulme thx, any other to compare?

atoulme (Sun, 28 Feb 2021 17:33:51 GMT):
No idea. I should set one up I guess lol. What’s your budget? Are you trying to play with besu or get it run professionally?

mwaser (Sun, 28 Feb 2021 19:44:45 GMT):
I've run into a very interesting unexpected occurrence. While testing, i periodically remove the docker containers that my besu nodes are in. Recently, I dropped all but my boot node. The new nodes were syncing against that node for a while -- but now I see that all the new nodes are building a new chain while remaining connected to the old chain (which is not advancing -- but which is ten times the length). I'm curious how this happens. Did the new nodes all realize that they were syncing off of only one chain and decide to invalidate a block? Is it possibly because the longer chain had become stale? I'm not worried about this since it obviously won't happen on a production network -- but understanding it would, I believe, help me to better understand Besu.

mwaser (Sun, 28 Feb 2021 19:47:17 GMT):
Installing everything yourself is very easy if you use the quick-start. The biggest hassle is changing all the keys . . . .

shemnon (Sun, 28 Feb 2021 20:26:37 GMT):
What consensus algorithm?

shemnon (Sun, 28 Feb 2021 20:29:42 GMT):
In any case, losing over half the block producers is not a situation that will self-resolve without manual intervention. For a PoA chains (clique, IBFT, QBFT) I would recommend bringing validators back in one at a time and waiting for a full sync before starting up the next one. For Proof of Work I would turn off mining in that case until each miner has fully synced.

mwaser (Sun, 28 Feb 2021 21:13:19 GMT):
This is interesting. If I have the following boot node sequence: 1 uses 2, 2 uses 1, 3 uses 2, 4 uses 3, 5 uses 4, 6 uses 5 and 7 uses 6 . . . WITHOUT PERMISSIONS: 1 immediately connects with 2 peers (probably 2 and the RPC), 2 and the RPC connect with all 7 nodes other than themselves), 3-7 connect with 6 (probably all but 1) Interestingly, but possibly irrelevant. Node 2 and the RPC pick up the fact that there are 47K nodes. They quickly sync but the other nodes only recognize different target chain heights in the low hundreds and stop and stay there when they reach them despite being fully connected. If I stop and restart the docker containers, node 3 recognizes node 1, quickly picks up the correct target chain height and quickly syncs. The other four nodes belatedly realize the correct chain height and sync somewhat more slowly as they are competing with each other for bandwidth. It is also worth noting that the peer counts are radically different with peers dropping off and reconnecting at a rate much higher than I am comfortable with -- but probably due to network bottle- necking. Eventually, the nodes trifurcate into nodes 1,2,6 being fully connected; 3 by itself and 4,5,7 being connected only through 5. My question here being, why don't they eventually all connect with their original boot nodes? The network is stuck in this position. Why don't the nodes reconnect? Again, if I stop and restart the nodes. they reconnect again with boot root 2 and those needing syncing being fully connected and 1, the fully synced 6 and the rpc node with only one connection.

mwaser (Sun, 28 Feb 2021 22:08:17 GMT):
Eventually. they all are synced at 47K blocks but it requires a stop and restart to cause block production to start happening again -- even though several of the nodes have the three or more necessary peer validator connections.

mwaser (Sun, 28 Feb 2021 22:08:17 GMT):
Eventually. they all are synced at 47K blocks but it requires yet another stop and restart to cause block production to start happening again -- even though several of the nodes have the three or more necessary peer validator connections.

mwaser (Sun, 28 Feb 2021 23:20:37 GMT):
Repeating the process from the beginning showed exactly the same initial connection result: 1 immediately connects with 2 peers (probably 2 and the RPC), 2 and the RPC connect with all 7 nodes other than themselves), 3-7 connect with 6 (probably all but 1) And again node 2 and the rpc fiure out the 47L target block while node 4 acts like node 6 did last time. The runs diverged slightly in that node 4 *did* reach the 47K while the other four again stalled out with different targets in the low hundreds. This meant that the network only had to be stopped and restarted once for all of them to reach 47K blocks and one more time to start producing blocks again. Behavior being replicated, time to move on to with permissions.

mwaser (Sun, 28 Feb 2021 23:35:45 GMT):
WITH PERMISSIONS: exact same setup as previously with the sole difference being the argument --permissions-nodes-contract-enabled added to the command line of every node. NOTHING CONNECTS. Previously, when everything connected to node 1 as a boot node, every node totally interconnected without permissions and only connected to boot node 1 with permissions. Next (tomorrow) I'll try everything connected to node 2 as a boot node with permissions to see if it is identical to the results with one or if there is a discrepancy that may tell me something. This is killing me . . . . :-(

atoulme (Sun, 28 Feb 2021 23:53:25 GMT):
see what Danno says in the chat

atoulme (Sun, 28 Feb 2021 23:55:27 GMT):
you can't kill nodes like that and not have some problems. You might want to look at the consensus algo you're working with.

Renaud404 (Mon, 01 Mar 2021 07:16:38 GMT):
run professionnally, got a client ready to pay for a Dapp i can develop, looking for something easy to host

atoulme (Mon, 01 Mar 2021 07:17:29 GMT):
are you looking for a private network or mainnet?

Renaud404 (Mon, 01 Mar 2021 07:18:31 GMT):
you're right, but the security concern affraid me..

q9f (Mon, 01 Mar 2021 08:30:43 GMT):
Has joined the channel.

q9f (Mon, 01 Mar 2021 08:30:44 GMT):
Good morning!

q9f (Mon, 01 Mar 2021 08:31:47 GMT):
I try to make a clique proposal on Goerli via HTTP RPC but I always get, ``` { "jsonrpc" : "2.0", "id" : 1, "error" : { "code" : -32604, "message" : "Method not enabled" } } ```

q9f (Mon, 01 Mar 2021 08:32:23 GMT):
I'm running Besu 21.1.0 with the following config: ``` --rpc-http-enabled=true \ --rpc-http-port=10545 \ --rpc-ws-api="ETH,NET,WEB3,CLIQUE" \ ```

q9f (Mon, 01 Mar 2021 08:32:37 GMT):
Why would it say, that the method is not enabled?

marco.cassandro (Mon, 01 Mar 2021 09:51:44 GMT):
Hi,I use the dapp with metamask which however does not support authenticated rpc. are there other ethereum wallets that support it?

Renaud404 (Mon, 01 Mar 2021 14:05:16 GMT):
private

mwaser (Mon, 01 Mar 2021 14:59:05 GMT):
IBFT and yeah, I wouldn't try that with a real network. As Ii said "I'm not worried about this since it obviously won't happen on a production network -- but understanding it would, I believe, help me to better understand Besu." I think I've got an idea for a really interesting test that may tease out a lot more info. I really think I've got something set up wrong related to discovery.

mwaser (Mon, 01 Mar 2021 15:03:47 GMT):
OK. This really, REALLY sucks. I did my test (had two boot nodes pointing at each other with evenly balanced nodes using each) expecting each boot node to connect to those nodes using them and no other cross-connections. I was surprised to see it work. I said "OK, using only one boot node doesn't work". BUT, I always test my hypotheses. I went back to one boot node (totally cleaning everything up). Now that set-up works totally perfectly as well. I would almost swear that it is absolutely identical to the configuration that failed repeatedly before -- but I must be mistaken and changed something . . . . SIGH. I wonder what the heck it was. It cost me multiple days and I have zero knowledge to show for it.

mwaser (Mon, 01 Mar 2021 15:06:17 GMT):
@shemnon - IBFT. But it does work if the chain is pretty short (like when you only ran it long enough to add nodes with the permissioning app and then restart it to enable the permissions contract). ;-)

rampatra (Mon, 01 Mar 2021 15:36:51 GMT):
Can anyone please kindly recommend a besu api or a seperate tool that will allow different application nodes of mine to communicate with each other off-chain?

atoulme (Mon, 01 Mar 2021 16:42:46 GMT):
your last parameter should say http not ws

atoulme (Mon, 01 Mar 2021 16:43:54 GMT):
Say more. What kind of messages? All the nodes? Point to point? Authenticated? Encrypted?

rampatra (Mon, 01 Mar 2021 16:47:10 GMT):
I am talking about message between my app nodes and not besu nodes (although I have no problem in using besu nodes for this). The messages can be simple json payloads. Not encrypted. Point-to-point. Http would be fine as the messages won't be continuous like chat but one-off.

atoulme (Mon, 01 Mar 2021 16:58:21 GMT):
So maybe run a http server and send data between your apps? GRPC would do too?

rampatra (Mon, 01 Mar 2021 17:04:58 GMT):
actually the thing is, we do not want to code the discovery of other nodes ourselves and wanted to use some existing api if possible. For example, let's say, I have 2 nodes named, x and y. I just want to make a simple http call saying send message "abc" to "y" and that should be it. With gRPC, I think I have to handle the addressing, etc. That is, I have to convert the node name to its proper ip address or something. Am i right?

rampatra (Mon, 01 Mar 2021 17:06:01 GMT):
As besu already supports some sort of private messaging via orion nodes, I was wondering if I can use the same API for my use.

rampatra (Mon, 01 Mar 2021 17:06:01 GMT):
As besu already supports private messaging via orion nodes, I was wondering if I can use the same API for my use.

atoulme (Mon, 01 Mar 2021 18:25:32 GMT):
well, ok. You could always talk over private transactions :)

atoulme (Mon, 01 Mar 2021 18:26:13 GMT):
There was also some years back a chat protocol called whisper that was quite interesting but was heavy on use. It had interesting properties, but was never implemented by besu and deprecated by geth.

atoulme (Mon, 01 Mar 2021 18:27:14 GMT):
if you'd like to create your very own subprotocol to send messages over rlpx to other nodes, I think that's doable, but would require some heavy coding in Besu. I made Apache Tuweni's implementation of subprotocols more modular so it would allow custom subprotocols, but it's not a client.

atoulme (Mon, 01 Mar 2021 18:28:48 GMT):
well discovery happens over udp

atoulme (Mon, 01 Mar 2021 18:28:54 GMT):
udp is lossy, best effort.

rampatra (Mon, 01 Mar 2021 18:29:08 GMT):
Okay, so the only ready to use option for us now would be to use private transaction to send private messages. Hmm.

atoulme (Mon, 01 Mar 2021 18:29:10 GMT):
What that tells me is we'd need a better discovery for private networks that leaves a lot less to chance.

atoulme (Mon, 01 Mar 2021 18:29:21 GMT):
Please also note - did you reset your node keys in between runs?

atoulme (Mon, 01 Mar 2021 18:30:04 GMT):
Discovery uses nodekeys to create identities, which are used to xor against the other nodes to find which bucket to place them in. This means that if you don't ask the right bucket, you can get an empty list of peers.

atoulme (Mon, 01 Mar 2021 18:30:24 GMT):
This is meant for max resilience on a crowded network of 1000+ peers.

mwaser (Mon, 01 Mar 2021 18:30:25 GMT):
No. I spent a long time changing all the keys at the very beginning and haven't changed them since.

atoulme (Mon, 01 Mar 2021 18:31:05 GMT):
You have a cool use case though. Care to open a bug on the repo?

atoulme (Mon, 01 Mar 2021 18:31:45 GMT):
how many nodes? Which consensus algo? What type of RPC? What SLA do you need?

rampatra (Mon, 01 Mar 2021 18:32:23 GMT):
Sure. You mean besu github issues?

atoulme (Mon, 01 Mar 2021 18:32:28 GMT):
ya

rampatra (Mon, 01 Mar 2021 18:32:45 GMT):
Cool, will do it right away.

mwaser (Mon, 01 Mar 2021 18:32:59 GMT):
If I changed them, I'd have to find them and update my list to permission. It already takes me way too long between test. :-(

atoulme (Mon, 01 Mar 2021 18:33:30 GMT):
awesome

atoulme (Mon, 01 Mar 2021 18:33:53 GMT):
sorry to hear.

mwaser (Mon, 01 Mar 2021 18:35:55 GMT):
It changed so radically and completely that I would doubt that it was due to udp. I would have expected it to work at least once in all my failed tests and fail in some of my successful tests.

mwaser (Mon, 01 Mar 2021 18:35:55 GMT):
It changed so radically and completely that I would doubt that it was due to udp. I would have expected it to work at least once in all my failed tests and/or fail in some of my successful tests.

atoulme (Mon, 01 Mar 2021 18:36:25 GMT):
I thought we'd settle on blaming udp, but if you want a bit more

atoulme (Mon, 01 Mar 2021 18:36:38 GMT):
It would be great to see a run that failed with logging level

atoulme (Mon, 01 Mar 2021 18:36:45 GMT):
see what played out.

atoulme (Mon, 01 Mar 2021 18:37:26 GMT):
You can also feel free to open an issue with Besu such as: "private networks have no guarantee of interconnection" and explain your use case.

mwaser (Mon, 01 Mar 2021 18:37:44 GMT):
Heh. If it happens again, I'll grab the logs. I just hate not knowing since if you don't know, you can't prevent it or fix it in the future.

atoulme (Mon, 01 Mar 2021 18:37:51 GMT):
Then we can think of a deterministic way of guaranteeing discovery. I have the sneaky feeling something is way off.

atoulme (Mon, 01 Mar 2021 18:38:37 GMT):
I believe the team also worked on other ways to guarantee connectivity, and maybe someone else will comment on the issue.

atoulme (Mon, 01 Mar 2021 18:38:50 GMT):
We also have DNS discovery, but it's mostly for public networks.

mwaser (Mon, 01 Mar 2021 18:40:57 GMT):
If you are part of the team and would like me to file a bug, I would be happy to. The next step is that I need to do is switch the p2p-host option to using the external addresses of at least a couple or three of the nodes so that they can be boot nodes for external nodes (unless there is some other way to do it). I'm currently living in fear that that won't work . . . .

atoulme (Mon, 01 Mar 2021 18:42:12 GMT):
I'm a committer yes. It would definitely be of value to me if you took the time to file an issue, and I would pay that forward by exploring how to best make sure this doesn't happen again.

mwaser (Mon, 01 Mar 2021 18:43:48 GMT):
Absolutely. I appreciate all the time you've spent on me. It will likely be a day or three -- after I've finished the last task of trying to externalize and I

mwaser (Mon, 01 Mar 2021 18:43:48 GMT):
Absolutely. I appreciate all the time you've spent on me. It will likely be a day or three -- after I've finished the last task of trying to externalize and I've collected as much knowledge as I'm going to have -- but I'd love to prevent others from going through the same agony. ;-)

rampatra (Mon, 01 Mar 2021 18:46:06 GMT):
Done: https://github.com/hyperledger/besu/issues/1964

atoulme (Mon, 01 Mar 2021 18:46:21 GMT):
thank you

shemnon (Mon, 01 Mar 2021 19:05:16 GMT):
shemnon

rjones (Mon, 01 Mar 2021 19:16:01 GMT):
shemnon

joshuafernandes (Mon, 01 Mar 2021 21:13:15 GMT):
Gotcha @mwaser Yep permissions have to do with the enode (node's public key and the ip of the node). There are 2 modes of permissioning that you can use: 1. static config file which you essentially make a list of enodes allowed. https://github.com/ConsenSys/quorum-dev-quickstart/blob/master/files/besu/config/besu/permissions_config.toml and then in the config of each node hand that file as an argument https://github.com/ConsenSys/quorum-dev-quickstart/blob/master/files/besu/config/besu/config.toml#L30 I believe this is the default mode the quickstart operates in.

joshuafernandes (Mon, 01 Mar 2021 21:13:15 GMT):
Gotcha @mwaser Yep permissions have to do with the enode (node's public key and the ip of the node). There are 2 modes of permissioning that you can use: 1. static config file which you essentially make a list of enodes allowed. https://github.com/ConsenSys/quorum-dev-quickstart/blob/master/files/besu/config/besu/permissions_config.toml and then in the config of each node hand that file as an argument https://github.com/ConsenSys/quorum-dev-quickstart/blob/master/files/besu/config/besu/config.toml#L30 I believe this is the default mode the quickstart operates in. 2. Via an onchain permissions contract and you make an app to allow you to select which nodes are allowed/disallowed. Docs here: https://besu.hyperledger.org/en/stable/Tutorials/Permissioning/Getting-Started-Onchain-Permissioning/ and a tutorial video here: https://www.youtube.com/watch?v=MhOJKOoEZQQ&t=10s

joshuafernandes (Mon, 01 Mar 2021 21:40:16 GMT):
Thankyou for raising that, I'll look into the newest perms version and see what we need to update :) I'll take a stab at the peering question that you have. Please feel free to correct me if Im wrong about assumptions and we can work through that. By internal I take to mean you are referring to the containers on your box (laptop etc) locally? And externally I take to mean a box on say a different VM in Azure or another laptop etc? The p2p-host tells Besu which host interface to listen to for p2p traffic, this is defaulted to 127.0.0.1 for security. If this isn't set on the docker containers it default to the localhost of the container and not the host, so it never sees the rest of the world.

joshuafernandes (Mon, 01 Mar 2021 21:47:15 GMT):
If you're running a mixed mode like the above (some nodes on containers and some on VMs) then each container will need to use: - set the p2p-host - a different discovery port and bind to the host network ie `30303:30303` on one, `30303:30304` on the next and so on and adjust the same on the static-nodes.json. This allows each container node to be exposed on the same host, so that you can connect to them from an external VM on the LAN or equivalent

joshuafernandes (Mon, 01 Mar 2021 21:47:15 GMT):
If you're running a mixed mode like the above (some nodes on containers and some on VMs) then each container will need to use: - set the p2p-host - a different discovery port and bind to the host network ie `30303:30303` on one, `30303:30304` on the next and so on and adjust the same on the static-nodes.json. This allows each container node to be exposed on the same host, so that you can connect to them from an external VM on the LAN or equivalent. Also edit any firewall rules to allow traffic

joshuafernandes (Mon, 01 Mar 2021 21:47:15 GMT):
If you're running a mixed mode like the above (some nodes on containers and some on VMs) then each container will need to use: - set the p2p-host - a different discovery port and bind to the host network ie `30303:30303` on one, `30304:30303` on the next and so on and adjust the same on the static-nodes.json. This allows each container node to be exposed on the same host, so that you can connect to them from an external VM on the LAN or equivalent. Also edit any firewall rules to allow traffic

mwaser (Mon, 01 Mar 2021 21:49:33 GMT):
Internal vs. external: I started with the dev-quickstart but changed the member nodes to also be validator nodes. Since they all use the private docker network, I've been calling them internal even though the are actually on Azure. ;-) Similarly, my external node (i.e. not on the Docker network) is my local machine. I quickly learned that my local machine can only connect via static nodes and that I needed to use p2p-host to get discovery (and apparently connecting to boot nodes to work) since my p2p-host was set to the internal network address (soon to be changed to the external network address). For some reason, I was having all sorts of difficulties with the internal network, permissions and discovery as well. They seem to have disappeared for no reason. Obviously I must have changed something but . . . . For the newest perms version, the things that I noticed were 1. I had to figure out that the besu version was in the .env file and update that to a version higher than the current 10.20.0 2. I had to realize that I needed the permissions-nodes-contract-version (yes, it is elsewhere in the docs but there are . . . so . . . many . . . docs ;-) )

mwaser (Mon, 01 Mar 2021 21:51:11 GMT):
My firewalls are good. I can connect with static-nodes so I'm sure everything is open. Isn't your port binding backwards?

joshuafernandes (Mon, 01 Mar 2021 21:55:41 GMT):
Gotcha, now Im with you. Yep, fixed the binding :) Yep, am working over the next few months to sort out docs and examples and aiming ot make it simpler and more practical. With permissions its a tricky one, even bootnodes wont connect unless they've been told about the new enode and then you've got connectivity. Glad its working for you now :)

mwaser (Mon, 01 Mar 2021 22:00:18 GMT):
Yeah, I was having weird circumstances like the second I enabled permissions (after adding the nodes), the boot node would connect to the other 6 nodes but they wouldn't cross connect. Now, after trying all sorts of experiments, it is working correctly but, as far as I know, I've undone all the changes that made it work and it still works. Makes me really nervous as "things that suddenly and inexplicably fix themselves can just as suddenly and inexplicably stop working" :-(

joshuafernandes (Mon, 01 Mar 2021 22:08:51 GMT):
Gotcha, was the permissioning added to all the nodes? What I typically tend to do is to put the generalised config in a file and then share that across to all nodes so they're consistent, and then pass in dynamic args like p2p-host at runtime only. There is also a DNS mode which makes life a bit easier https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#xdns-enabled When experimenting and firing things up, I start with the bootnodes first and then add 1 node at a time to see the effects. If the node doesnt connect then I use the APIs and go back and figure out why and then restart the process. Helps me isolate connectivity at least and if it works with one node, then it generally works with the rest - my 2c worth only ;)

mwaser (Mon, 01 Mar 2021 22:13:38 GMT):
There is one docker-compose.yaml in the quick-start that had the p2p-host argument with a system call. I moved that out to individual config files. I should go back and reverse that and see if that was the fix (though it still wasn't working for quite some time after that). Normally, I am MUCH better at determining the source of a problem -- especially since I always reverse the last step just to confirm that it was the cause of the problem. I was not happy when it worked after reversing the last several things I did . . . . Hopefully, I just forgot something. The tests involved a lot of steps to set it up each time . . . .

mwaser (Mon, 01 Mar 2021 22:15:11 GMT):
The problem was that all the nodes did connect to the boot node but didn't perform discovery when permissions was enabled. The permissions had to be correct for the nodes to connect to the boot node so why did they refuse to discover ONLY when permissions were enabled?

joshuafernandes (Mon, 01 Mar 2021 22:15:50 GMT):
Aye understand, give me a yell if you need a hand. Not sure if this is an option for you or not re Azure, https://github.com/ConsenSys/besu-terraform/tree/master/azure

joshuafernandes (Mon, 01 Mar 2021 22:17:37 GMT):
Thats a tf setup that will provision nodes in Azure (sans permissioning from memory) but you'll see the config in 1 place only - the config.toml and uses a galaxy role to setup besu so you treat it like another service managed by systemd

joshuafernandes (Mon, 01 Mar 2021 22:21:26 GMT):
To connect external nodes, set this to publicIP https://github.com/ConsenSys/besu-terraform/blob/master/azure/files/besu/setup.sh#L9 and https://github.com/ConsenSys/besu-terraform/blob/master/azure/ibft-4-validators/main.tf#L170 to open up 30303 to `0.0.0.0`

mwaser (Mon, 01 Mar 2021 22:24:24 GMT):
Yeah. I had one config.toml until I moved the p2p-host option into it. I'm not enough of a Linux/Docker weenie to figure out if I can collapse it back with a system call or not. I am unfortunately not familiar with Terraform and am going to try the public ip with 30303 through 30309 unless there si some reason why that is a terrible idea.

joshuafernandes (Mon, 01 Mar 2021 23:28:28 GMT):
:thumbsup: Sounds like a plan.

trent.mohay (Tue, 02 Mar 2021 03:17:32 GMT):
Hey @mwaser, Not quite sure I understand - but am _somewhat_ worried - as the IBFT2 consensus is explicitly created to prevent forking. So to confirm - you have a number of dockerised nodes running (some of which are validators). If you stop all dockerised-nodes, except the bootnode, then restart them, rater than synchronizing from the bootnode (and then building atop the existing chain), decide to create their own fork?

trent.mohay (Tue, 02 Mar 2021 03:19:18 GMT):
do you have any logs for the various nodes?

trent.mohay (Tue, 02 Mar 2021 03:21:52 GMT):
were you using permissioning? I.e. were nodes potentially unable to connect, and thus resolved to create a new chain?

arijit_6 (Tue, 02 Mar 2021 05:54:21 GMT):
Has joined the channel.

arijit_6 (Tue, 02 Mar 2021 05:54:22 GMT):
Hi All, I am trying to listen events from my smart contract using web3js but it is not receiving any data on event emit. I am new to Besu, help me on this. Below is code snippet ``` var Web3 = require("web3"); var web3 = new Web3("ws://localhost:9546"); var contract = new web3.eth.Contract(JSON.parse(variables.ContractJSON),address); contact.events.MyEvent( { fromBlock: 0, toBlock: 'latest' }).on('error', function(error, receipt) { console.log("error",error) }) .on('data',function (result) { console.log("got result"); }) .on("connected", function(subscriptionId){ console.log("connected",subscriptionId); }) Output- connected 0x4```

prashantgangwar (Tue, 02 Mar 2021 06:50:37 GMT):

Clipboard - March 2, 2021 12:19 PM

q9f (Tue, 02 Mar 2021 08:49:38 GMT):
thanks! I was blind

prashantgangwar (Tue, 02 Mar 2021 10:22:03 GMT):

Clipboard - March 2, 2021 3:47 PM

prashantgangwar (Tue, 02 Mar 2021 10:22:03 GMT):

Clipboard - March 2, 2021 3:47 PM

prashantgangwar (Tue, 02 Mar 2021 10:22:03 GMT):

Clipboard - March 2, 2021 3:47 PM

prashantgangwar (Tue, 02 Mar 2021 10:22:03 GMT):

Clipboard - March 2, 2021 3:47 PM

prashantgangwar (Tue, 02 Mar 2021 10:22:03 GMT):

Clipboard - March 2, 2021 3:47 PM

prashantgangwar (Tue, 02 Mar 2021 10:22:03 GMT):

Clipboard - March 2, 2021 3:47 PM

rampatra (Tue, 02 Mar 2021 11:27:50 GMT):
What's the best way to get callbacks (or subscribe) to new block additions to the chain? Do we have to make a custom besu plugin (implementing the BesuEvents interface) and expose the data via an API? Or, there are other ready to use APIs?

shemnon (Tue, 02 Mar 2021 14:23:58 GMT):
Custom plugins is one option to get "push" style events.

shemnon (Tue, 02 Mar 2021 14:24:53 GMT):
Another option for "push/pull" hybrid is to use websockets and add an event filter. If the socket becomes disconnected you will need to make sure the subscription covers possible missed blocks, but there are ways to do that too.

shemnon (Tue, 02 Mar 2021 14:26:16 GMT):
https://besu.hyperledger.org/en/stable/HowTo/Interact/APIs/RPC-PubSub/

rampatra (Tue, 02 Mar 2021 14:27:58 GMT):
Thanks a lot. Will give this a read now.

atoulme (Tue, 02 Mar 2021 15:38:37 GMT):
Which consensus? If you pick ibft you need enough nodes to mint blocks.

rampatra (Tue, 02 Mar 2021 16:05:56 GMT):
But this missed blocks handling thingy: wouldn't this be the same with either approaches? I mean even if I go the plugin route, let's say my push didn't work for some network issue then my plugin should queue those to send later. Am I right?

rampatra (Tue, 02 Mar 2021 16:05:56 GMT):
@shemnon But this missed blocks handling thingy: wouldn't this be the same with either approaches? I mean even if I go the plugin route, let's say my push didn't work for some network issue then my plugin should queue those to send later. Am I right?

shemnon (Tue, 02 Mar 2021 17:15:13 GMT):
Depends on how you write your plugin. If you add retry logic and confirm receipt then yes. There are so many creative ways to cause data loss on top of this, some architectures do a query of the latest push and then push all the remainder data to bring it up to chain head.

rampatra (Tue, 02 Mar 2021 17:28:01 GMT):
@shemnon "some architectures do a query of the latest push and then push all the remainder data to bring it up to chain head." --> I think this can be done in both the approaches if I understand you correctly?

rampatra (Tue, 02 Mar 2021 17:28:27 GMT):
I am just trying to gauge both the approaches, that's all.

shemnon (Tue, 02 Mar 2021 19:29:24 GMT):
Yea, the gap filling is distinct from push/pull.

shemnon (Tue, 02 Mar 2021 20:10:15 GMT):
abdelhamidbakhta

shemnon (Tue, 02 Mar 2021 20:11:16 GMT):
atoulme

shemnon (Tue, 02 Mar 2021 20:11:40 GMT):
bgravenorst

shemnon (Tue, 02 Mar 2021 20:12:21 GMT):
cjhare

shemnon (Tue, 02 Mar 2021 20:12:31 GMT):
davemec

shemnon (Tue, 02 Mar 2021 20:12:56 GMT):
mackcom

shemnon (Tue, 02 Mar 2021 20:13:08 GMT):
iikirilov

shemnon (Tue, 02 Mar 2021 20:13:32 GMT):
jframe

shemnon (Tue, 02 Mar 2021 20:13:54 GMT):
joshuafernandes

shemnon (Tue, 02 Mar 2021 20:14:19 GMT):
lucassaldanha

shemnon (Tue, 02 Mar 2021 20:14:27 GMT):
macfarla

shemnon (Tue, 02 Mar 2021 20:14:52 GMT):
madelinemurray

shemnon (Tue, 02 Mar 2021 20:15:04 GMT):
m.terry

shemnon (Tue, 02 Mar 2021 20:15:35 GMT):
mbaxter

shemnon (Tue, 02 Mar 2021 20:15:46 GMT):
NicolasMassart

shemnon (Tue, 02 Mar 2021 20:16:34 GMT):
pinges

shemnon (Tue, 02 Mar 2021 20:16:49 GMT):
trent.mohay

shemnon (Tue, 02 Mar 2021 20:17:17 GMT):
rai

shemnon (Tue, 02 Mar 2021 20:17:35 GMT):
timbeiko

shemnon (Tue, 02 Mar 2021 20:17:59 GMT):
usmansaleem

prashantgangwar (Wed, 03 Mar 2021 04:57:55 GMT):
I am using IBFT2 and enabled 4 peer nodes

atoulme (Wed, 03 Mar 2021 05:01:39 GMT):
So do you have enough nodes at this time?

sjin4you (Wed, 03 Mar 2021 08:17:43 GMT):
Has joined the channel.

sjin4you (Wed, 03 Mar 2021 08:17:43 GMT):
grallvm

prashantgangwar (Wed, 03 Mar 2021 11:26:15 GMT):
IBFT 2.0 requires four validators, and i have added them in the extraData of the genesis file

prashantgangwar (Wed, 03 Mar 2021 11:26:15 GMT):
IBFT 2.0 requires four validators, and I have added them in the extraData filed in genesis file.

mwaser (Wed, 03 Mar 2021 14:13:15 GMT):
How do you cut down on " Invalid block header: timestamp 1614780690 is greater than the timestamp margin 1614780689" errors? That seems like a really tight margin . . . .

atoulme (Wed, 03 Mar 2021 14:25:57 GMT):
ok, does it work now?

RobbeV 1 (Wed, 03 Mar 2021 14:54:13 GMT):
Hi everyone! I have a dockerized network with 4 besu nodes and 4 orion nodes using IBFT2. I can connect to metamask just fine and see the initial balances of the accounts. When I try to send a transaction I can ssee the transaction in the logs but it stays on pending:

RobbeV 1 (Wed, 03 Mar 2021 14:54:13 GMT):
Hi everyone! I have a dockerized network with 4 besu nodes and 4 orion nodes using IBFT2. I can connect to metamask just fine and see the initial balances of the accounts. When I try to send a transaction I can ssee the transaction in the logs but it stays on pending:`node2 | 2021-03-03 14:54:30.068+00:00 | pool-9-thread-1 | INFO | IbftBesuControllerBuilder | Imported #619 / 0 tx / 5 pending / 0 (0.0%) gas / (0x24270303eca8f5cbdfa6fa4c0c3c4110edc6ffa952117d0511045037e29fa9ff)`

RobbeV 1 (Wed, 03 Mar 2021 14:54:13 GMT):
Hi everyone! I have a dockerized network with 4 besu nodes and 4 orion nodes using IBFT2. I can connect to metamask just fine and see the initial balances of the accounts. When I try to send a transaction I can ssee the transaction in the logs but it stays on pending: `node2 | 2021-03-03 14:54:30.068+00:00 | pool-9-thread-1 | INFO | IbftBesuControllerBuilder | Imported #619 / 0 tx / 5 pending / 0 (0.0%) gas / (0x24270303eca8f5cbdfa6fa4c0c3c4110edc6ffa952117d0511045037e29fa9ff)` Anyone has any idea why this is happening? I tried deploying a contract with remix too with the same result.

atoulme (Wed, 03 Mar 2021 20:55:10 GMT):
https://www.splunk.com/en_us/blog/devops/hyperledger-besu-is-an-observability-pioneer.html

atoulme (Wed, 03 Mar 2021 20:55:10 GMT):
Folks, we just published a blog post showcasing Hyperledger Besu with Splunk. Please take a look and let me know, feedback welcome: https://www.splunk.com/en_us/blog/devops/hyperledger-besu-is-an-observability-pioneer.htmle

atoulme (Wed, 03 Mar 2021 20:55:10 GMT):
Folks, we just published a blog post showcasing Hyperledger Besu with Splunk. Please take a look and let me know, feedback welcome: https://www.splunk.com/en_us/blog/devops/hyperledger-besu-is-an-observability-pioneer.html

trent.mohay (Thu, 04 Mar 2021 01:17:09 GMT):
suspect you've initialised your besu nodes with the default "min-gas-price" - which means you need to set the gas price to 1000wei - you can change this with the --min-gas-price=X cmdline arg - then the pending txns will get mined into a block

trent.mohay (Thu, 04 Mar 2021 01:17:55 GMT):
Yeah, its a bit tight, and should be relaxed :/ Ultimately you need to have all our nodes time-synced (ideally with NTP)

trent.mohay (Thu, 04 Mar 2021 01:17:55 GMT):
Yeah, its a bit tight, and should be relaxed :/ Ultimately you need to have all your nodes time-synced (ideally with NTP)

prashantgangwar (Thu, 04 Mar 2021 03:44:50 GMT):

Screenshot from 2021-03-04 09-09-13.jpg

RobbeV 1 (Thu, 04 Mar 2021 08:52:41 GMT):
I set up a free gas network by using the --min-gas-price=0. I figured I didnt have to add gas to a transaction then. + one of those 5 pending transactions I added lots of wei

shail_19 (Thu, 04 Mar 2021 09:20:46 GMT):
Has joined the channel.

shail_19 (Thu, 04 Mar 2021 09:20:47 GMT):
Hi All, I am trying to add signer while using clique consensus on private network. By using *clique_propose* method of rpc api I can propose signer, and I did this for all the peer nodes by calling the same method. By calling *clique_proposals* I can get the porposed signer as result. When I call the *clique_getSigners* method still I am getting the same signer which I defined in the genesis file. How will these added signers reflects??

shail_19 (Thu, 04 Mar 2021 09:35:14 GMT):

transaction

shail_19 (Thu, 04 Mar 2021 09:39:55 GMT):
*txpool_besuStatistics* API result in the number of transactions initiated on the node but they are not committed yet, because when I call the *eth_getTransactionByHash* it gives the transaction hash detail but *eth_getTransactionReceipt* is giving null as result. When will these transactions will be succeed??

shail_19 (Thu, 04 Mar 2021 09:39:55 GMT):
*txpool_besuStatistics* API result in the number of transactions initiated on the node but they are not committed yet, because when I call the *eth_getTransactionByHash* it gives the transaction hash detail but *eth_getTransactionReceipt* is giving null as result. When will these transactions will be succeed?? *eth_blockNumber* is also resulting *0* so I think blocks are not getting commited..

RobbeV 1 (Thu, 04 Mar 2021 09:51:27 GMT):
It works again, no idea why tho

RobbeV 1 (Thu, 04 Mar 2021 09:51:59 GMT):
:woo:

mwaser (Thu, 04 Mar 2021 13:33:47 GMT):
I've solved my permissions issue but am still fighting with bootnodes issues on external nodes External nodes WILL connect with a static-nodes.json file -- so I am positive that I have tcp connectivity External nodes will NOT connect using the bootnodes option in any of the command line, environment variable or config file The following command says that I have UDP connectivity nc -z -v -u 104.209.172.204 30303 Connection to 104.209.172.204 30303 port [udp/*] succeeded! Internal node has p2p-host="104.209.172.204" and is on port 30303 External node has p2p-host="73.251.174.207" and is on port 30303 Relevant sections of the external node log are 2021-03-04 08:04:33.016-05:00 | nioEventLoopGroup-2-1 | INFO | RlpxAgent | P2P RLPx agent started and listening on /[0:0:0:0:0:0:0:0]:30303. 2021-03-04 08:04:33.017-05:00 | main | INFO | PeerDiscoveryAgent | Starting peer discovery agent on host=0.0.0.0, port=30303 2021-03-04 08:04:33.098-05:00 | vert.x-eventloop-thread-2 | INFO | VertxPeerDiscoveryAgent | Started peer discovery agent successfully, on effective host=0:0:0:0:0:0:0:0 and port=30303 2021-03-04 08:04:33.099-05:00 | vert.x-eventloop-thread-2 | INFO | PeerDiscoveryAgent | P2P peer discovery agent started and listening on /[0:0:0:0:0:0:0:0]:30303 2021-03-04 08:04:33.201-05:00 | vert.x-eventloop-thread-2 | DEBUG | RecursivePeerRefreshState | Start peer search. 2021-03-04 08:04:33.205-05:00 | vert.x-eventloop-thread-2 | DEBUG | RecursivePeerRefreshState | Initiating bonding round with 1 candidates 2021-03-04 08:04:33.228-05:00 | main | INFO | DefaultP2PNetwork | Enode URL enode://8fe8ba6f6da225d6aec4ec06983607c9f5d6d86daa760277dace8acf62529a04448c1a68ff9f69c49d0cb1685ff5b93052d2e157acbb3240af5485f9f9796317@73.251.174.207:30303 2021-03-04 08:04:33.229-05:00 | main | INFO | DefaultP2PNetwork | Node address 0xd4e26b34de495b4bab2de440202b16d40b21ed1e 2021-03-04 08:04:33.234-05:00 | main | INFO | DefaultSynchronizer | Starting synchronizer. 2021-03-04 08:04:33.236-05:00 | main | INFO | FullSyncDownloader | Starting full sync. 2021-03-04 08:04:33.237-05:00 | main | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2021-03-04 08:04:33.246-05:00 | main | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. AND 2021-03-04 08:04:33.529-05:00 | main | INFO | Runner | Ethereum main loop is up. 2021-03-04 08:04:33.547-05:00 | main | INFO | AutoTransactionLogBloomCachingService | Starting auto transaction log bloom caching service. 2021-03-04 08:04:33.551-05:00 | main | INFO | LogBloomCacheMetadata | Lookup cache metadata file in data directory: /mnt/c/Users/markw/besu-20.10.4/devdir/caches 2021-03-04 08:04:38.232-05:00 | vert.x-eventloop-thread-2 | DEBUG | RecursivePeerRefreshState | Bonding round timed out 2021-03-04 08:04:38.234-05:00 | vert.x-eventloop-thread-2 | DEBUG | RecursivePeerRefreshState | Iterative peer search complete. 1 peers processed over 1 rounds. 2021-03-04 08:04:38.269-05:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2021-03-04 08:04:38.270-05:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2021-03-04 08:04:43.272-05:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2021-03-04 08:04:43.274-05:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. I'm at my wit's end here . . . .

SuzanaMaranhao (Thu, 04 Mar 2021 17:29:08 GMT):
We have a 4-node permissioned network using Besu and recently we included 4 new nodes. 3 were successful included and are generating blocks. The last one is a validator according to a Alethio block explorer but is not generating blocks (using IBFT2). We checked its peers and seems fine. The log of this node was on info level without any message. When the log was set to debug, we noticed that this message sometimes is printed. Any ideas? 2021-03-04T11:48:55.307-0300 DEBUG Handshake error: org.hyperledger.besu.ethereum.p2p.rlpx.handshake.HandshakeException: Decrypting an incoming handshake message failed at org.hyperledger.besu.ethereum.p2p.rlpx.handshake.ecies.ECIESHandshaker.handleMessage(ECIESHandshaker.java:207) ~[besu-p2p-1.5.2.jar:1.5.2] at org.hyperledger.besu.ethereum.p2p.rlpx.connections.netty.HandshakeHandlerInbound.nextHandshakeMessage(HandshakeHandlerInbound.java:54) ~[besu-p2p-1.5.2.jar:1.5.2] at org.hyperledger.besu.ethereum.p2p.rlpx.connections.netty.AbstractHandshakeHandler.channelRead0(AbstractHandshakeHandler.java:85) ~[besu-p2p-1.5.2.jar:1.5.2]

atoulme (Thu, 04 Mar 2021 17:31:01 GMT):
Please open an issue

atoulme (Thu, 04 Mar 2021 17:34:31 GMT):
I don't know either, sorry. Those logs contain little info that helps. I hesitate on next steps: - turn on trace logging - turn on metrics and look at discovery metrics Both are paltry options. Truth be told for most private networks we tend to use static peering since they're relatively small.

atoulme (Thu, 04 Mar 2021 17:35:13 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=jKcLDqhjoXjkbHBuX) Handshake failed - the peer key doesn't match. Check the enodes and make sure they are correct.

mwaser (Thu, 04 Mar 2021 17:38:14 GMT):
Yeah. They want to grow this one to an obnoxious size so static is not an option. I think what I want to focus on is why the external node doesn't even connect to the boot node. It seems as if it should, at least, do that . . . .

atoulme (Thu, 04 Mar 2021 17:38:39 GMT):
but it just might be connecting

mwaser (Thu, 04 Mar 2021 17:38:59 GMT):
???

atoulme (Thu, 04 Mar 2021 17:39:03 GMT):
the notion of discovery doesn't stop at the UDP packet, discovery in ethereum relies on kademlia buckets

atoulme (Thu, 04 Mar 2021 17:39:16 GMT):
so you organize your peers in buckets and only send _some_ of them when asked

atoulme (Thu, 04 Mar 2021 17:39:29 GMT):
if the code of besu is not trying hard enough, you hit an empty bucket...

mwaser (Thu, 04 Mar 2021 17:39:54 GMT):
Hmm. So I should try again with different keys . . . . (or a different node.

atoulme (Thu, 04 Mar 2021 17:40:06 GMT):
hence why you get weird results

atoulme (Thu, 04 Mar 2021 17:40:19 GMT):
my hunch though

mwaser (Thu, 04 Mar 2021 17:40:23 GMT):
I was guessing that the first node would be more like connecting to a static node and then discovery after that.

mwaser (Thu, 04 Mar 2021 17:40:45 GMT):
Seems like that would be faster and more logical . . . .

atoulme (Thu, 04 Mar 2021 17:41:41 GMT):
no that's not how bootnodes work

atoulme (Thu, 04 Mar 2021 17:42:04 GMT):
the idea is that the bootnode is your entry into the network and you connect to it, it doesn't peer with you, instead, it sends you a list of peers to connect to

mwaser (Thu, 04 Mar 2021 17:42:06 GMT):
But . . . if it doesn't try to connect to the first node as a peer . . . and if the other nodes are having trouble connecting . . . . that explains it all.

atoulme (Thu, 04 Mar 2021 17:42:40 GMT):
with public networks, there is even an option for the bootnode to not reply to you if you try to tcp in

mwaser (Thu, 04 Mar 2021 17:43:25 GMT):
Especially since I'm having a tcp oddity on the other nodes (they are UDPing just fine but refusing tcp connections). Crap! I'm looking in the wrong place at the wrong problem. THANK YOU!!

atoulme (Thu, 04 Mar 2021 17:43:48 GMT):
oh cool good luck

mwaser (Thu, 04 Mar 2021 17:47:18 GMT):
I also need to replicate it a couple more times but I think I understand the previous problem. I was trying to avoid having to constantly enter permissions so I was saving and reusing the database on the first node letting the rest sync to it. That is NOT a good plan . . . .

mwaser (Thu, 04 Mar 2021 17:47:53 GMT):
(Apparently, I'm making most of my own problems here :-P )

mwaser (Thu, 04 Mar 2021 17:48:42 GMT):
(I hate being THAT GUY/a twit ;-) )

atoulme (Thu, 04 Mar 2021 17:49:07 GMT):
you're helping everyone else imo

atoulme (Thu, 04 Mar 2021 17:49:24 GMT):
so keep whinging, you're showing where the code falls short

atoulme (Thu, 04 Mar 2021 17:49:38 GMT):
enter issues such as "I need better ways to understand why I don't get any nodes"

atoulme (Thu, 04 Mar 2021 17:49:51 GMT):
I prefer that to indifference

mwaser (Thu, 04 Mar 2021 17:50:10 GMT):
AH. That is a GREAT idea! I will do so.

SuzanaMaranhao (Thu, 04 Mar 2021 20:51:02 GMT):
What do you mean by check the enodes, @atoulme? The node is synchronizing, permissioned and the enode string is correctly presented in command admin_nodeInfo. I also checked that the address of node is equal to the last bytes of the public key hash.

atoulme (Thu, 04 Mar 2021 21:50:47 GMT):
I mean that is seems like there is a problem with your handshake indicating that the exchange breaks because the node is not using the right key when connecting to the peer. The key is a portion of the enode URL.

alpkabac (Thu, 04 Mar 2021 23:30:56 GMT):
Has joined the channel.

alpkabac (Thu, 04 Mar 2021 23:30:57 GMT):
Hi everyone. Does anyone have a snippet for web3js raw transaction? I am following the docs but keep getting the error "invalid params".

alpkabac (Thu, 04 Mar 2021 23:52:58 GMT):
For future reference, if you are using ethereumjs-tx, don't forget to include CustomChain option as seen here: https://github.com/ethereumjs/ethereumjs-tx/blob/master/examples/custom-chain-tx.ts

prashantgangwar (Fri, 05 Mar 2021 10:49:45 GMT):
Hi.. In besu, Permissioning is present for the account list and the node list. The ethereum accounts can be whitelisted for creating the permissions over the transactions using the smart contracts deployed over the besu node. Is it possible to modify the account-list permission and provide access to the besu node to all accounts but restricts the account from deploying the contract..

prashantgangwar (Fri, 05 Mar 2021 10:49:45 GMT):
Hi.. In besu, Permissioning is present for the account list and the node list. The accounts can be whitelisted for creating the permissions over the transactions using the smart contracts deployed over the besu node. Is it possible to modify the account-list permission and provide access to the besu node to all accounts but restricts the account from deploying the contract..

prashantgangwar (Fri, 05 Mar 2021 10:49:45 GMT):
Hi.. In besu, Permissioning is present for the account list and the node list. The accounts can be whitelisted for the transactions using the smart contracts deployed over the besu node. Is it possible to modify the account-list permission and provide access to the besu node to all accounts but restricts the account from deploying the contract..

prashantgangwar (Fri, 05 Mar 2021 10:49:45 GMT):
Hi.. In besu, Permissioning is present for the account list and the node list. The accounts can be whitelisted using smart contracts to carry out the transactions with the whitelisted accounts. Is it possible to modify the account-list permission and provide access to the besu node to all accounts but restricts the account from deploying the contract..

prashantgangwar (Fri, 05 Mar 2021 10:49:45 GMT):
Hi.. In besu, Permissioning is present for the account list and the node list. The accounts can be whitelisted using smart contracts to carry out the transactions with the whitelisted accounts. Is it possible to modify the account-list permission such that the provided account list can deploy the contract; while all other accounts have access to the transaction.

prashantgangwar (Fri, 05 Mar 2021 10:49:45 GMT):
Hi.. In besu, Permissioning is present for the account list and the node list. The accounts can be whitelisted using smart contracts to carry out the transactions with the whitelisted accounts. Is it possible to modify the account-list permission such that the provided account list can deploy the contract; while all other accounts have access to the transaction?

prashantgangwar (Fri, 05 Mar 2021 10:49:45 GMT):
Hi.. In besu, Permissioning is present for the account list and the node list. The accounts can be whitelisted using smart contracts to carry out the transactions with the whitelisted accounts.

prashantgangwar (Fri, 05 Mar 2021 10:49:45 GMT):
Hi.. In besu, Permissioning is present for the account list and the node list. The accounts can be whitelisted using smart contracts to carry out the transactions with the whitelisted accounts. Is it possible to modify the account-list permissions such that the address in the account list can only deploy the contract; while all the accounts can do the transactions over the network.

prashantgangwar (Fri, 05 Mar 2021 10:49:45 GMT):
Hi.. In besu, Permissioning is present for the account list and the node list. The accounts can be whitelisted using smart contracts to carry out the transactions with the whitelisted accounts. Is it possible to modify the account-list permissions such that the address in the account list can only deploy the contract; while all the accounts can do the transactions over the network?

prashantgangwar (Fri, 05 Mar 2021 11:18:07 GMT):
if we hae to change the account allow l,ist permissioning which files do we need to take in considerations in permissions repo

prashantgangwar (Fri, 05 Mar 2021 11:21:36 GMT):
Also if it is possible to modify the account list permissions, which files of the smart contract need to take in the consideration in *permissioning-smart-contracts* repository??

susgut (Fri, 05 Mar 2021 11:24:33 GMT):
Has joined the channel.

susgut (Fri, 05 Mar 2021 11:28:16 GMT):
Hi all. I am developing an energy exchange smart contract to exchange energy between different users of a blockchain. As I need to now the energy that each user has offered and the energy that each user want to buy, I need to make queries to the blockchain to extract these data from the previous transactions. Could you please give me any idea to do that? I need to do it from a user interface, so I need to do it using an API or something similar. Thank you in advance!

susgut (Fri, 05 Mar 2021 11:28:46 GMT):
Ah, sorry.. I am using Hyperledger Besu

HiteshSharma (Fri, 05 Mar 2021 11:30:55 GMT):
Has joined the channel.

SuzanaMaranhao (Fri, 05 Mar 2021 15:46:04 GMT):
@atoulme. Thank you for your answer. I checked private key, public key and enode and it seems fine. It took an entire day but the node was suddenly included as a new validator. So, now we have a node that can sign blocks but there is still the same error message every 30seconds (handshake error). It only happens in this specific node. It is not happening in a similar validator node in the same institution. It also only appear when the LOG LEVEL is debug. Any ideas?

SuzanaMaranhao (Fri, 05 Mar 2021 15:47:47 GMT):

Clipboard - 5 de Março de 2021 às 12:47

atoulme (Fri, 05 Mar 2021 17:00:46 GMT):
in which direction does it happen?

SuzanaMaranhao (Fri, 05 Mar 2021 19:16:51 GMT):
Sorry, I did not understand. It is in the validator node (the one the took long time to become a validator even after all votes)

HiteshSharma (Sat, 06 Mar 2021 06:08:50 GMT):
Hi,

HiteshSharma (Sat, 06 Mar 2021 06:35:23 GMT):
Hi all, So, we're creating a personal public network with on-chain permissions. Along with the basic accounts and nodes rules, we need to create rules for deploying smart contracts. For this, we started looking into the hyperledger/besu code and found the permissioning directory where we can incorporate our changes for our custom on-chain permission. Since any node can join, we want permissioning to be present at some other point as well, maybe like block creation or validation. Could someone please point me to possible places where this additional check can be inserted and the corresponding files/directories the need to be modified? Thanks

HiteshSharma (Sat, 06 Mar 2021 06:35:23 GMT):
Hi all, So, we're creating a personal public network with on-chain permissions. Along with the basic accounts and nodes rules, we need to create rules for deploying smart contracts. For this, we started looking into the hyperledger/besu code and found the permissioning directory where we can incorporate our changes for our custom on-chain permission. Since any node can join and we are using PoA, we need to add checks in Validator nodes probably at block creation. Could someone please point me to the corresponding files/directories that needs to be modified? Thanks

HiteshSharma (Sat, 06 Mar 2021 08:30:15 GMT):
Or may be I'm looking at wrong place. Please guide.

HiteshSharma (Sat, 06 Mar 2021 10:00:25 GMT):

Clipboard - March 6, 2021 3:29 PM

HiteshSharma (Sat, 06 Mar 2021 10:00:25 GMT):
So, I found this function which I suppose add transactions to block. Found in package - package org.hyperledger.besu.ethereum.blockcreation; Is it the correct place to implement custom permission check on smart contract transaction?
Clipboard - March 6, 2021 3:29 PM

HiteshSharma (Sat, 06 Mar 2021 10:04:18 GMT):
So, I found this function which I suppose add transactions to block. Found in package - _package org.hyperledger.besu.ethereum.blockcreation;_ Is it the correct place to implement custom permission check on smart contract transaction?

HiteshSharma (Sat, 06 Mar 2021 16:28:55 GMT):
I've added logs to Besu source code and built binaries from the source. Now, I created a new image by replacing the binaries in the original *hyperledger/besu* image. But it doesn't seem to work. It's giving me this error when I debug the container - `Error: Could not find or load main class org.hyperledger.besu.Besu Caused by: java.lang.ClassNotFoundException: org.hyperledger.besu.Besu Error: Could not find or load main class org.hyperledger.besu.Besu Caused by: java.lang.ClassNotFoundException: org.hyperledger.besu.Besu` The container is just getting restarted. Why is this error showing? What is the right way to do it?

HiteshSharma (Sat, 06 Mar 2021 16:28:55 GMT):
I've added logs to Besu source code and built binaries from the source. Now, I created a new image by replacing the binaries in the original *hyperledger/besu* image. But it doesn't seem to work. It's giving me this error when I debug the container - ``` Error: Could not find or load main class org.hyperledger.besu.Besu Caused by: java.lang.ClassNotFoundException: org.hyperledger.besu.Besu Error: Could not find or load main class org.hyperledger.besu.Besu Caused by: java.lang.ClassNotFoundException: org.hyperledger.besu.Besu ``` The container is just getting restarted. Why is this error showing? What is the right way to do it?

HiteshSharma (Sat, 06 Mar 2021 16:28:55 GMT):
I've added logs to Besu source code and built binaries from the source. Now, I created a new image by replacing the binaries in the original *hyperledger/besu* image. But it doesn't seem to work. It's giving me this error when I debug the container - ``` Error: Could not find or load main class org.hyperledger.besu.Besu Caused by: java.lang.ClassNotFoundException: org.hyperledger.besu.Besu Error: Could not find or load main class org.hyperledger.besu.Besu Caused by: java.lang.ClassNotFoundException: org.hyperledger.besu.Besu ``` The container is just getting restarted. Why is this error showing? What is the right way to create new image with custom Besu binary?

RobbeV 1 (Sat, 06 Mar 2021 16:38:54 GMT):
Hey everyone, I'm having an error that i can't seem to figure out. This is the code I'm trying to run:

RobbeV 1 (Sat, 06 Mar 2021 16:38:54 GMT):
Hey everyone, I'm having an error that i can't seem to figure out. This is the code I'm trying to run: `exports.deploy = (privateKey) => { let besuAccount = web3.eth.accounts.privateKeyToAccount(`0x${privateKey}`) console.log(besuAccount) return web3.eth.getTransactionCount(besuAccount.address, "pending").then(async (txCount) => { let gasPrice = await web3.eth.getGasPrice(); console.log("tx count", txCount); console.log("gasPrice", gasPrice) const txObj = { nonce: web3.utils.toHex(txCount), gasPrice: web3.utils.toHex(gasPrice), gasLimit: web3.utils.toHex(210000), data: contract.bytecode, chainId: chainId }; let custom = Common.default.forCustomChain( "mainnet", { networkId: 2018, chainId: chainId, name: "besu-network" }, "istanbul" ); let tx = new Tx(txObj, { common: custom }); let private = Buffer.from(privateKey, "hex"); tx.sign(private); let serialized = tx.serialize(); let rawSerialized = "0x" + serialized.toString("hex"); return web3.eth.sendSignedTransaction(rawSerialized) .on("receipt", receipt => { console.log(receipt) }) .catch(error => console.log(error)); }); }` When i run this code I get following error: ` let tx = new Tx(txObj, { common: custom }); ^ TypeError: Tx is not a constructor` Does anybody have any idea?

RobbeV 1 (Sat, 06 Mar 2021 16:38:54 GMT):
Hey everyone, I'm having an error that i can't seem to figure out. This is the code I'm trying to run: `exports.deploy = (privateKey) => { let besuAccount = web3.eth.accounts.privateKeyToAccount(0x${privateKey}) console.log(besuAccount) return web3.eth.getTransactionCount(besuAccount.address, "pending").then(async (txCount) => { let gasPrice = await web3.eth.getGasPrice(); console.log("tx count", txCount); console.log("gasPrice", gasPrice) const txObj = { nonce: web3.utils.toHex(txCount), gasPrice: web3.utils.toHex(gasPrice), gasLimit: web3.utils.toHex(210000), data: contract.bytecode, chainId: chainId }; let custom = Common.default.forCustomChain( "mainnet", { networkId: 2018, chainId: chainId, name: "besu-network" }, "istanbul" ); let tx = new Tx(txObj, { common: custom }); let private = Buffer.from(privateKey, "hex"); tx.sign(private); let serialized = tx.serialize(); let rawSerialized = "0x" + serialized.toString("hex"); return web3.eth.sendSignedTransaction(rawSerialized) .on("receipt", receipt => { console.log(receipt) }) .catch(error => console.log(error)); }); }` When i run this code I get following error: ` let tx = new Tx(txObj, { common: custom }); ^ TypeError: Tx is not a constructor` Does anybody have any idea?

RobbeV 1 (Sat, 06 Mar 2021 16:38:54 GMT):
Hey everyone, I'm having an error that i can't seem to figure out. This is the code I'm trying to run: ` exports.deploy = (privateKey) => { let besuAccount = web3.eth.accounts.privateKeyToAccount(0x${privateKey}) console.log(besuAccount) return web3.eth.getTransactionCount(besuAccount.address, "pending").then(async (txCount) => { let gasPrice = await web3.eth.getGasPrice(); console.log("tx count", txCount); console.log("gasPrice", gasPrice) const txObj = { nonce: web3.utils.toHex(txCount), gasPrice: web3.utils.toHex(gasPrice), gasLimit: web3.utils.toHex(210000), data: contract.bytecode, chainId: chainId }; let custom = Common.default.forCustomChain( "mainnet", { networkId: 2018, chainId: chainId, name: "besu-network" }, "istanbul" ); let tx = new Tx(txObj, { common: custom }); let private = Buffer.from(privateKey, "hex"); tx.sign(private); let serialized = tx.serialize(); let rawSerialized = "0x" + serialized.toString("hex"); return web3.eth.sendSignedTransaction(rawSerialized) .on("receipt", receipt => { console.log(receipt) }) .catch(error => console.log(error)); }); }` When i run this code I get following error: ` let tx = new Tx(txObj, { common: custom }); ^ TypeError: Tx is not a constructor ` Does anybody have any idea?

RobbeV 1 (Sat, 06 Mar 2021 16:38:54 GMT):
Hey everyone, I'm having an error that i can't seem to figure out. This is the code I'm trying to run: ` exports.deploy = (privateKey) => { let besuAccount = web3.eth.accounts.privateKeyToAccount(0x${privateKey}) console.log(besuAccount) return web3.eth.getTransactionCount(besuAccount.address, "pending").then(async (txCount) => { let gasPrice = await web3.eth.getGasPrice(); console.log("tx count", txCount); console.log("gasPrice", gasPrice) const txObj = { nonce: web3.utils.toHex(txCount), gasPrice: web3.utils.toHex(gasPrice), gasLimit: web3.utils.toHex(210000), data: contract.bytecode, chainId: chainId }; let custom = Common.default.forCustomChain( "mainnet", { networkId: 2018, chainId: chainId, name: "besu-network" }, "istanbul" ); let tx = new Tx(txObj, { common: custom }); let private = Buffer.from(privateKey, "hex"); tx.sign(private); let serialized = tx.serialize(); let rawSerialized = "0x" + serialized.toString("hex"); return web3.eth.sendSignedTransaction(rawSerialized) .on("receipt", receipt => { console.log(receipt) }) .catch(error => console.log(error)); }); }` When i run this code I get following error: ` let tx = new Tx(txObj, { common: custom }); ^ TypeError: Tx is not a constructor ` Does anybody have any idea?`d`

atoulme (Sat, 06 Mar 2021 18:39:16 GMT):
You’re leaving out how you made the image. Sorry, this feels like you need to do some digging of what you changed.

HiteshSharma (Sun, 07 Mar 2021 19:07:22 GMT):
Yes, you are right. When I build Besu as mentioned [here](https://wiki.hyperledger.org/display/BESU/Building+from+source), the JAR files that got created had different names than from the original ones.

HiteshSharma (Sun, 07 Mar 2021 19:07:22 GMT):
Yes, you are right. When I build Besu as mentioned [here](https://wiki.hyperledger.org/display/BESU/Building+from+source), the JAR files that got created had different names than from the original ones. So replacing the JAR files worked.

HiteshSharma (Sun, 07 Mar 2021 19:11:20 GMT):
If someone is looking to create custom Besu binaries, checkout this [link](https://wiki.hyperledger.org/display/BESU/Building+from+source). your JAR files are your

HiteshSharma (Sun, 07 Mar 2021 19:13:50 GMT):
If someone is looking to create custom Besu binaries, checkout this [link](). And your JAR files contains the changes. So make sure to use both - `bin` and `lib` directories.

HiteshSharma (Sun, 07 Mar 2021 19:13:50 GMT):
If someone is looking to create custom Besu binaries, checkout this [link](https://wiki.hyperledger.org/display/BESU/Building+from+source). And your JAR files contains the changes. So make sure to use both - `bin` and `lib` directories.

shemnon (Mon, 08 Mar 2021 02:08:42 GMT):
review request Remove EIP-2315 from Berlin: https://github.com/hyperledger/besu/pull/1986

trent.mohay (Mon, 08 Mar 2021 03:42:57 GMT):
hi @shail_19, So to confirm - you called clique_propose(, true) on more than 1/2 of your existing signer-nodes (with the same address at each node) - and said address did not become a signer?

trent.mohay (Mon, 08 Mar 2021 03:44:59 GMT):
hi shail_19, So to confirm - you called clique_propose(, true) on more than 1/2 of your existing signer-nodes (with the same address at each node) - and said address did not become a signer?

macfarla (Mon, 08 Mar 2021 04:04:37 GMT):
Check what does Tx reference? is there a constructor that matches what you're trying to pass in?

HiteshSharma (Mon, 08 Mar 2021 09:21:32 GMT):
I am using PoW for private network and I want to add custom validations when the Node(s) validates the Block. What is the correct file to look into?

HiteshSharma (Mon, 08 Mar 2021 14:56:07 GMT):

Clipboard - March 8, 2021 8:25 PM

rhart92 (Mon, 08 Mar 2021 23:47:08 GMT):
Has joined the channel.

Koen84 (Tue, 09 Mar 2021 01:12:06 GMT):
Are there any parameters i could tweak for a faster initial sync ? I'm running on stripe NVMe drives, 128GB RAM, EPYC 7502P 32-Core & symmetric GBe (in a DC) Besu is configured as ETH mainnet archive (yes it needs to be that).

prashantgangwar (Tue, 09 Mar 2021 08:55:43 GMT):
Hii all, Currently, the accounts can be whitelisted using smart contracts to carry out the transactions with the whitelisted accounts. I have changed the smart contract code and introduced a check over the target address. Inside *accountRules.sol* in * transactionAllowed* function to modify the account-list permissions such that the address in the account list can only deploy the contract; while all the accounts can do the transactions over the network. After that I am compiling the contracts and including the *deployedBytecode* from JSON artificates inside the *AccountIngress.json*. Then I am deploying the contracts on the besu node, after deployment and whitelisting the accounts, I am restarting the node with permissioning enabled. On restarting the besu node again the error came up * Supplied genesis block does not match stored chain data.* What I am doing wrong here?

NicolasMassart (Tue, 09 Mar 2021 09:43:33 GMT):
Hi, what kind of specific validation would you like to add? Understand that if you do this, you will then become incompatible with other Ethereum protocol clients or unmodified Besu.

HiteshSharma (Tue, 09 Mar 2021 09:55:51 GMT):
So we are looking into modifying the current use of `accounts-allowlist` to make a check on accounts allowed to deploy smart contracts; while all other txns will be allowed by every account.

HiteshSharma (Tue, 09 Mar 2021 09:56:42 GMT):
So, it is just a small extra check for **To** address in a txn.

NicolasMassart (Tue, 09 Mar 2021 10:03:01 GMT):
It's on the permissioning side then, great, nothing that changes the way tx are validated, it's before that. So that will require to be modified on all nodes of your network, otherwise you will have consensus issues. Let me do some research on you question now, will get back to you soon.

HiteshSharma (Tue, 09 Mar 2021 10:12:15 GMT):
These are the 2 files that I think must be related - - `MainnetBlockBodyValidator` - `BodyValidation`. I haven't tested this yet, but will be doing it today, after testing block creation with the same permissioning. Although I'm not sure whether these are the correct files and the flow is still not fully clear to me.

NicolasMassart (Tue, 09 Mar 2021 10:19:36 GMT):
I don't think doing this validation changes at block level on a private chain is the best. It will have too many side effects.

HiteshSharma (Tue, 09 Mar 2021 10:26:29 GMT):
The verification of blocks is an integral part of PoW consensus. I don't think adding a small check at that point would create any issue.

NicolasMassart (Tue, 09 Mar 2021 10:27:30 GMT):
It may be more something to update on the permissioning smart contract side that will tell Besu if a TX is allowed or not. See https://github.com/ConsenSys/permissioning-smart-contracts/blob/abfdd543dde1b7405c7729c7f2b91a9da37d7a3a/contracts/AccountRules.sol#L59 Once a modified version of this contract deployed, it may be able to check the transaction more than only on its sender address and check if it's a contract deployment from an unallowed account and return false otherwise return true. Then you have probably nothing to change in Besu, or a very few changes to do to make in places like org.hyperledger.besu.ethereum.permissioning.TransactionSmartContractPermissioningController#isPermitted to provide the added reason for rejections for instance.

HiteshSharma (Tue, 09 Mar 2021 10:30:33 GMT):
If the smart contract permissioning is enabled at the block verification, then I guess the change in the above said file will be enough. When I went through the code, I couldn't find any link b/w smart contract permissioning and the block verification.

HiteshSharma (Tue, 09 Mar 2021 10:31:09 GMT):
I guess I'll just have to try first with what you recommended.

NicolasMassart (Tue, 09 Mar 2021 10:49:19 GMT):
The link to the smart contract is done with CLI or env variables as explained in https://besu.hyperledger.org/en/stable/Tutorials/Permissioning/Getting-Started-Onchain-Permissioning/#5-set-the-environment-variables There's no default value. You set your ingress contract in the genesis and Besu will look for it if the variables or CLI options are found.

NicolasMassart (Tue, 09 Mar 2021 10:52:22 GMT):
If you updated the ingress contract code in the Genesis, that creates a different genesis block and that's probably why you have this error. Any change in the genesis block requires to reset the chain. you can do that by deleting the data for your nodes and start with a fresh chain. You can keep everything else: keys, configs, genesis (must be the same for each node).

prashantgangwar (Tue, 09 Mar 2021 11:29:47 GMT):
so after startup of besu node we can't touch genesis file in any condition. to achieve smart contract tweaks I have to compile the contracts and add the deployedBytecode in the genesis file and leave address to be 0x0000000000000000000000000000000000008888.

prashantgangwar (Tue, 09 Mar 2021 11:29:47 GMT):
so after startup of besu node we can't touch genesis file in any condition. to achieve smart contract tweaks I have to compile the contracts and add the deployedBytecode in the genesis file and leave address to be 0x0000000000000000000000000000000000008888. Is that correct ??

prashantgangwar (Tue, 09 Mar 2021 11:29:47 GMT):
so after startup of besu node we can't touch genesis file in any condition. to achieve smart contract tweaks I have to compile the contracts and add the deployedBytecode in the genesis file and leave address to be 0x0000000000000000000000000000000000008888. Is that correct ??

trent.mohay (Tue, 09 Mar 2021 11:57:06 GMT):
@HiteshSharma You're looking in the right area, but I tend to agree with @NicolasMassart and while you _can_ modify this area to work, it's probably not quite right, and that the Account Permissioning framework is a more scalable solution. I.e. you really want to reject a bad transaction _before_ it gets mined into a block

trent.mohay (Tue, 09 Mar 2021 11:59:48 GMT):
these are the unique message-codes used to identify messages in the Eth62 subprotocol

trent.mohay (Tue, 09 Mar 2021 12:00:31 GMT):
They allow besu to determine how a received packet is to be deserialised

HiteshSharma (Tue, 09 Mar 2021 12:05:41 GMT):
So, if a block is received by a node, the code for that would be **NEW_BLOCK**, right?

HiteshSharma (Tue, 09 Mar 2021 12:06:56 GMT):
And is it event based or besu is pooling to network?

diegoll (Tue, 09 Mar 2021 12:17:39 GMT):
if you have used the default [AccountIngress.sol](https://github.com/ConsenSys/permissioning-smart-contracts/blob/master/contracts/AccountIngress.sol), you can deploy an instance of [NodeRulesProxy.sol](https://github.com/ConsenSys/permissioning-smart-contracts/blob/master/contracts/NodeRulesProxy.sol) and set that address in your genesis ingress at `0x0...08888` by calling [setContractAddress](https://github.com/ConsenSys/permissioning-smart-contracts/blob/master/contracts/Ingress.sol#L39). By this way you wouldn't need to reset your chain

diegoll (Tue, 09 Mar 2021 12:23:16 GMT):
Those are messages from the wire protocol, you can read more about this protocol [here](https://github.com/ethereum/devp2p/blob/master/caps/eth.md)

HiteshSharma (Tue, 09 Mar 2021 12:43:38 GMT):
Thanks

NicolasMassart (Tue, 09 Mar 2021 13:24:04 GMT):
See https://github.com/ethereum/devp2p/blob/master/caps/eth.md#newblock-0x07

HiteshSharma (Tue, 09 Mar 2021 14:17:08 GMT):
Hey, the problem that I'm thinking is that any node can connect to my personal public network. So the node cannot be verified and if somehow that node publishes the block (let's say it uses different besu code or permissioning), I don't want genuine nodes to accept that block.

HiteshSharma (Tue, 09 Mar 2021 14:17:48 GMT):
This is what I'm thinking. Please correct me if I somehow understood the concepts wrong.

HiteshSharma (Tue, 09 Mar 2021 14:42:38 GMT):
An example of above could be that a bad node is defined a miner and it uses it's own custom besu code that bypasses the permissioning. In that case, the bad block will be accepted by every other node.

HiteshSharma (Tue, 09 Mar 2021 15:02:47 GMT):
Another question, is this type of scenario is even possible? And is there a better architecture to have genuine nodes only?

HiteshSharma (Tue, 09 Mar 2021 15:02:47 GMT):
Another question, is this type of scenario even possible? And is there a better architecture to have genuine nodes only?

trent.mohay (Wed, 10 Mar 2021 00:34:53 GMT):
So - besu supports "node-permissioning" - which is a list of the ethereum nodes which are allowed to communicate in the network. You can either have a text file on every node which lists its valid peers, or you can store in on-chain.

trent.mohay (Wed, 10 Mar 2021 00:35:14 GMT):
Any node not in the list, is rejected as part of the peering process.

arash009 (Wed, 10 Mar 2021 01:38:27 GMT):
@HiteshSharma I suggest looking into the smart contract based permissioning model. https://besu.hyperledger.org/en/stable/Concepts/Permissioning/Onchain-Permissioning/ Its specifically design to maintain consistency with all parties in a private network. The node permissioning logic will mean only nodes that are allowed can participate, and the account permissioning logic will define which accounts can transact and change the rules on the network. You can then extend this smart contract to add in additional rules around who can create contracts.

arash009 (Wed, 10 Mar 2021 01:38:49 GMT):
If you're looking for more specifc enterprise support, please reach out directly.

Weslito (Wed, 10 Mar 2021 10:27:12 GMT):
Has joined the channel.

Weslito (Wed, 10 Mar 2021 10:27:13 GMT):
Hi all, is there a commercial support for Besu? can't find it.

SuzanaMaranhao (Wed, 10 Mar 2021 13:29:41 GMT):
By the way, @atoulme. We discover the problem. We had a problem with enodes in the past that we had already solved. However, one bootnode was still seeing the old and wrong enode.

SuzanaMaranhao (Wed, 10 Mar 2021 13:29:41 GMT):
By the way, @atoulme. We discovered the problem. We had a problem with enodes in the past that we had already solved. However, one bootnode was still seeing the old and wrong enode.

SuzanaMaranhao (Wed, 10 Mar 2021 13:30:16 GMT):
The restarted this bootnode and it there is no error anymore.

shemnon (Wed, 10 Mar 2021 15:40:23 GMT):
The only downstream commercial support I am aware of at this moment is ConsenSys Quorum. (kind of how IBM Blockchain is a downstream of HL Fabric)

grace.hartley (Wed, 10 Mar 2021 16:37:03 GMT):
User User_1 added by grace.hartley.

atoulme (Wed, 10 Mar 2021 17:05:19 GMT):
Yay!

prashantgangwar (Wed, 10 Mar 2021 19:13:11 GMT):
@NicolasMassart function transactionAllowed( address sender, address target, // target uint256, // value uint256, // gasPrice uint256, // gasLimit bytes memory // payload ) public view returns (bool) { if((target == address(0) && accountPermitted(sender)) || (target != address(0))) { return true; } else { return false; } }

prashantgangwar (Wed, 10 Mar 2021 19:24:00 GMT):
@NicolasMassart ``` function transactionAllowed( address sender, address target, // target uint256, // value uint256, // gasPrice uint256, // gasLimit bytes memory // payload ) public view returns (bool) { if((target == address(0) && accountPermitted(sender)) || (target != address(0))) { return true; } else { return false; } } ``` I have changed the above code to fulfill the account permissioning for the deployment of the contract. After the deployment of the contract, I wasn't able to do the transaction from metamsak as it gives the error for the invalid parameters for both contract and ether transfer transaction. I have used clique consensus with a single node and also enabled the permissioning contract in the config.toml file.

prashantgangwar (Wed, 10 Mar 2021 19:32:12 GMT):
Steps followed:

prashantgangwar (Wed, 10 Mar 2021 19:34:43 GMT):
Steps followed: 1. Started the besu node with disabled onchain permissions in the config.toml file. 2. Deployed the contracts on the best node and added accounts and node in the allowlist by calling the contract methods. 3. Restarted the besu node with the onchain permissions enabled.

prashantgangwar (Wed, 10 Mar 2021 19:34:43 GMT):
Steps followed: 1. Started the besu node with disabled onchain permissions in the config.toml file. 2. Deployed the contracts on the besu node and added accounts and node in the allowlist by calling the contract methods. 3. Restarted the besu node with the onchain permissions enabled.

NicolasMassart (Wed, 10 Mar 2021 19:36:58 GMT):
Indeed the ingress contract should not be modified, but it can be updated to point to the real updated instance of your contract. You have to use the https://github.com/ConsenSys/permissioning-smart-contracts/blob/abfdd543dde1b7405c7729c7f2b91a9da37d7a3a/contracts/Ingress.sol#L39 to define the contract to be used in the end.

NicolasMassart (Wed, 10 Mar 2021 19:37:51 GMT):
@trent.mohay or @lucassaldanha any suggestion here?

prashantgangwar (Wed, 10 Mar 2021 19:39:42 GMT):

Screenshot from 2021-03-09 17-20-44.png

lucassaldanha (Wed, 10 Mar 2021 20:58:46 GMT):
Sorry I didn't understand the question. @pash

lucassaldanha (Wed, 10 Mar 2021 20:58:46 GMT):
Sorry I didn't understand the question. @prashantgangwar what do you mean by "I have changed the above code to fulfill the account permissioning for the deployment of the contract."

lucassaldanha (Wed, 10 Mar 2021 20:59:13 GMT):
What are you trying to achieve?

lucassaldanha (Wed, 10 Mar 2021 21:00:42 GMT):
And if you could provide your Besu configuration and trace logs of the node it would help us understanding what could be wrong.

SuzanaMaranhao (Wed, 10 Mar 2021 21:43:49 GMT):
Hello. We are using Truffle to deploy our smart contracts according with this doc: https://besu.hyperledger.org/en/stable/HowTo/Develop-Dapps/Truffle/. I would not want to left the private key as PLAIN text in the config file. Is there any way to use JSON UTC files to sign the deploy transaction?

SuzanaMaranhao (Wed, 10 Mar 2021 21:43:54 GMT):
I also looked directly at https://www.npmjs.com/package/@truffle/hdwallet-provider but there is no example to that.

diegoll (Wed, 10 Mar 2021 22:02:51 GMT):
Hello Suzana. I think [keythereum](https://github.com/ethereumjs/keythereum) can handle encrypted files, but at some point I would imagine you'll have to have the decryption password in plain text somewhere (at least in an environment variable)

prashantgangwar (Thu, 11 Mar 2021 07:08:38 GMT):
@lucassaldanha I have changed the smart contract code and introduced a check over the target address. Inside accountRules.sol in transactionAllowed function to modify the account-list permissions such that the address in the account list can only deploy the contract; while all the accounts can do the transactions over the network.

prashantgangwar (Thu, 11 Mar 2021 07:11:03 GMT):
# Valid TOML config file data-path="Permissioned-Network/Node-1" rpc-http-cors-origins=["all"] host-allowlist=["*"] # rpc-ws-enabled=true rpc-http-enabled=true rpc-http-api=["DEBUG","ETH", "NET", "WEB3", "EEA", "ADMIN", "CLIQUE", "PERM", "TXPOOL"] # logging="DEBUG" # Chain genesis-file="Permissioned-Network/cliqueGenesis.json" # Path to the custom genesis file rpc-http-host="0.0.0.0" permissions-nodes-contract-version=2 permissions-accounts-contract-enabled=true permissions-accounts-contract-address="0x0000000000000000000000000000000000008888" permissions-nodes-contract-enabled=true permissions-nodes-contract-address="0x0000000000000000000000000000000000009999" p2p-port=30303 rpc-http-port=8546``` ```

prashantgangwar (Thu, 11 Mar 2021 07:11:03 GMT):
``` # Valid TOML config file data-path="Permissioned-Network/Node-1" rpc-http-cors-origins=["all"] host-allowlist=["*"] # rpc-ws-enabled=true rpc-http-enabled=true rpc-http-api=["DEBUG","ETH", "NET", "WEB3", "EEA", "ADMIN", "CLIQUE", "PERM", "TXPOOL"] # logging="DEBUG" # Chain genesis-file="Permissioned-Network/cliqueGenesis.json" # Path to the custom genesis file rpc-http-host="0.0.0.0" permissions-nodes-contract-version=2 permissions-accounts-contract-enabled=true permissions-accounts-contract-address="0x0000000000000000000000000000000000008888" permissions-nodes-contract-enabled=true permissions-nodes-contract-address="0x0000000000000000000000000000000000009999" p2p-port=30303 rpc-http-port=8546 ```

prashantgangwar (Thu, 11 Mar 2021 07:20:42 GMT):
Genesis file ~https://plnkr.co/edit/QuDRNg6CS5gOR62W?open=lib%2Fscript.js~

prashantgangwar (Thu, 11 Mar 2021 07:20:42 GMT):
Genesis file `https://plnkr.co/edit/QuDRNg6CS5gOR62W?open=lib%2Fscript.js`

prashantgangwar (Thu, 11 Mar 2021 07:20:42 GMT):
Genesis file _https://plnkr.co/edit/QuDRNg6CS5gOR62W?open=lib%2Fscript.js_

shail_19 (Thu, 11 Mar 2021 13:21:36 GMT):

nodeingresscontract deployement failure

shail_19 (Thu, 11 Mar 2021 13:21:36 GMT):

nodeingresscontract deployement failure

shail_19 (Thu, 11 Mar 2021 13:21:36 GMT):

nodeingresscontract deployement failure

shail_19 (Thu, 11 Mar 2021 13:21:36 GMT):

nodeingresscontract deployement failure

shail_19 (Thu, 11 Mar 2021 13:21:36 GMT):

nodeingresscontract deployement failure

shail_19 (Thu, 11 Mar 2021 13:21:36 GMT):

nodeingresscontract deployement failure

shail_19 (Thu, 11 Mar 2021 13:30:15 GMT):

oie_qFnEG7FYukVf.png

SuzanaMaranhao (Thu, 11 Mar 2021 14:01:00 GMT):
Make sense, @diegoll. Thanks. Our company is used to deal with passwords. The main point is to remove the sensitive info away from the config file.

helderjnpinto (Thu, 11 Mar 2021 14:58:14 GMT):
Hello. I have a IBFT network and i get some problems with other Ethereum nodes trying connect for some reason the nodes stay awaiting for peers... after i test shutdown connections to external internet only giving access to private network, restarted all nodes and all works fine. So i don't want cut external connections in P2P because other people may want connect to this network and sync from a private node. Also i did --required-block flag but not resolve this issue. If i disable p2p discovery and add static-node.json is a solution for stopping this other peers connecting or i need to add nodes-whitelist https://besu.hyperledger.org/en/1.4.4/HowTo/Limit-Access/Local-Permissioning/#permissions-configuration-file ?

helderjnpinto (Thu, 11 Mar 2021 15:01:04 GMT):
adding the nodes-whitelist is possible to get my private network working + external same clients version to connect excluding (Geth, Parity, OpenEthereum nodes... )?

HiteshSharma (Thu, 11 Mar 2021 16:01:12 GMT):
Ran into the same issue. Was following the [onchain permissioning](https://besu.hyperledger.org/en/stable/Tutorials/Permissioning/Getting-Started-Onchain-Permissioning/) from the docs. I have the pre-deployed ingress contracts in my genesis file and using the same env. variables as mentioned in the example guide. If I remove addresses env. variables, the migration scripts are deploying contracts with different address. Any help @NicolasMassart

HiteshSharma (Thu, 11 Mar 2021 16:01:12 GMT):
Ran into the same issue. Was following the [onchain permissioning](https://besu.hyperledger.org/en/stable/Tutorials/Permissioning/Getting-Started-Onchain-Permissioning/) from the docs. I created a network successfully from here - https://besu.hyperledger.org/en/stable/Tutorials/Examples/Private-Network-Example. But when I'm trying onchain permissioning using the pre-deployed ingress contracts in my genesis file and using the same env. variables as mentioned in https://besu.hyperledger.org/en/stable/Tutorials/Permissioning/Getting-Started-Onchain-Permissioning/#5-set-the-environment-variables. If I remove these addresses env. variables, the migration scripts are deploying contracts with different address. Any help @NicolasMassart

NicolasMassart (Thu, 11 Mar 2021 17:16:38 GMT):
This is an error from https://github.com/ConsenSys/permissioning-smart-contracts/blob/c72cc42e7307d52ae218950918baf10a6227071a/migrations/3_deploy_node_ingress_rules_contract.js#L35 And it usually means that either the ingress contract address is wrong, but you may have copied it from the doc, or that the Ingress contract was not included in the genesis file. Can you provide your genesis file please?

HiteshSharma (Thu, 11 Mar 2021 18:00:45 GMT):

ethHashGenesis.txt

HiteshSharma (Thu, 11 Mar 2021 18:00:45 GMT):

ethHashGenesis.txt

HiteshSharma (Thu, 11 Mar 2021 18:00:45 GMT):

ethHashGenesis.txt

HiteshSharma (Thu, 11 Mar 2021 18:09:09 GMT):

ethHashGenesis.txt

HiteshSharma (Thu, 11 Mar 2021 18:38:20 GMT):

Clipboard - March 12, 2021 12:05 AM

HiteshSharma (Thu, 11 Mar 2021 18:38:20 GMT):

Clipboard - March 12, 2021 12:05 AM

HiteshSharma (Thu, 11 Mar 2021 18:38:20 GMT):

Clipboard - March 12, 2021 12:05 AM

HiteshSharma (Thu, 11 Mar 2021 18:39:34 GMT):
One more thing that whenever I'm compiling the contracts, they are always generating different addresses, but as per this [stack exchange](https://ethereum.stackexchange.com/questions/760/how-is-the-address-of-an-ethereum-contract-computed/761#761) answer, that should not happen I guess.

RobbeV 1 (Thu, 11 Mar 2021 19:23:53 GMT):
Hey everyone, as far as i can understand every besu node is linked with an orion node via a keypair. This way you can make private transactions between different nodes. What if my network only has a handfull of nodes, but a hundred accounts using these nodes with their wallets. How would u go about using the privacy features between all these accounts? They dont have a orion node linked to their keys.

arash009 (Thu, 11 Mar 2021 22:49:00 GMT):
Hi @RobbeV 1 this is allowed using the multi-tenancy feature. For more details refer to https://besu.hyperledger.org/en/stable/Concepts/Privacy/Multi-Tenancy/

arash009 (Thu, 11 Mar 2021 22:51:27 GMT):
If you want external unknown nodes to connect to your network then you cant use permissioning and ideally not static peers. Permissioning will allow you to operate on a public network but only with known nodes.

HiteshSharma (Fri, 12 Mar 2021 08:12:25 GMT):
Another thing is I was using the network from the [Private Network Example](https://besu.hyperledger.org/en/stable/Tutorials/Examples/Private-Network-Example/)

NicolasMassart (Fri, 12 Mar 2021 08:13:00 GMT):
It's fine for the address to be different for each compilation, it depends on you address and nonce and contract. The SE answer says "deterministically computed from the address of its creator (sender) and how many transactions the creator has sent (nonce)" so if the nonce changes, the address will.

NicolasMassart (Fri, 12 Mar 2021 08:13:11 GMT):
Your genesis file looks fine.

NicolasMassart (Fri, 12 Mar 2021 08:14:40 GMT):
If you used the network from the private network example, then you have to reset the chain as the tutorial doesn't include the contracts in the genesis. You may need to delete the data folder to start from a fresh network.

NicolasMassart (Fri, 12 Mar 2021 08:16:19 GMT):
Also for the contract address being different each time you build/deploy it, it's not an issue, that's why the ingress contract is there. Once you deployed your contract on the network, you have to register the address in the ingress contract (who has a fixed defined address). Ingress contract is a proxy.

helderjnpinto (Fri, 12 Mar 2021 11:03:12 GMT):
so this is my problem ... i don't know how resolve this and i don't understand how ethereum clients is connecting in my peer IBFT2.0 the connections is disconnected but for some reason validators not join to each other via public bootnode

helderjnpinto (Fri, 12 Mar 2021 11:03:28 GMT):
and all have --genesis specified

helderjnpinto (Fri, 12 Mar 2021 11:03:37 GMT):
and --bootnode

helderjnpinto (Fri, 12 Mar 2021 11:03:43 GMT):
and --required-block

helderjnpinto (Fri, 12 Mar 2021 11:06:00 GMT):
i think static-nodes.json and disabling p2p discovery in all nodes not stop the issue totally and i get external peers from my network to join via only two publicnodes

helderjnpinto (Fri, 12 Mar 2021 11:06:00 GMT):
i think static-nodes.json and disabling p2p discovery in all nodes not stop the issue totally and i get external peers from my network to join via only two public nodes

helderjnpinto (Fri, 12 Mar 2021 11:06:28 GMT):
firewall is not a solution for this i think

helderjnpinto (Fri, 12 Mar 2021 11:07:28 GMT):
because is the same port but different peers ips ... and i cant filter valid and invalid peers through this way

Skoya (Fri, 12 Mar 2021 12:42:56 GMT):
Has joined the channel.

Skoya (Fri, 12 Mar 2021 12:42:57 GMT):
Hi all, does anyone know where I can get a native Secp256k1 library for windows that Besu will recognise?

HiteshSharma (Fri, 12 Mar 2021 18:27:33 GMT):
Thanks @NicolasMassart, I was able to deploy the contract using your instructions. The issue was that the byte code used in the genesis file was wrong. That was silly of me and I don't remember where I copy that from. But that was the problem. Another thing I noticed is that when using multi node network setup, the contract is deployable only if the RPC node is also a miner. Why is it so?

HiteshSharma (Fri, 12 Mar 2021 18:29:21 GMT):
Thanks @NicolasMassart, I was able to deploy the contract using your instructions. The issue was that the byte code used in the genesis file was wrong. That was silly of me and I don't remember where I copy that from. But that was the problem. Another thing I noticed is that when using multi node network setup, the contract is deployable only if the RPC node is also a miner. I tried other possible setup but that didn't worked. Why is it so?

HiteshSharma (Fri, 12 Mar 2021 18:29:21 GMT):
Thanks @NicolasMassart, I was able to deploy the contract using your instructions. The issue was that the byte code used in the genesis file was wrong. That was silly of me and I don't remember where I copy that from. But that was the problem. Another thing I noticed is that when using multi node network setup, the contract is deployable only if the RPC node is also a miner. I tried other possible setup but that didn't worked. Why is it so? BTW I'm using containers.

HiteshSharma (Fri, 12 Mar 2021 18:29:21 GMT):
Thanks @NicolasMassart, I was able to deploy the contract using your instructions. The issue was that the byte code used in the genesis file was wrong. That was silly of me and I don't remember where I copy that from. But that was the problem.

HiteshSharma (Fri, 12 Mar 2021 19:36:15 GMT):
@arash009 I think we can have permissioning enabled for external nodes. Although, we need to get the enode URL for the node and have to add it to the nodes allowlist.

HiteshSharma (Fri, 12 Mar 2021 19:37:39 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=fdoZ9KAKzEsZiLtsd) @helderjnpinto if you are having trouble with validators not connecting with each other, please have a look at this [example](https://besu.hyperledger.org/en/stable/Tutorials/Examples/Private-Network-Example/). You should be able to resolve this issue.

HiteshSharma (Fri, 12 Mar 2021 19:46:43 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=JGt4bi8tcXmYQnX6f) You can't check the validity of peers if your public network does not have permissioning enabled. Since anyone can join, and a disconnected node can even join again. On the other hand, if you enable permissions, you can use the Dapp from this [example](https://besu.hyperledger.org/en/stable/Tutorials/Permissioning/Getting-Started-Onchain-Permissioning/#9-start-the-permissioning-management-dapp). You can add and remove nodes from here. No node will be able to connect to the network directly. They need to be added to the list first. If you are looking for off-chain permissioning, it might be difficult to setup. I haven't tried it yet, but I think Besu stores the allowed nodes when starting the node, and if a new node has to be added, all the nodes have to be restarted.

HiteshSharma (Sat, 13 Mar 2021 08:56:51 GMT):
Hey, I'm using Ingress contracts on my network. One thing I noticed is that when using multi node network setup, the contract is deployable only if the RPC node is also a miner. I tried other possible setup but that didn't worked. Why is it so? BTW I'm using containers.

shemnon (Sat, 13 Mar 2021 12:30:41 GMT):
The library only build linux and mac binaries at the moment - https://github.com/hyperledger/besu-native

shemnon (Sat, 13 Mar 2021 12:31:04 GMT):
Building a windows DLL on CircleCI is a blindspot for us right now.

lucassaldanha (Sun, 14 Mar 2021 19:57:58 GMT):
This doesn't sound right. You should be able to have "non-miner" nodes in the network. Could you share the config file that you are using for your nodes? Also the debug logs would help us understanding what could be happening. Also, what do you mean by "the contract is deployable"? What contract is this?

lucassaldanha (Sun, 14 Mar 2021 20:07:27 GMT):
Thanks for the extra info. What process are you using to update the account permissioning contract? e.g. are you using truffle or are you doing it manually? I think the first thing we need to know is if the updated account rules contract has been deployed successfully, and if the Account Ingress contract has been updated to point to the address of the new Account Rules contract.

lucassaldanha (Sun, 14 Mar 2021 20:07:38 GMT):
So I'd start validating these

lucassaldanha (Sun, 14 Mar 2021 20:08:52 GMT):
Also, if you have the debug logs from Besu, when you send the transaction, it could help tracking the problem down.

macfarla (Sun, 14 Mar 2021 23:35:06 GMT):
Yeah the only scenario that I can think of that would cause this is if you have permissioning turned on from the get go (ie before you have deployed the contracts) - then if your RPC node does not have permission to contact the miner it won't be able to communicate - but you could get around this by using bootnodes config to bootstrap them - or turn on permissioning once the contracts are deployed.

arijit_6 (Mon, 15 Mar 2021 06:51:35 GMT):
Hi All, I am trying to do private transactions with Clique 4 node setup and running this script - https://github.com/ConsenSys/web3js-eea/blob/master/example/multiNodeExample/deployContract.js for smart contract deployment, but not getting contract address after deployment. Please help me on this. Command used for node startup: ``` besu --data-path=data --genesis-file=../cliqueGenesis.json --network-id 123 --rpc-http-enabled --rpc-http-api=ADMIN,CLIQUE,DEBUG,EEA,MINER,PERM,PLUGINS,PRIV,TRACE,TXPOOL --host-allowlist="*" --rpc-http-cors-origins="all" --rpc-http-host=0.0.0.0 --p2p-host=0.0.0.0 --privacy-enabled --privacy-url=http://127.0.0.1:8888 --privacy-public-key-file=orion/nodeKey.pub --min-gas-price=0 ``` Output: ``` Transaction Hash 0x5168a737a06f0ceaa339fd4220875c51990249c9264b1f90454f90cf78c45984 Error: Returned error: Method not enabled```

arijit_6 (Mon, 15 Mar 2021 06:51:35 GMT):
Hi All, I am trying to do private transactions with Clique 4 node setup and running this script - https://github.com/ConsenSys/web3js-eea/blob/master/example/multiNodeExample/deployContract.js for smart contract deployment, but not getting contract address after deployment. Please help me on this. Command used for node startup: `besu --data-path=data --genesis-file=../cliqueGenesis.json --network-id 123 --rpc-http-enabled --rpc-http-api=ADMIN,CLIQUE,DEBUG,EEA,MINER,PERM,PLUGINS,PRIV,TRACE,TXPOOL --host-allowlist="*" --rpc-http-cors-origins="all" --rpc-http-host=0.0.0.0 --p2p-host=0.0.0.0 --privacy-enabled --privacy-url=http://127.0.0.1:8888 --privacy-public-key-file=orion/nodeKey.pub --min-gas-price=0` Output: `Transaction Hash 0x5168a737a06f0ceaa339fd4220875c51990249c9264b1f90454f90cf78c45984 Error: Returned error: Method not enabled`

NicolasMassart (Mon, 15 Mar 2021 07:33:29 GMT):
Oh, interesting. You recompiled the ingress contract and it worked instead of using the compiled hex data provided in our documentation? Did you change something to the code or just recompiled?

AliAbuHelal (Mon, 15 Mar 2021 08:34:20 GMT):
Has joined the channel.

AliAbuHelal (Mon, 15 Mar 2021 08:34:21 GMT):
hi

Dazel (Mon, 15 Mar 2021 16:54:25 GMT):
Has joined the channel.

Dazel (Mon, 15 Mar 2021 16:54:25 GMT):
Hi, I'm following the Create a permissioned network tutorial on the docs (https://besu.hyperledger.org/en/stable/Tutorials/Permissioning/Create-Permissioned-Network), and I'm unable to send a transaction using MetaMask, as it stays on pending. On the node terminals, I can see the message "No sync target, waiting for peers: 2". What am I doing wrong?

Dazel (Mon, 15 Mar 2021 16:54:25 GMT):

lucassaldanha (Mon, 15 Mar 2021 20:17:22 GMT):
Could you try enabling the debug or trace logs in the nodes and posting them so we can try to help? https://besu.hyperledger.org/en/latest/HowTo/Troubleshoot/Troubleshooting/#logging

Dazel (Mon, 15 Mar 2021 21:51:22 GMT):

Screenshot from 2021-03-15 22-50-38.png

Dazel (Mon, 15 Mar 2021 21:52:36 GMT):
I don't know if this is what you asked for, sorry if I'm mistaken

lucassaldanha (Mon, 15 Mar 2021 22:32:37 GMT):
Yes, that's what I asked for. I wanted to check if the node permissioning rules were rejecting other node's connections. From the log, it looks like they are able to talk to each other. In the other node's logs, do you see the same msg: "[...] Node permissioning: permitted enode [...]"

shemnon (Tue, 16 Mar 2021 00:58:15 GMT):
Besu Office Hours in ~14 hours - https://wiki.hyperledger.org/display/BESU/2021-03-16+Besu+Office+Hours Feel free to stop in and ask questions!

mohjam2004 (Tue, 16 Mar 2021 05:39:06 GMT):
Has joined the channel.

mohjam2004 (Tue, 16 Mar 2021 05:39:07 GMT):
hi. I want to deploy besu-hyperledger with BAF V0.7.0 in a kubernetes cluster. what steps should I take? is there any document by with I can deploy?

timbeiko (Tue, 16 Mar 2021 14:49:21 GMT):
:de::rotating_light: Besu Berlin Bug :rotating_light::de: We found an issue related to the Berlin upgrade in Besu 21.1.0 and 21.1.1. If you are using Besu, please download 21.1.2 and upgrade your node as soon as possible. The Goerli upgrade is scheduled for less than 24h from now. https://github.com/hyperledger/besu/releases/tag/21.1.2

timbeiko (Tue, 16 Mar 2021 14:49:21 GMT):
:de::rotating_light: Besu Berlin Bug :rotating_light::de: We found an issue related to the Berlin upgrade in Besu 21.1.0 and 21.1.1. If you are using Besu, please download 21.1.2 and upgrade your node as soon as possible. The Goerli upgrade is scheduled for less than 24h from now. https://github.com/hyperledger/besu/releases/tag/21.1.2

shemnon (Tue, 16 Mar 2021 15:03:42 GMT):
office hours: new link -> https://consensys.zoom.us/j/98246444303

Dazel (Tue, 16 Mar 2021 15:20:22 GMT):
Yes, on all three nodes

shemnon (Tue, 16 Mar 2021 16:12:48 GMT):

HiteshSharma (Tue, 16 Mar 2021 18:19:26 GMT):
Is your Metamask connected to your network? Make sure you have the right URL and Chain Id.

Dazel (Tue, 16 Mar 2021 18:28:11 GMT):
I think so; the URL is the localhost in this case, right?

HiteshSharma (Tue, 16 Mar 2021 18:31:29 GMT):
I copied it first from the recompiled hex code. Then just for verification checked it in the documentation. Both were same. The one that I had in my code was different from both, which I don't know how did that happen. So the one mentioned in the docs is the correct one.

HiteshSharma (Tue, 16 Mar 2021 18:34:13 GMT):
URL should be - *http://localhost:8545* and Chain Id should be - *1981*

HiteshSharma (Tue, 16 Mar 2021 18:35:21 GMT):
You can check the network in your Metamask and create a new one if it does not exist.

Dazel (Tue, 16 Mar 2021 18:37:28 GMT):
These are my current settings. I have just seen that Metamask says that the network is not connected

Dazel (Tue, 16 Mar 2021 18:38:43 GMT):
Nevermind, I connected the accounts; the problem still persists though

cbfh (Tue, 16 Mar 2021 20:35:03 GMT):
Has joined the channel.

cbfh (Tue, 16 Mar 2021 20:35:03 GMT):
Hey everyone, I'm a bit confused about what Besu does. Would I able to create a private blockchain that uses the ethereum technology, with my own private currency? Or it only works with the main ethereum blockchain?

shemnon (Tue, 16 Mar 2021 20:37:36 GMT):
Both, which is probably why you are confused.

shemnon (Tue, 16 Mar 2021 20:37:36 GMT):
You can do both, which is probably why you are confused.

shemnon (Tue, 16 Mar 2021 20:38:14 GMT):
We have configurations for the named netowkrs (mainnet, classic) and testnets (ropsten, rinkeby, goerli, kotti, mordor, astor).

shemnon (Tue, 16 Mar 2021 20:38:14 GMT):
We have configurations for the named production networks (mainnet, classic) and testnets (ropsten, rinkeby, goerli, kotti, mordor, astor).

shemnon (Tue, 16 Mar 2021 20:39:37 GMT):
But you can also set up private or public networks too with custom configurations. There are a number of enterprise features that can be added to these custom networks such as private transactions and node permissioning (search for lacchain on github for an example)

cbfh (Tue, 16 Mar 2021 20:40:14 GMT):
Oh, that's really nice. Thanks!

macfarla (Wed, 17 Mar 2021 00:03:25 GMT):
I think you need to add `ETH` to the api list

rampatra (Thu, 18 Mar 2021 14:23:15 GMT):
I have started besu locally with this command: ``` docker run -p 8546:8546 --mount type=bind,source=/Users/rp/Projects/besu-dev,target=/var/lib/besu hyperledger/besu:latest --miner-enabled --miner-coinbase fe3b557e8fb62b89f4916b721be55ceb828dbd73 --rpc-ws-enabled --rpc-http-enabled --network=dev --data-path=/var/lib/besu ``` And, I see in the logs that the http service is started at localhost:8545. However, when I try to connect at the same host and port, I do not get any response. Any ideas?

rampatra (Thu, 18 Mar 2021 15:53:17 GMT):
I have started besu locally with the command: ``` docker run -p 8545:8545 --mount type=bind,source=/Users/rp/Projects/besu-dev,target=/var/lib/besu hyperledger/besu:latest --miner-enabled --miner-coinbase fe3b557e8fb62b89f4916b721be55ceb828dbd73 --rpc-ws-enabled --rpc-http-enabled --network=dev --data-path=/var/lib/besu ``` However, when I try to get the web3 client version like below, I do not get any response: ``` Web3j web3 = Web3j.build(new HttpService()); // defaults to http://localhost:8545/ Web3ClientVersion web3ClientVersion = web3.web3ClientVersion().sendAsync().get(); String clientVersion = web3ClientVersion.getWeb3ClientVersion(); System.out.println("Version" + clientVersion); ``` Any ideas as to what I may be doing wrong?

rampatra (Thu, 18 Mar 2021 15:58:37 GMT):
I tried running besu with this `docker run -p 8545:8545 -p 13001:30303 hyperledger/besu:latest --rpc-http-enabled` but still no response. :(

diegoll (Thu, 18 Mar 2021 16:14:08 GMT):
Hello rampatra, try adding `--rpc-http-host=0.0.0.0` so Besu binds the rpc interface to all available in the container

diegoll (Thu, 18 Mar 2021 16:15:08 GMT):
I think you most likely will need to add `--host-allowlist=*` as well to allow connections from the host

rampatra (Thu, 18 Mar 2021 16:24:26 GMT):
Tried both but still no luck

rampatra (Thu, 18 Mar 2021 16:24:50 GMT):
and in the logs I see that besu binds to 0.0.0.0 even without the flag.

rampatra (Thu, 18 Mar 2021 16:25:44 GMT):
Any other tips? 🤔

rampatra (Thu, 18 Mar 2021 16:26:37 GMT):
When I do a simple get call to `localhost:8545` on the browser, I see a blank page though. So, that's some response.

rampatra (Thu, 18 Mar 2021 16:28:25 GMT):
I just did a call from postman and I get the response: ``` { "jsonrpc": "2.0", "id": 1, "result": "0x5e39a0a66544c0668bde22d61c47a8710000ece931f13b84d3b2feb44ec96d3f" } ```

rampatra (Thu, 18 Mar 2021 16:28:38 GMT):
so that means my besu setup is okay

rampatra (Thu, 18 Mar 2021 16:28:44 GMT):
it is the web3j then

diegoll (Thu, 18 Mar 2021 16:28:55 GMT):
excellent

rampatra (Thu, 18 Mar 2021 16:31:08 GMT):
But do you have any idea about web3j? Why it isnt working? Didnt get any reply from their gitter chat group :(

rampatra (Thu, 18 Mar 2021 16:31:24 GMT):
Thanks for the help 🙏

diegoll (Thu, 18 Mar 2021 16:31:34 GMT):
no, I'm sorry, I've never used that library

rampatra (Thu, 18 Mar 2021 16:59:37 GMT):
okay, nw

rampatra (Thu, 18 Mar 2021 16:59:37 GMT):
okay, nw. 👍

shemnon (Fri, 19 Mar 2021 01:40:46 GMT):
do you get resonses from http://localhost:8545/readiness and http://localhost:8545/liveness?

salbonico (Fri, 19 Mar 2021 22:29:07 GMT):
Ok, so new guy question; I am able to successfully get the onchain based permissions up and running using clique consensus via the docs, but I am not seeing any docs on doing this with IBFT2. Are there any docs for that that I am missing?

shemnon (Fri, 19 Mar 2021 22:49:46 GMT):
I expect it is the same process. Just with a different consensus setting in the chain genesis file.

shemnon (Fri, 19 Mar 2021 22:51:31 GMT):
Permissioning is not dependent on the consensus algorithm.

shemnon (Sat, 20 Mar 2021 01:20:49 GMT):
Proposal: Move 4 maintainers to Emeritus status: https://github.com/hyperledger/besu/pull/2048

HiteshSharma (Sat, 20 Mar 2021 13:51:21 GMT):
There are two things in the configurations that I don't understand. Please explain with some practical example - 1. What is difference between `p2p-interface` and `p2p-host`? 2. What is the use of `miner extra data`? I know that it gets saved in the block, but why to do so, and how it helps?

HiteshSharma (Sat, 20 Mar 2021 13:53:44 GMT):
It's just as @shemnon mentioned. Here is the quick link - https://besu.hyperledger.org/en/21.1.0/Tutorials/Private-Network/Create-IBFT-Network/

HiteshSharma (Sat, 20 Mar 2021 13:55:02 GMT):
This one is for v21.1.0. Change the docs for your version. Though they will likely be same.

shemnon (Sat, 20 Mar 2021 15:19:08 GMT):
p2p host is what is advertised in the p2p messages as the host address, i.e. the public non-firewalled address. p2p-interface is what address is bound to locally. If you have only one network card then 0.0.0.0 is an acceptable interface. If you use nat-method=upnp or docker it should auto-populate.

shemnon (Sat, 20 Mar 2021 15:19:49 GMT):
miner extra data is for the graffiti or vanity data.

shemnon (Sat, 20 Mar 2021 15:20:30 GMT):
the extra data field is used in PoA algorithms like clique, ibft, and qbft for signing, but they leave room for vanity bytes.

VladLupashevskyi (Mon, 22 Mar 2021 18:19:44 GMT):
Hi guys, any idea how to make pending jobs here start? https://github.com/hyperledger/besu/pull/1977

GarySchulte (Mon, 22 Mar 2021 18:46:22 GMT):
Has joined the channel.

lucassaldanha (Mon, 22 Mar 2021 22:47:38 GMT):
I'll poke it to see if they kickoff

coenie (Tue, 23 Mar 2021 11:19:02 GMT):
Hi, regarding the genesis config of a private network, is there an easy way to know which EIPs are included with which milestones?

atoulme (Tue, 23 Mar 2021 16:48:38 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=xhbNxDDGfHyvG7GZq) you can look at ProtocolScheduleBuilder in the code. All hard forks are documented elsewhere I think.

diegoll (Tue, 23 Mar 2021 23:16:22 GMT):
Hi all, I'm having an issue using Truffle (at least on v5.2.5) with Besu. Basically the [MetaCoin sample project](https://www.trufflesuite.com/docs/truffle/getting-started/creating-a-project) doesn't deploy properly. It seems like it's a Truffle [bug](https://github.com/trufflesuite/truffle/issues/3913) and in the thread they're blaming the `--rpc.allow-unprotected-txs` added to geth. The thing is that I'm seeing a surprisingly similar behavior on Besu which, AFAIK, still allows non EIP-155 compliance txs (ref: [PR#1980](https://github.com/hyperledger/besu/pull/1980)), throwing an exception with the following message `An unsupported encoded 'v' value of 0 was found`. The only tweak needed on the sample project to reproduce it is to add a HDWalletProvider to the `truffle-config.js` for hitting _dev_ network accounts. Has anybody else experienced the same?

diegoll (Tue, 23 Mar 2021 23:16:22 GMT):
Hi all, I'm having an issue using Truffle (at least on v5.2.5) with Besu. Basically the [MetaCoin sample project](https://www.trufflesuite.com/docs/truffle/getting-started/creating-a-project) doesn't deploy properly. It seems like it's a Truffle [bug](https://github.com/trufflesuite/truffle/issues/3913) and in the thread they're blaming the `--rpc.allow-unprotected-txs` added to geth. The thing is that I'm seeing a surprisingly similar behavior on Besu which, AFAIK, still allows non EIP-155 compliance txs (ref: [PR#1980](https://github.com/hyperledger/besu/pull/1980) ), throwing an exception with the following message `An unsupported encoded 'v' value of 0 was found`. The only tweak needed on the sample project to reproduce it is to add a HDWalletProvider to the `truffle-config.js` for hitting _dev_ network accounts. Has anybody else experienced the same?

diegoll (Tue, 23 Mar 2021 23:16:22 GMT):
Hi all, I'm having an issue using Truffle (at least on v5.2.5) with Besu. Basically the [MetaCoin sample project](https://www.trufflesuite.com/docs/truffle/getting-started/creating-a-project) doesn't deploy properly. It seems like it's a Truffle [bug](https://github.com/trufflesuite/truffle/issues/3913) and in the thread they're blaming the `--rpc.allow-unprotected-txs` added to geth. The thing is that I'm seeing a surprisingly similar behavior on Besu which, AFAICS, still allows non EIP-155 compliance txs (ref: [PR#1980](https://github.com/hyperledger/besu/pull/1980) ), throwing an exception with the following message `An unsupported encoded 'v' value of 0 was found`. The only tweak needed on the sample project to reproduce it is to add a HDWalletProvider to the `truffle-config.js` for hitting _dev_ network accounts. Has anybody else experienced the same?

diegoll (Tue, 23 Mar 2021 23:24:28 GMT):
I tried some older 5.1.x versions of Truffle as well, with the same result, but I would blame the usual dependency instability that comes along with npm dependencies. I had a project with a cached `node_modules` which deployed fine, but once I wiped it out and installed the new Truffle version it never deployed again. Sadly, I lose the `package-lock.json` to know the proper working versions. Anyway, I went and tried the sample project with the reported results

diegoll (Wed, 24 Mar 2021 01:33:36 GMT):
nevermind, the issue was about using `@truffle/hdwallet-provider` version `1.2.4` :unamused: (ref: [comment@issue#3939](https://github.com/trufflesuite/truffle/issues/3939#issuecomment-804667940))

diegoll (Wed, 24 Mar 2021 01:33:36 GMT):
nevermind, the issue was about using `@truffle/hdwallet-provider` version `1.2.4` :unamused: (ref: [comment@issue#3939](https://github.com/trufflesuite/truffle/issues/3939#issuecomment-804667940) )

cbfh (Wed, 24 Mar 2021 16:12:51 GMT):
Hey everyone. I'm trying to create a zero gas permissioned network following this two pages in the docs: (https://besu.hyperledger.org/en/stable/Tutorials/Permissioning/Create-Permissioned-Network/) (https://besu.hyperledger.org/en/stable/HowTo/Configure/FreeGas/). When I try to send a transaction through Metamask between the imported accounts the transaction stays on 'pending', although blocks keep being created. The transactions send properly when I'm using a non-zero gas network. Why is this happening?

rampatra (Wed, 24 Mar 2021 21:14:17 GMT):
Are there any docs explaining how to run besu locally (preferably via docker) with a private chain and ibft consensus protocol?

rampatra (Wed, 24 Mar 2021 21:17:03 GMT):
The link here: https://besu.hyperledger.org/en/stable/Tutorials/Private-Network/Create-IBFT-Network/ explains how to do the above but not via docker. Is there a doc explaining how to do this with docker instead? 🤔

diegoll (Thu, 25 Mar 2021 00:30:19 GMT):
Hello rampatra, you can take a look here https://github.com/ConsenSys/quorum-dev-quickstart/blob/master/files/besu/README.md

RobbeV 1 (Thu, 25 Mar 2021 10:02:32 GMT):
Hi everyone, I'm having a problem migrating my contracts on my besu network. When i try to migrate on my ganache network there is no problem. The migration error says:

RobbeV 1 (Thu, 25 Mar 2021 10:02:32 GMT):
Hi everyone, I'm having a problem migrating my contracts on my besu network. When i try to migrate on my ganache network there is no problem. The migration error says: `Error: *** Deployment Failed *** "Migrations" -- Internal error`

RobbeV 1 (Thu, 25 Mar 2021 10:02:32 GMT):
Hi everyone, I'm having a problem migrating my contracts on my besu network. When i try to migrate on my ganache network there is no problem. The migration error says: `Error: *** Deployment Failed *** "Migrations" -- Internal error`. The node that gets the request says this: `bootnode | 2021-03-25 10:03:57.756+00:00 | vert.x-worker-thread-15 | ERROR | JsonRpcHttpService | Error processing JSON-RPC requestBody bootnode | java.lang.RuntimeException: An unsupported encoded `v` value of 0 was found`.

diegoll (Thu, 25 Mar 2021 11:34:14 GMT):
Hello RobbeV, try downgrading `@truffle/hdwallet-provider` to some version earlier than `1.2.4` which is [broken](https://github.com/trufflesuite/truffle/issues/3939#issuecomment-804667940)

RobbeV 1 (Thu, 25 Mar 2021 12:53:03 GMT):
Thanks diegoll, that worked!

RobbeV 1 (Fri, 26 Mar 2021 15:27:49 GMT):
Hi everyone, I was looking into pruning with hyperledger besu, and I have 2 questions: First of all, pruning is not supported for private transactions, is this something that will come in the future or is not possible? Second, I read that fast synchronization is enabled by default, wich also enables pruning by default. Therefor my network should allready be using pruning? I have used private transactions on this network so I'm a bit confused. Maybe it means that the public state can be pruned but not the private states?

RobbeV 1 (Fri, 26 Mar 2021 15:35:14 GMT):
To add to this, I checked the diskspace of my 4 nodes, 2 of them are 1GB in size, while to others are 250MB in size. all 4 have the same configurations. except that one is a bootnode ofc. Does anyone have an explanation for this?

EmcLab (Sat, 27 Mar 2021 17:46:36 GMT):
Hi team, does besu JWT token authentication support algorithm EdDSA specifically Ed25519?

VijayMichalik (Mon, 29 Mar 2021 11:17:30 GMT):
I believe we require RS256 JWT tokens, as described here https://besu.hyperledger.org/en/stable/HowTo/Interact/APIs/Authentication/#jwt-public-key-authentication

VijayMichalik (Mon, 29 Mar 2021 11:18:55 GMT):
does your use case require the EdDSA algorithm? could you explain more about your requirement if so?

VijayMichalik (Mon, 29 Mar 2021 14:25:38 GMT):
Hey there, so there's a little inconsistency in the docs we need to fix- the updated content is here. https://besu.hyperledger.org/en/latest/Reference/CLI/CLI-Syntax/#sync-mode

VijayMichalik (Mon, 29 Mar 2021 14:26:59 GMT):
We are refocusing on Bonsai Tries instead of pruning, pruning is no longer a default in any mode https://wiki.hyperledger.org/display/BESU/Bonsai+Tries+Design+Overview

VijayMichalik (Mon, 29 Mar 2021 14:27:33 GMT):
Additionally, if you are connecting to a private network (anything aside from named testnets or the Ethereum main net), the default should be full sync as per the docs.

VijayMichalik (Mon, 29 Mar 2021 14:30:04 GMT):
We'll be testing private transactions against the new Bonsai Tries mode in the future for sure. :thumbsup: Do you have a specific need for something like that on your private network nodes? I'm honestly not sure why you have two larger nodes and two smaller, but I wouldn't recommend turning on pruning or fast sync on a private network in any case.

RobbeV 1 (Mon, 29 Mar 2021 17:19:44 GMT):
I am looking into besu for using in harbor logistics using a private network. We need private transactions but we also want to make it as easy as possible for our clients to run their own nodes. Smaller disk spaces would be one way to make it easier for them. The bonsai tries looks promising, in what kind of timeframe can we expect the implementation of this?

mwaser (Tue, 30 Mar 2021 11:53:37 GMT):
Does Besu currently support Solidity 0.8? If not, is there an ETA?

rai (Tue, 30 Mar 2021 12:40:07 GMT):
Hi @mwaser , Ethereum isn't designed to have any knowledge of Solidity actually. Solidity compiles contracts into EVM bytecode which is what is specified by the Ethereum network. For your situation, that means your version is fine.

rampatra (Tue, 30 Mar 2021 12:51:32 GMT):
But what if a newer Solidity version results in a newer bytecode that the old EVM doesn't understand? In other words, doesn't the EVM need updating in some cases when updating solidity?

rai (Tue, 30 Mar 2021 13:03:00 GMT):
EVM changes are made through the ethereum governance process and network upgrades so Solidity never requires that the EVM "update". The dependency is the other way around, solidity targets the EVM.

rampatra (Tue, 30 Mar 2021 13:05:17 GMT):
So, you mean before a newer solidity version is released, the EVM is already updated (if necessary) following the eth governance process?

mwaser (Tue, 30 Mar 2021 13:06:14 GMT):
Actually, you will find that the Azure Besu template is old enough that it uses Byzantium which is a problem for newer versions of Solidity and anything other than obsolete versions of OpenZeppelin.

mwaser (Tue, 30 Mar 2021 13:07:10 GMT):
Further, if I have a private Besu network, it isn't connected to the eth governance process.

mwaser (Tue, 30 Mar 2021 13:08:52 GMT):
So, my current question stands, slightly rephrased to -- can the current version of Besu handle Solidity 0.8? Or, do I need to do something else (i.e. the update mentioned above)?

mwaser (Tue, 30 Mar 2021 13:12:23 GMT):
Or, to rephrase again -- does Besu currently come with the necessary EVM bytecode to support Solidity 0.8? This is a simple yes or no question and the original phrasing of "Does Besu currently support Solidity 0.8?" was entirely correct (and the pedantic lecture did NOT answer the simple yes or no question for a private network case).

VladLupashevskyi (Tue, 30 Mar 2021 13:27:23 GMT):
Hi guys, could somebody make a review of this one please? https://github.com/hyperledger/besu/pull/1977

rampatra (Tue, 30 Mar 2021 13:29:03 GMT):
I have setup a prive IBFT network and 0.8 solidity works fine in my case

rampatra (Tue, 30 Mar 2021 13:29:03 GMT):
I have setup a private IBFT network and 0.8 solidity works fine in my case

rai (Tue, 30 Mar 2021 13:29:08 GMT):
Besu can handle current and all past EVM specifications. If you are on a private network then you have various network upgrades specified in your genesis file. If you only specify old upgrade blocks, it's possible that Solidity 0.8 won't generate the correct bytecode for it.

mwaser (Tue, 30 Mar 2021 13:29:36 GMT):
Awesome! Thank you VERY much @rampatra

rampatra (Tue, 30 Mar 2021 16:06:16 GMT):
Has Besu been used in a real world CBDC use case where a transaction happens between Bank A (client 1) and Bank B (client 2) such that other banks don't know about it? I know we have private transactions via Orion but how do we maintain a central ledger of balances of each bank if we go with private transactions? What are the options/approaches here?

rampatra (Tue, 30 Mar 2021 16:15:50 GMT):
didnt know these endpoints. Good to know

atoulme (Wed, 31 Mar 2021 03:58:12 GMT):
you might want to go to the EEA for those questions - in a nutshell, private transactions still maintain a central ledger, but only the hash of the private data is shared.

EmilianoVernini (Wed, 31 Mar 2021 05:49:43 GMT):
Hi All. I'm running some test on my besu private network using caliper. I'm using IBFT2 as the consensus algorithm with 8 validators.

EmilianoVernini (Wed, 31 Mar 2021 05:49:43 GMT):
Hi All. I'm running some test on my besu private network using caliper. The blockchain is configured with IBFT2 as the consensus algorithm with 8 validators and a blocktime of 10s. I've configured caliper to have 4 workers (every worker targets to a different validator) and a Master node, running each on a dedicated VM and connected using mqtt (distributed configuration). I'm using fixed rate controller with 1000 transactions and a fixed rate of 100 TPS. I've no problem with the query operation and the test gets completed. But when i run the transaction (or event the open) operation the test gets stucked waiting for "unfinished" transactions. Does anyone experienced the same behaviour? Any suggestions? Thanks, Emiliano

rampatra (Wed, 31 Mar 2021 07:36:19 GMT):
have DM'd you

atoulme (Wed, 31 Mar 2021 07:36:39 GMT):
have you?

atoulme (Wed, 31 Mar 2021 07:36:41 GMT):
where>?

atoulme (Wed, 31 Mar 2021 07:36:41 GMT):
where?

jorgeRodriguez (Wed, 31 Mar 2021 13:08:27 GMT):
Has joined the channel.

VijayMichalik (Wed, 31 Mar 2021 19:30:47 GMT):
Hey Vlad, I'll make sure someone takes a look. Cheers

macfarla (Wed, 31 Mar 2021 19:50:52 GMT):
Fix for a flaky test - review please https://github.com/hyperledger/besu/pull/2099

VijayMichalik (Thu, 01 Apr 2021 16:53:56 GMT):
There's a Bank of Thailand project using Hyperledger Besu for CBDC you can find more information about online

VijayMichalik (Thu, 01 Apr 2021 16:55:05 GMT):
Also known as Project Inthanon-LionRock or m-CBDC bridge

rampatra (Thu, 01 Apr 2021 19:22:27 GMT):
thanks for the info. I did check it out earlier but couldnt find info in this detail but would give another look.

rampatra (Thu, 01 Apr 2021 19:24:51 GMT):
Can I have smart contract that's only visible to a privacy group? Kind of a private smart contract?

user216 (Fri, 02 Apr 2021 13:10:28 GMT):
Has joined the channel.

RobbeV 1 (Fri, 02 Apr 2021 13:15:22 GMT):
Hi everyone, I'm looking into privacy groups. One of the functions web3-eea offers is 'findPrivacyGroup()'. I can see cases where u want to use this, but in my case I'd rather have that users can't search for privacygroups. I'll explain further, when company A and company B make a privacygroup, I don't want company C to try to guess with findPrivacyGroup() if A and B have done private transactions. Is there a way to configer my network so findPrivacyGroup is not allowed? Or is my consern flawed?

taxmeifyoucan (Sun, 04 Apr 2021 14:48:31 GMT):
Has joined the channel.

taxmeifyoucan (Sun, 04 Apr 2021 14:48:32 GMT):
Hi! Does it make sense to run Besu with parameters ``--pruning-enabled=true --sync-mode=FULL``? My goal is to be completely trustless, sync and verify everything from genesis while not keeping all archive node data

mohjam2004 (Mon, 05 Apr 2021 07:41:26 GMT):
Is there any document or github on the subject of how can I deploy Besu as a service? for example a script that ask the user question about network configuration and then deploy in a kubernetes cluster and then the user can import smart contract on it

ricardo.silva (Mon, 05 Apr 2021 15:50:40 GMT):
Has joined the channel.

EmcLab (Mon, 05 Apr 2021 17:05:30 GMT):
Hi team, after enabling rpc-http-authentication-enabled=true with RSA public key in all 4 nodes config.toml, the contract deployment throws an error of NoNetwork detected. Instead of 3 peers (4 nodes IBFT2 network) connected, there are only 1 or 2 peers connected. What can be wrong here?

lucassaldanha (Mon, 05 Apr 2021 21:28:52 GMT):
Do the nodes' logs have any WARN/ERROR messages? Also, could you share the config file that you are using?

shemnon (Mon, 05 Apr 2021 22:04:31 GMT):
Pruning doesn't run during sync IIRC. Using the early access bonsai tries may be a better path.

EmcLab (Mon, 05 Apr 2021 22:55:10 GMT):
Hi `lucassaldanha`, I test the JWT token with cURL command provided in the doc and it did go through and result is `true`. etherjs 5.0.x is used to initialize JsonRpcProvider. The error when generating wallet is: [Error: Wallet has error: Error: could not detect network (event="noNetwork", code=NETWORK_ERROR, version=providers/5.0.17)]

EmcLab (Mon, 05 Apr 2021 22:59:01 GMT):
import { ContractFactory, ethers } from "ethers"; let connectionInfo = { url: GLOBAL.PROVIDER_URL, //<<=="http://my-ip:80" headers: { "Bearer": tokenBesu //<<==JWT token which validated on jwt.io and OKed with cUrl command provided in besu doc }, }; const provider = new ethers.providers.JsonRpcProvider(connectionInfo); wallet = new ethers.Wallet(privateKeyBesu, provider); //<<== this line throws error

EmcLab (Mon, 05 Apr 2021 22:59:51 GMT):
The network must be working fine

macfarla (Mon, 05 Apr 2021 23:24:26 GMT):
Yes. If you follow this example it walks through deploying a private contract to a group of 2 nodes, and demonstrating that a third node cannot access the contract. https://besu.hyperledger.org/en/stable/Tutorials/Privacy/web3js-eea-Multinode-example/

lucassaldanha (Mon, 05 Apr 2021 23:55:28 GMT):
What permissions have you given the JWT token that you are using? I suspect that EthersJS might be doing some calls to get information about the network but it is failing because it doesn't have the right permissions.

lucassaldanha (Mon, 05 Apr 2021 23:56:15 GMT):
Maybe you can disable authentication, enable the JSONRPC api tracing log and run your EtherJS script to see what requests EthersJS is sending to the client.

EmcLab (Tue, 06 Apr 2021 03:28:20 GMT):
permissions:["*:*"]. Give all to users

lucassaldanha (Tue, 06 Apr 2021 03:30:13 GMT):
I'm not sure if this is a typo, but you are missing the *'s

lucassaldanha (Tue, 06 Apr 2021 03:30:42 GMT):
All permissions -> ["*:*"]

lucassaldanha (Tue, 06 Apr 2021 03:30:42 GMT):
All permissions -> `["*:*"]`

lucassaldanha (Tue, 06 Apr 2021 03:31:05 GMT):
Or maybe it is just Rocket Chat messing with the format

lucassaldanha (Tue, 06 Apr 2021 03:32:15 GMT):
Have you tried disabling auth and checking the logs? Maybe compare what methods are executed when you use cURL and what methods are executed when you use EthersJS

EmcLab (Tue, 06 Apr 2021 03:34:49 GMT):
Sorry it is typo, shall be permissions: ["*:*"]

EmcLab (Tue, 06 Apr 2021 03:35:03 GMT):
Here is the config.toml

EmcLab (Tue, 06 Apr 2021 03:35:35 GMT):
data-path="/home/me/bin/besu_network/node1/data" # Path # Network p2p-port=30303 max-peers=42 rpc-http-host=["0.0.0.0"] rpc-http-port=8545 rpc-http-enabled=true rpc-http-api=["ETH", "NET","WEB3","ADMIN","TXPOOL","IBFT", "EEA","DEBUG"] rpc-ws-host=["0.0.0.0"] rpc-ws-port=8546 rpc-ws-enabled=true #jwt token rpc-http-authentication-enabled=true rpc-http-authentication-jwt-public-key-file="/home/me/bin/besu_network/publicKeyRSA.pem" #Metrics for monitoring metrics-port=9545 metrics-push-port=9001 min-gas-price=0 logging="DEBUG" #allow all host-allowlist=["*"] rpc-http-cors-origins=["*"] # Chain genesis-file="/home/me/bin/besu_network/genesis.json" # Path to the custom genesis file #node-private-key-file="./key" # Mining miner-enabled=false miner-coinbase="0xfe3b557e8fb62b89f4916b721be55ceb828dbd73"

EmcLab (Tue, 06 Apr 2021 03:41:31 GMT):
Here is the debug log when the ethersjs is trying to init wallet:

EmcLab (Tue, 06 Apr 2021 03:44:58 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=tseqgjT2jC4E4C6eB) If you didn't see attached debug log, please let me know. The log seems normal.

EmcLab (Tue, 06 Apr 2021 05:56:26 GMT):
wallet = new ethers.Wallet(privateKeyBesu, provider); //<<==this line causes error. No method was called. Before enabling auth, the app can init wallet, deploy contract and call methods of contract.

lucassaldanha (Tue, 06 Apr 2021 05:59:27 GMT):
What I meant is that I believe that when you instantiate the wallet, EtherJS is trying to get some information from the client through a JSON-RPC call. So it would be helpful to find out if that is the case. If everything works when using cURL, we need to find what EthersJS is doing differently.

lucassaldanha (Tue, 06 Apr 2021 06:05:34 GMT):
From EthersJS docs, it looks like they make a call to eth_chainId (or eth_networkId as a fallback). Could you try calling both endpoints with auth enabled using cURL to see if it works? Reference: https://docs.ethers.io/v5/api/providers/jsonrpc-provider/#JsonRpcProvider `If urlOrConnectionInfo is not specified, the default (i.e. http://localhost:8545) is used and if no network is specified, it will be determined automatically by querying the node using eth_chaindId and falling back on eth_networkId.`

lucassaldanha (Tue, 06 Apr 2021 06:06:33 GMT):
Another thing that you could try for debugging purposes is configuring the JsonRpcProvider with the networkId and see if it works doing that.

ricardo.silva (Tue, 06 Apr 2021 08:46:23 GMT):
Hello. `eth_estimateGas` on Besu rejects if we send the `nonce` argument with an error `Caused by: com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field "nonce" (class org.hyperledger.besu.ethereum.api.jsonrpc.internal.parameters.JsonCallParameter), not marked as ignorable (11 known properties: "gasPrice", "value", "gasLimit", "gas", "from", "to", "feeCap", "gasPremium", "strict", "data", "payload"])`. the spec https://eth.wiki/json-rpc/API doesn't specify anything about `nonce`. however, other platforms like go-ethereum/GoQuorum ignore if that argument is sent. This is useful when using Web3j Transaction request factory methods to build the Transaction object (code https://github.com/web3j/web3j/blob/master/core/src/main/java/org/web3j/protocol/core/methods/request/Transaction.java), as we can re-use the same Transaction object to estimate and send. Having the error from Besu means that we need to build the transaction twice. Would it make sense for Besu to do the same behaviour as Get/GoQuorum? ofc, other option is also create a change on Web3j to force the nonce as optional and/or allow to easily deep copy a transaction object. Thanks!

achraf17 (Tue, 06 Apr 2021 08:51:29 GMT):
Has joined the channel.

taxmeifyoucan (Tue, 06 Apr 2021 09:56:15 GMT):
What is it and how do I do that?

VijayMichalik (Tue, 06 Apr 2021 11:30:38 GMT):
--Xdata-storage-format= Format to store trie data in. Either FOREST or BONSAI (default: FOREST).

VijayMichalik (Tue, 06 Apr 2021 11:34:24 GMT):
the feature is in early access so expect that functionality could change in future releases

taxmeifyoucan (Tue, 06 Apr 2021 11:35:09 GMT):
Great, thanks! Is it in the latest release?

VijayMichalik (Tue, 06 Apr 2021 11:47:25 GMT):
It's been in since 21.1.0 so any release since then should contain it, the latest release is always best for tweaks to the experimental flag features

taxmeifyoucan (Tue, 06 Apr 2021 11:47:45 GMT):
Awesome, thanks a lot!

VijayMichalik (Tue, 06 Apr 2021 11:47:56 GMT):
No problem!

VijayMichalik (Tue, 06 Apr 2021 11:48:14 GMT):
Here's more about the feature https://wiki.hyperledger.org/display/BESU/Bonsai+Tries+Design+Overview

mohjam2004 (Tue, 06 Apr 2021 11:58:40 GMT):
i use besu xluncher to start besu network

mohjam2004 (Tue, 06 Apr 2021 11:58:42 GMT):

Clipboard - April 6, 2021 4:28 PM

mohjam2004 (Tue, 06 Apr 2021 11:59:18 GMT):
now it is in this state

mohjam2004 (Tue, 06 Apr 2021 11:59:20 GMT):

Clipboard - April 6, 2021 4:29 PM

mohjam2004 (Tue, 06 Apr 2021 11:59:28 GMT):
what should i do next?

mohjam2004 (Tue, 06 Apr 2021 12:00:46 GMT):
my os promt dont come back and it is in a state that i have sent the image.

matkt (Tue, 06 Apr 2021 12:06:54 GMT):
Besu at the end of the configuration starts on its own and start synchronization. Your Besu is started with the configuration you gave it. so there is nothing left to do normally

matkt (Tue, 06 Apr 2021 12:10:35 GMT):
You launched a node in dev without mining. So I guess it is looking to connect to another peer to start the fastsync. Maybe you should add your peers in the static-nodes.json file to speed up the discovery of your other dev peers

reddevil (Tue, 06 Apr 2021 20:14:54 GMT):
Has joined the channel.

reddevil (Tue, 06 Apr 2021 20:14:54 GMT):
Hi there - after upgrading a 3 node clique/poa private network node running in Kaleido to 21.1.3 from 1.5.0, I executed a protocol upgrade by adding `istanbulBlock` and `muirGlacierBlock`. I see the following exception when the node is attempting to mine what I think is the milestone block for `istanbul/muirGlacier` ``` 2021-04-06 16:24:38.165+00:00 | EthScheduler-Workers-0 | INFO | PersistBlockTask | Imported #17,619 / 0 tx / 0 om / 0 (0.0%) gas / (0x33f23515d643f6f63c61eb1fc556bf212e04de2fc8b27ddb841ab62d9e9dd65e) in 0.082s. Peers: 3 2021-04-06 16:24:43.182+00:00 | pool-7-thread-2 | ERROR | BlockMiner | Block mining threw an unhandled exception. java.lang.NullPointerException at com.google.common.net.InetAddresses.ipStringToBytes(InetAddresses.java:169) at com.google.common.net.InetAddresses.forString(InetAddresses.java:142) at org.hyperledger.besu.ethereum.p2p.discovery.PeerDiscoveryAgent.updateNodeRecord(PeerDiscoveryAgent.java:189) at org.hyperledger.besu.ethereum.p2p.network.DefaultP2PNetwork.updateNodeRecord(DefaultP2PNetwork.java:435) at org.hyperledger.besu.RunnerBuilder.lambda$build$6(RunnerBuilder.java:459) at org.hyperledger.besu.RunnerBuilder$$Lambda$516/000000006A0FDFF0.onBlockAdded(Unknown Source) at org.hyperledger.besu.ethereum.chain.DefaultBlockchain.lambda$appendBlock$8(DefaultBlockchain.java:242) at org.hyperledger.besu.ethereum.chain.DefaultBlockchain$$Lambda$858/00000000C089F6F0.accept(Unknown Source) at org.hyperledger.besu.util.Subscribers.lambda$forEach$0(Subscribers.java:112) at org.hyperledger.besu.util.Subscribers$$Lambda$384/0000000069FC9DD0.accept(Unknown Source) at java.base/java.lang.Iterable.forEach(Iterable.java:75) at org.hyperledger.besu.util.Subscribers.forEach(Subscribers.java:109) at org.hyperledger.besu.ethereum.chain.DefaultBlockchain.appendBlock(DefaultBlockchain.java:242) at org.hyperledger.besu.ethereum.mainnet.MainnetBlockImporter.lambda$importBlock$0(MainnetBlockImporter.java:50) at org.hyperledger.besu.ethereum.mainnet.MainnetBlockImporter$$Lambda$850/00000000C0876EC0.accept(Unknown Source) at java.base/java.util.Optional.ifPresent(Optional.java:183) at org.hyperledger.besu.ethereum.mainnet.MainnetBlockImporter.importBlock(MainnetBlockImporter.java:48) at org.hyperledger.besu.ethereum.core.BlockImporter.importBlock(BlockImporter.java:44) at org.hyperledger.besu.ethereum.blockcreation.BlockMiner.mineBlock(BlockMiner.java:131) at org.hyperledger.besu.consensus.clique.blockcreation.CliqueBlockMiner.mineBlock(CliqueBlockMiner.java:49) at org.hyperledger.besu.ethereum.blockcreation.BlockMiner.run(BlockMiner.java:82) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:834) ```

reddevil (Tue, 06 Apr 2021 20:15:47 GMT):
The genesis config is as follows: ``` > admin.nodeInfo { enode: "enode://95fbe5135415caf11e56fb75950db7ebbc3acbe9e604d5b81b9e644e3906aa955adb0400af8cf48bb81c18fe20320cedc4a27d2e56a784075640e2fff91c4305@0.0.0.0:30303?discport=0", id: "95fbe5135415caf11e56fb75950db7ebbc3acbe9e604d5b81b9e644e3906aa955adb0400af8cf48bb81c18fe20320cedc4a27d2e56a784075640e2fff91c4305", ip: "0.0.0.0", listenAddr: "0.0.0.0:30303", name: "besu/v21.1.3/linux-x86_64/openj9-java-11", ports: { listener: 30303 }, protocols: { eth: { config: { byzantiumBlock: 0, chainId: 644457192, clique: {...}, eip150Block: 0, eip158Block: 0, homesteadBlock: 0, istanbulBlock: 17620, muirGlacierBlock: 17620, petersburgBlock: 0 }, ```

reddevil (Tue, 06 Apr 2021 20:33:10 GMT):
Ok, looks like what i've got isn't playing nice with what was introduced in : https://github.com/hyperledger/besu/pull/1998

reddevil (Tue, 06 Apr 2021 20:40:13 GMT):
To be clear, the chain is stuck at the milestone block and is not mining blocks after that

EmcLab (Wed, 07 Apr 2021 03:53:21 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=BZK6f5LywjPt2Couj) Here is eth_chainId returns with curl command line:

EmcLab (Wed, 07 Apr 2021 03:53:24 GMT):
{ "jsonrpc" : "2.0", "id" : 1, "result" : "0x7e2" }

EmcLab (Wed, 07 Apr 2021 03:53:43 GMT):
Here is the eth_networkId returns:

EmcLab (Wed, 07 Apr 2021 03:53:59 GMT):
{ "jsonrpc" : "2.0", "id" : 1, "error" : { "code" : -32601, "message" : "Method not found" } }

lucassaldanha (Wed, 07 Apr 2021 03:55:32 GMT):
I feel like this is a question for the besu-contributors channel :)

EmcLab (Wed, 07 Apr 2021 03:59:06 GMT):
0x7e2 is 2018

lucassaldanha (Wed, 07 Apr 2021 04:00:22 GMT):
Is the above response with or without auth enabled?

EmcLab (Wed, 07 Apr 2021 04:00:25 GMT):
const provider = new ethers.providers.JsonRpcProvider(connection, 2018); //<<==connection.headers.Bearer is the JWT token. connection.url is the http://my-ip

EmcLab (Wed, 07 Apr 2021 04:00:48 GMT):
all with auth enabled

EmcLab (Wed, 07 Apr 2021 04:01:47 GMT):
The error is the same for wallet saying that noNetwork

EmcLab (Wed, 07 Apr 2021 04:04:02 GMT):
The problem may be with `connection` which is currently constructed as object. From ethersjs doc, connection is a ConnectionInfo which seems to be a class. But I could not find how to init an instance.

lucassaldanha (Wed, 07 Apr 2021 04:06:15 GMT):
I can't think of a reason for this not working. Either this is a hidden problem in Besu or EthersJS is doing something wrong. I suggest that you do two things: 1. Open a ticket on GitHub and add all the information about the issue. Including the configuration file and other required files. Everything that we need to reproduce this issue ourselves and identify if it is a problem with Besu or EthersJS. 2. Try finding out if EthersJS has had any similar issues when using JWT or custom headers on the connection. It is possible that this has been identified by someone else and they might have a workaround for it.

EmcLab (Wed, 07 Apr 2021 04:37:06 GMT):
I will add more info to the ethers github ticket which was opened a couple of days ago. There is no reply or comment yet.

lucassaldanha (Wed, 07 Apr 2021 04:37:53 GMT):
please send me the link to I can take a look as well

EmcLab (Wed, 07 Apr 2021 04:38:32 GMT):
I tried to init wallet with only url which won't work as we know. it returns same error of no network detected. It may be something related to authentication.

EmcLab (Wed, 07 Apr 2021 04:39:10 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=6aFNJnZvNgfBpFJMa) https://github.com/ethers-io/ethers.js/issues/1430

mohjam2004 (Wed, 07 Apr 2021 06:12:17 GMT):
Is there any document or github on the subject of how can I deploy Besu as a service? for example a script that ask the user question about network configuration and then deploy in a kubernetes cluster and then the user can import smart contract on it?

NicolasMassart (Wed, 07 Apr 2021 14:00:45 GMT):
Hi, we have several documentations and tools to ease the creation of a Besu config. You may find something that suits your need on https://besu.hyperledger.org/en/stable/HowTo/Deploy/Kubernetes/ and look at the Helm files that are designed to deploy a Besu node and some tooling around it. For instance for a PoW Node, you can look at one of the charts at https://github.com/ConsenSys/quorum-kubernetes/tree/master/helm/quorum-besu/ethash/besu Let me know if this is the kind of thing that you need, otherwise don't hesitate to tell me more about your needs.

shemnon (Wed, 07 Apr 2021 14:06:27 GMT):
Post a bug.

shalinigpt (Wed, 07 Apr 2021 14:16:58 GMT):
Has joined the channel.

shalinigpt (Wed, 07 Apr 2021 14:16:59 GMT):
hi

rai (Wed, 07 Apr 2021 14:17:27 GMT):
Thanks for bringing our attention to this reddevil! I'll make an issue for this and include it in our sprint planning. Also, I'll go find out if I can give you a workaround right now.

rai (Wed, 07 Apr 2021 14:54:39 GMT):
Can you reply with the full logs of that mining node here: https://github.com/hyperledger/besu/issues/2115

reddevil (Wed, 07 Apr 2021 15:08:25 GMT):
thanks for taking a look @rai , I had the node running at `INFO` level. do you want me to re-sync the node with `DEBUG` level log?

reddevil (Wed, 07 Apr 2021 15:09:04 GMT):
because the logs don't show much before/after the stacktrace

rai (Wed, 07 Apr 2021 15:10:10 GMT):
I'm mostly interested in the INFO level logging that happens at the beginning. So if you just want to provide up until the point you start getting sync messages, that works too.

reddevil (Wed, 07 Apr 2021 15:12:02 GMT):
will attach it to the github issue shortly.

ricardo.silva (Wed, 07 Apr 2021 15:21:51 GMT):
@lucassaldanha yes. I will move there. @shemnon not sure if should be a bug, as this might be a question also if the RPC should be clarified if nonce is accepted or not (or ignored).

reddevil (Wed, 07 Apr 2021 15:43:34 GMT):
logs added with some context

shemnon (Wed, 07 Apr 2021 15:56:31 GMT):
We have a strict/non-strict option for estimate gas. IMHO ignoring nonce ordering is a valid non-strict estimate request. (we already ignore balances for non-strict checks) So a bug would make sure it gets addressed.

EmcLab (Wed, 07 Apr 2021 16:30:11 GMT):
Hi team, I configure a 4 nodes network on a single server and create service under systemd for auto restart. Among 4 nodes, only one node1 is boot node. Must the node1 (boot node) be started first?

EmcLab (Wed, 07 Apr 2021 16:30:11 GMT):
Hi team, I configure a 4 nodes network on a single server and create service under systemd for auto restart. Among 4 nodes, only one node1 is boot node. Must the node1 (boot node) be started first? I used to reboot the whole server and let the nodes sync. However I noticed a couple of times that there were only 1 or 2 peers synced (shall be 3). Then I tried to manually start node1 and then all other 3 nodes and the network was working fine. I am wondering if the boot node has to be started first.

rampatra (Wed, 07 Apr 2021 19:36:57 GMT):

orion.png

rampatra (Wed, 07 Apr 2021 19:37:47 GMT):
I have added web3j (v 4.8.4) as a dependency in my maven project but I am not getting these files (marked in red). Any ideas?

zandercreations (Wed, 07 Apr 2021 20:04:27 GMT):
Has joined the channel.

zandercreations (Wed, 07 Apr 2021 20:04:28 GMT):
Hi, I'm trying to setup Token Bridge with Hyperledger Besu and I'm stuck at trying to deploy the TokenBridge Contracts on the Home & Foreign EVM's. Essentially after running the Deploy script I was able to get the Contracts to deploy on my home EVM but when the script tries to deploy to the Foreign network I run into an error saying I don't have enough (gas * price + value) I'm using the Ropsten test network With the Infura API endpoint I believe I don't understand the formula for the gas when it comes to setting up the environment variables for the token bridge contract deployment script HOME_RPC_URL=*** HOME_BRIDGE_OWNER=0x627306090abaB3A6e1400e9345bC60c78a8BEf57 HOME_VALIDATORS_OWNER=0x627306090abaB3A6e1400e9345bC60c78a8BEf57 HOME_UPGRADEABLE_ADMIN=0x627306090abaB3A6e1400e9345bC60c78a8BEf57 HOME_DAILY_LIMIT=30000000000000000000000000 HOME_MAX_AMOUNT_PER_TX=1500000000000000000000000 HOME_MIN_AMOUNT_PER_TX=1 HOME_REQUIRED_BLOCK_CONFIRMATIONS=1 HOME_GAS_PRICE=1 BLOCK_REWARD_ADDRESS=0xFE3B557E8Fb62b89F4916B721be55cEb828dBd73 FOREIGN_RPC_URL=https://ropsten.infura.io/v3/********** FOREIGN_BRIDGE_OWNER=0xB28Fde56b5127801875a0Fb403403f03cA98B400 FOREIGN_VALIDATORS_OWNER=0xB28Fde56b5127801875a0Fb403403f03cA98B400 FOREIGN_UPGRADEABLE_ADMIN=0xB28Fde56b5127801875a0Fb403403f03cA98B400 FOREIGN_DAILY_LIMIT=15000000000000000000000000 FOREIGN_MAX_AMOUNT_PER_TX=1000000000 FOREIGN_MIN_AMOUNT_PER_TX=1 FOREIGN_REQUIRED_BLOCK_CONFIRMATIONS=1 FOREIGN_GAS_PRICE=1 I used this link https://faucet.ropsten.be/ to get 1 ETH for my Ropsten address I don't understand how to set theses environment variables

EmcLab (Thu, 08 Apr 2021 06:32:10 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=6aFNJnZvNgfBpFJMa) here is a issue post on ethersjs. https://github.com/ethers-io/ethers.js/issues/1201. headers seems solved sometime ago.

VijayMichalik (Thu, 08 Apr 2021 09:02:49 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=LmvmvA5SHWzdHEYz4) Hi there, could you share the documentation or tutorial you're following? I'm not familiar with TokenBridge, as it is not something developed by the Besu team- those are not environment variables for Besu.

VijayMichalik (Thu, 08 Apr 2021 09:03:08 GMT):
Hi there, could you share the documentation or tutorial you're following? I'm not familiar with TokenBridge, as it is not something developed by the Besu team- those are not environment variables for Besu

VijayMichalik (Thu, 08 Apr 2021 09:07:59 GMT):
I've had a look and would suggest following along with the documentation on the tokenbridge site, these are indicated as environment variables for the tokenbridge application. They also have a discord community you may be able to get answers in. Hope that helps!

GigoJoseph (Thu, 08 Apr 2021 09:53:32 GMT):
Has joined the channel.

nkl199 (Thu, 08 Apr 2021 16:18:25 GMT):
Has left the channel.

EmcLab (Fri, 09 Apr 2021 16:41:27 GMT):
`lucassaldanha`, the problem solved by calling new ehters.StaticJsonRpcProvider(connection, chainId). This StaticJsonRpcProvider bypasses the fallback to call getChainId which throws error no network

vbhalerao (Fri, 09 Apr 2021 18:57:06 GMT):
Has joined the channel.

vbhalerao (Fri, 09 Apr 2021 18:57:07 GMT):
Hello, i deployed Besu node from scratch to our account and i am getting some strange error like below: 2021-04-09 16:24:08.483+00:00 | nioEventLoopGroup-3-2 | INFO | PivotBlockRetriever | Received conflicting pivot blocks for 9993668. 2021-04-09 16:24:08.483+00:00 | nioEventLoopGroup-3-2 | WARN | PivotBlockRetriever | 250 attempts have failed to find a fast sync pivot block 2021-04-09 16:24:08.483+00:00 | nioEventLoopGroup-3-2 | INFO | PivotBlockRetriever | Move pivot block back to 9993618 and retry. 2021-04-09 16:24:08.483+00:00 | nioEventLoopGroup-3-2 | INFO | PivotBlockConfirmer | Confirm pivot block 9993618 with at least 5 peers. 2021-04-09 16:24:08.501+00:00 | nioEventLoopGroup-3-5 | INFO | PivotBlockConfirmer | Received 1 confirmation(s) for pivot block header 9993618 2021-04-09 16:24:08.579+00:00 | nioEventLoopGroup-3-2 | INFO | PivotBlockConfirmer | Failed to confirm pivot block 9993618. Received conflicting headers 2021-04-09 16:24:08.579+00:00 | nioEventLoopGroup-3-2 | INFO | PivotBlockRetriever | Received conflicting pivot blocks for 9993618. 2021-04-09 16:24:08.579+00:00 | nioEventLoopGroup-3-2 | INFO | PivotBlockRetriever | Max retries reached, cancel pivot block download. 2021-04-09 16:24:08.583+00:00 | nioEventLoopGroup-3-2 | ERROR | DefaultSynchronizer | Fast sync failed (PIVOT_BLOCK_HEADER_MISMATCH), please try again. 2021-04-09 16:24:08.583+00:00 | nioEventLoopGroup-3-2 | WARN | DefaultSynchronizer | Exiting FastSync process 2021-04-09 16:24:08.590+00:00 | Thread-1 | INFO | DefaultSynchronizer | Stopping synchronizer 2021-04-09 16:24:08.595+00:00 | Thread-1 | INFO | EthProtocolManager | Stopping eth Subprotocol. 2021-04-09 16:24:08.695+00:00 | Thread-1 | INFO | NetworkRunner | Network stopped. 2021-04-09 16:24:08.695+00:00 | Thread-1 | INFO | AutoTransactionLogBloomCachingService | Shutting down Auto transaction logs caching service. 2021-04-09 16:24:08.696+00:00 | Thread-1 | INFO | DockerNatManager | Stopping docker NAT manager. ANTLR Tool version 4.7.1 used for code generation does not match the current runtime version 4.8ANTLR Runtime version 4.7.1 used for parser compilation does not match the current runtime version 4.8

vbhalerao (Fri, 09 Apr 2021 18:57:07 GMT):
Hello, i deployed Besu node from scratch to our account and i am getting some strange error like below: 2021-04-09 16:24:08.483+00:00 | nioEventLoopGroup-3-2 | INFO | PivotBlockRetriever | Received conflicting pivot blocks for 9993668. 2021-04-09 16:24:08.483+00:00 | nioEventLoopGroup-3-2 | WARN | PivotBlockRetriever | 250 attempts have failed to find a fast sync pivot block 2021-04-09 16:24:08.483+00:00 | nioEventLoopGroup-3-2 | INFO | PivotBlockRetriever | Move pivot block back to 9993618 and retry. 2021-04-09 16:24:08.483+00:00 | nioEventLoopGroup-3-2 | INFO | PivotBlockConfirmer | Confirm pivot block 9993618 with at least 5 peers. 2021-04-09 16:24:08.501+00:00 | nioEventLoopGroup-3-5 | INFO | PivotBlockConfirmer | Received 1 confirmation(s) for pivot block header 9993618 2021-04-09 16:24:08.579+00:00 | nioEventLoopGroup-3-2 | INFO | PivotBlockConfirmer | Failed to confirm pivot block 9993618. Received conflicting headers 2021-04-09 16:24:08.579+00:00 | nioEventLoopGroup-3-2 | INFO | PivotBlockRetriever | Received conflicting pivot blocks for 9993618. 2021-04-09 16:24:08.579+00:00 | nioEventLoopGroup-3-2 | INFO | PivotBlockRetriever | Max retries reached, cancel pivot block download. 2021-04-09 16:24:08.583+00:00 | nioEventLoopGroup-3-2 | ERROR | DefaultSynchronizer | Fast sync failed (PIVOT_BLOCK_HEADER_MISMATCH), please try again. 2021-04-09 16:24:08.583+00:00 | nioEventLoopGroup-3-2 | WARN | DefaultSynchronizer | Exiting FastSync process 2021-04-09 16:24:08.590+00:00 | Thread-1 | INFO | DefaultSynchronizer | Stopping synchronizer 2021-04-09 16:24:08.595+00:00 | Thread-1 | INFO | EthProtocolManager | Stopping eth Subprotocol. 2021-04-09 16:24:08.695+00:00 | Thread-1 | INFO | NetworkRunner | Network stopped. 2021-04-09 16:24:08.695+00:00 | Thread-1 | INFO | AutoTransactionLogBloomCachingService | Shutting down Auto transaction logs caching service. 2021-04-09 16:24:08.696+00:00 | Thread-1 | INFO | DockerNatManager | Stopping docker NAT manager. ANTLR Tool version 4.7.1 used for code generation does not match the current runtime version 4.8ANTLR Runtime version 4.7.1 used for parser compilation does not match the current runtime version 4.8 I request you to let me know the solution and i dont know whats wrong here, i saw this error first time. Thanks :)

rampatra (Fri, 09 Apr 2021 20:20:09 GMT):
I have setup orion nodes following the guide here: https://docs.orion.consensys.net/en/stable/HowTo/Quickstart/ however when I send a payload I get this error: ``` {"error":"NodeMissingPeerUrl"} ``` Any thoughts?

rampatra (Fri, 09 Apr 2021 23:18:48 GMT):
the solution was to define othernodes property. If we have multiple orion nodes then we have to define this property I think.

rampatra (Fri, 09 Apr 2021 23:19:04 GMT):
adding this got rid of the error and I was able to send and receive payload

oharthit (Fri, 09 Apr 2021 23:41:37 GMT):
Has joined the channel.

EmcLab (Sat, 10 Apr 2021 05:16:30 GMT):
`lucassaldanha`, the following way to add a token didn't work:

EmcLab (Sat, 10 Apr 2021 05:16:41 GMT):
connection.headers = {}

EmcLab (Sat, 10 Apr 2021 05:16:41 GMT):
connection.headers = {"Bearer": tokenBesu}

EmcLab (Sat, 10 Apr 2021 05:19:12 GMT):
Tried connection.headers = {"Authentication" : {"Bearer": tokenBesu}} and it didn't work as well. What is the right way to add tokenBesu to JsonRpcProvider?

mohjam2004 (Sat, 10 Apr 2021 16:58:44 GMT):
I have deploy this part of repository but only 2 boot nodes deployed

mohjam2004 (Sat, 10 Apr 2021 16:58:44 GMT):
I have deployed this part of repository but only 2 boot nodes deployed

mohjam2004 (Sat, 10 Apr 2021 16:59:03 GMT):
https://github.com/ConsenSys/quorum-kubernetes/tree/master/helm/quorum-besu/ethash/besu

mohjam2004 (Sat, 10 Apr 2021 16:59:29 GMT):

Clipboard - April 10, 2021 9:29 PM

mohjam2004 (Sat, 10 Apr 2021 17:00:08 GMT):
I have created 3 boot nodes private and public key and copy them in values.yaml config

mohjam2004 (Sat, 10 Apr 2021 17:00:26 GMT):
after helm install command only 2 boot nodes deployed not 3

mohjam2004 (Sat, 10 Apr 2021 17:03:04 GMT):
I don't understand the highlighted step:

mohjam2004 (Sat, 10 Apr 2021 17:03:10 GMT):

Clipboard - April 10, 2021 9:33 PM

mohjam2004 (Sat, 10 Apr 2021 17:05:01 GMT):
what else changes I must do after creation of private/public key and updating values.yaml file? (may be in genesis.json)

rampatra (Sat, 10 Apr 2021 21:24:50 GMT):
this information in missing in the docs. We should add this to the official docs.

rampatra (Sat, 10 Apr 2021 21:24:50 GMT):
this information in missing in the docs. Maybe we should add this to the official docs?

mohjam2004 (Sun, 11 Apr 2021 03:30:49 GMT):
This is besu-genesis-configmap.yaml for clique config map

mohjam2004 (Sun, 11 Apr 2021 03:30:59 GMT):

Clipboard - April 11, 2021 8:00 AM

mohjam2004 (Sun, 11 Apr 2021 03:31:13 GMT):
what are pointed values?

shemnon (Sun, 11 Apr 2021 03:42:02 GMT):
These are the pre-existing account balances for the dev chain at block zero. The first key is the account address (20 bytes of the hash of the public key). The second pointed value is the private key assocaited with them.

shemnon (Sun, 11 Apr 2021 03:42:58 GMT):
You would never want to put a real private key in a genesis file, but these are well known private keys commonly used for testing accounts. Often derived from bad password derived keys such as "cow".

mohjam2004 (Sun, 11 Apr 2021 04:41:52 GMT):
what is the perpuse of installing helm-diff plugin in this repo: https://github.com/ConsenSys/quorum-kubernetes

mohjam2004 (Sun, 11 Apr 2021 04:41:52 GMT):
what is the perpuse of installing helm-diff plugin in this repo: https://github.com/ConsenSys/quorum-kubernetes?

mohjam2004 (Sun, 11 Apr 2021 04:41:52 GMT):
what is the purpose of installing helm-diff plugin in this repo: https://github.com/ConsenSys/quorum-kubernetes?

mohjam2004 (Sun, 11 Apr 2021 04:49:46 GMT):
thanx, why there are 3 accounts? how can I add them and how can I create them (private and public that are used for account balance)?

mohjam2004 (Sun, 11 Apr 2021 06:36:22 GMT):
according to this doc: https://github.com/ConsenSys/quorum-kubernetes/tree/master/helm/quorum-besu/ethash/besu what exactly should i do for this step: Update the configmap/configmap.yml with the public keys & genesis file for example I have created 3 boot nodes public and private key and add them in values.yaml file. what should I do next step?

mohjam2004 (Sun, 11 Apr 2021 06:36:22 GMT):
according to this doc: https://github.com/ConsenSys/quorum-kubernetes/tree/master/helm/quorum-besu/ethash/besu what exactly should i do for this step: *Update the configmap/configmap.yml with the public keys & genesis file* for example I have created 3 boot nodes public and private key and add them in values.yaml file. what should I do next step? the default boot nodes are 2.

macfarla (Sun, 11 Apr 2021 19:50:08 GMT):
Are you using two different public keys? You will get "NodeMissingPeerUrl" if you try to send a payload to an orion node that your node can't find. You can definitely start orion without "otherNodes" property and send to yourself.

rampatra (Sun, 11 Apr 2021 21:44:22 GMT):
yes, I have 4 besu nodes and 3 of them have their own orion nodes.

rampatra (Sun, 11 Apr 2021 21:44:33 GMT):
and I am trying to s end a priv trans from one orion to another

rampatra (Mon, 12 Apr 2021 00:07:02 GMT):
A generic ethereum question rather than a besu one. Can one view (externally) the contents of a private variable defined in a contract? Or, the only way one can view (externally) is by declaring the variable `public`? Asking because I know that even if a variable is declared `private` it still resides on the public blockchain so wanted to confirm if there are any other ways to read the variable like via eth.getStorageAt API or something.

macfarla (Mon, 12 Apr 2021 01:58:09 GMT):
it is here in the docs https://docs.orion.consensys.net/en/stable/Reference/Configuration-File/ just not in the "how to"

shemnon (Mon, 12 Apr 2021 03:38:39 GMT):
Yes you can view it if you know where it lands in the storage, or if you are running it via a debugger. the `private` keyword in solidity only applies to the data visibility within the context of the compiler, and does not speak to actual privacy or confidentially of data with regard tot he world at large.

HiteshSharma (Mon, 12 Apr 2021 07:42:00 GMT):
You have to use the private keys to import it to any wallet.

mohjam2004 (Mon, 12 Apr 2021 08:52:15 GMT):
fortunately I find kubernetes operator to deploy hyperledger besu on kubernetes cluster

mohjam2004 (Mon, 12 Apr 2021 08:52:25 GMT):
https://github.com/hyperledger-labs/besu-operator/blob/main/guide.md

mohjam2004 (Mon, 12 Apr 2021 08:54:46 GMT):
besunodespec

mohjam2004 (Mon, 12 Apr 2021 08:55:23 GMT):
I wan to edit the number of bootnodes or validators base on this:

mohjam2004 (Mon, 12 Apr 2021 08:55:23 GMT):
I want to edit the number of bootnodes or validators base on this:

mohjam2004 (Mon, 12 Apr 2021 08:55:36 GMT):

Clipboard - April 12, 2021 1:25 PM

mohjam2004 (Mon, 12 Apr 2021 08:56:16 GMT):
but it doesn't work

mohjam2004 (Mon, 12 Apr 2021 08:56:18 GMT):

Clipboard - April 12, 2021 1:26 PM

mohjam2004 (Mon, 12 Apr 2021 08:58:31 GMT):
what is wrong in my command

mohjam2004 (Mon, 12 Apr 2021 08:58:32 GMT):
?

rampatra (Mon, 12 Apr 2021 08:59:29 GMT):
thanks for your reply. I have some other noob questions if you dont mind. How does one know where it lands in storage? So, if I understand you correctly, it is possible to read the value of a private variable outside the context of the compiler? So, can I read it via etherscan then? Asking because I tried reading it on etherscan and couldn't see it. Thanks again for helping me out here.

rampatra (Mon, 12 Apr 2021 09:01:01 GMT):
only the property and a short description is mentioned on the page you shared but how does one know that he needs to define a bootnode when there are multiple orion nodes?

rampatra (Mon, 12 Apr 2021 09:02:47 GMT):
In short, I want to test it out. I want to read a private variable externally directly from the blockchain.

HiteshSharma (Mon, 12 Apr 2021 11:44:33 GMT):
I saw a default explorer - **Alethio** provided with the containerized Besu implementation for private network. Now that I've successfully created and deployed contracts on the network, I want to have an explorer, with the functionality of paginated list of transactions and may be blocks as well (similar to ropsten). But I couldn't find any APIs for the listing of txns. How could we do that?

ahmedMokadem (Mon, 12 Apr 2021 11:44:33 GMT):
2021-04-11 19:07:41.081+00:00 | nioEventLoopGroup-3-3 | INFO | PivotBlockRetriever | Max retries reached, cancel pivot block download. 2021-04-11 19:07:41.085+00:00 | nioEventLoopGroup-3-3 | ERROR | DefaultSynchronizer | Fast sync failed (PIVOT_BLOCK_HEADER_MISMATCH), please try again. 2021-04-11 19:07:41.086+00:00 | nioEventLoopGroup-3-3 | WARN | DefaultSynchronizer | Exiting FastSync process 2021-04-11 19:07:41.093+00:00 | Thread-1 | INFO | DefaultSynchronizer | Stopping synchronizer 2021-04-11 19:07:41.094+00:00 | Thread-1 | INFO | NetworkRunner | Stopping Network. 2021-04-11 19:07:41.097+00:00 | Thread-1 | INFO | EthProtocolManager | Stopping eth Subprotocol. 2021-04-11 19:07:41.099+00:00 | Thread-1 | INFO | EthProtocolManager | eth Subprotocol stopped. 2021-04-11 19:07:41.099+00:00 | Thread-1 | INFO | NetworkRunner | Network stopped. 2021-04-11 19:07:41.099+00:00 | Thread-1 | INFO | AutoTransactionLogBloomCachingService | Shutting down Auto transaction logs caching service. 2021-04-11 19:07:41.099+00:00 | Thread-1 | INFO | DockerNatManager | Stopping docker NAT manager. ANTLR Tool version 4.7.1 used for code generation does not match the current runtime version 4.8ANTLR Runtime version 4.7.1 used for parser compilation does not match thecurrent runtime version 4.8ANTLR Tool version 4.7.1 used for code generation does not match the current runtime version 4.8ANTLR Runtime version 4.7.1 used for parser compilation does not match the current runtime version 4.8 Can anyone help me with this error . thnks :)

rampatra (Mon, 12 Apr 2021 13:37:22 GMT):
Can anyone please kindly shed some light here?

mohjam2004 (Mon, 12 Apr 2021 14:23:10 GMT):
I solved it by editing yaml file for besunodespec.

mohjam2004 (Mon, 12 Apr 2021 14:25:30 GMT):
my new problem is that when I increase the number of bootndes it is applied but when I decrease the number of bootnodes it doesn't take affect.

mohjam2004 (Mon, 12 Apr 2021 14:27:03 GMT):
for example I increase the number of bootnodes to 4 and it is applied but when I decrease the number of bootnodes it is not applied.

mohjam2004 (Mon, 12 Apr 2021 14:27:09 GMT):

Clipboard - April 12, 2021 6:57 PM

mohjam2004 (Mon, 12 Apr 2021 14:31:22 GMT):
another problem is that when I define the member number to 3 and apply the yaml file it is applied and the number os replica for member pod become 3 but if later I want to change the number of member it is not applied and the number of member remain 3.

mohjam2004 (Mon, 12 Apr 2021 14:31:22 GMT):
another problem is that when I define the member number to 3 and apply the yaml file it is applied and the number of replica for member pod become 3 but if later I want to change the number of member it is not applied and the number of member remain 3.

mohjam2004 (Mon, 12 Apr 2021 14:31:48 GMT):

Clipboard - April 12, 2021 7:01 PM

mohjam2004 (Mon, 12 Apr 2021 15:20:52 GMT):
I have deployed a hyperledger besu based on kubernetes operator for besu. 4 validators 4 bootnodes 3 members

mohjam2004 (Mon, 12 Apr 2021 15:21:28 GMT):
how can i get my json rpc address?

mohjam2004 (Mon, 12 Apr 2021 15:22:05 GMT):
all 4 validators and bootnodes expose port 8545

mohjam2004 (Mon, 12 Apr 2021 15:22:20 GMT):

Clipboard - April 12, 2021 7:52 PM

mohjam2004 (Mon, 12 Apr 2021 15:23:29 GMT):
according to quorum-dev-quickstart doc: https://github.com/ConsenSys/quorum-dev-quickstart/blob/master/files/besu/README.md

mohjam2004 (Mon, 12 Apr 2021 15:23:42 GMT):
there is one rpc node

mohjam2004 (Mon, 12 Apr 2021 15:24:53 GMT):
and that node gice json rpc url

mohjam2004 (Mon, 12 Apr 2021 15:31:02 GMT):
all my boot and validator node expose these ports:

mohjam2004 (Mon, 12 Apr 2021 15:31:03 GMT):

Clipboard - April 12, 2021 8:01 PM

VijayMichalik (Mon, 12 Apr 2021 17:31:12 GMT):
Hey, thanks for flagging @mohjam2004 I'll take a look and get back to you!

NicolasMassart (Mon, 12 Apr 2021 17:40:24 GMT):
What are you looking for exactly? An explorer to use with Besu or the way to use the JSON-RPC API to list transactions?

mohjam2004 (Mon, 12 Apr 2021 18:04:54 GMT):
This kubernetes operator to deploy hyperledger besu on kubernetes: https://github.com/Sumaid/besu-kubernetes/tree/besuoperator/besu-operator this repo deploy besu network based on ibft2, how can I use it to deploy other protocol: clique. ibft, ethash ...?

mohjam2004 (Mon, 12 Apr 2021 18:04:54 GMT):
This is kubernetes operator to deploy hyperledger besu on kubernetes: https://github.com/Sumaid/besu-kubernetes/tree/besuoperator/besu-operator this repo deploy besu network based on ibft2, how can I use it to deploy other protocol: clique. ibft, ethash ...?

mohjam2004 (Mon, 12 Apr 2021 18:04:56 GMT):
https://github.com/Sumaid/besu-kubernetes/tree/besuoperator/besu-operator

mohjam2004 (Mon, 12 Apr 2021 18:05:56 GMT):
:pray:

mohjam2004 (Mon, 12 Apr 2021 18:23:43 GMT):
another question is that how can I use this kubernetes operator to deploy ibft2-with-privacy?

NicolasMassart (Mon, 12 Apr 2021 18:47:27 GMT):
The default is for 2 bootnodes. If you need more, you will have to update the templates.

mohjam2004 (Mon, 12 Apr 2021 18:47:58 GMT):
my next question is that, I used this operator but my deployed Prometheus has no targets and so the grafana has no graph

NicolasMassart (Mon, 12 Apr 2021 18:48:02 GMT):
That? https://github.com/ConsenSys/quorum-kubernetes/tree/master/helm/quorum-besu/ibft2-with-privacy/besu

mohjam2004 (Mon, 12 Apr 2021 18:48:38 GMT):
yes

mohjam2004 (Mon, 12 Apr 2021 18:48:52 GMT):
but with kubernetes operator

mohjam2004 (Mon, 12 Apr 2021 19:27:11 GMT):
I see. my question is that I have defined 3 boot nodes private and public keys:

mohjam2004 (Mon, 12 Apr 2021 19:27:15 GMT):

Clipboard - April 12, 2021 11:57 PM

mohjam2004 (Mon, 12 Apr 2021 19:27:53 GMT):
now what changes I must do in genesis.json file?

mohjam2004 (Mon, 12 Apr 2021 19:33:55 GMT):
and my next question is that when I wan to add a new boot node, I must only add bootnode3 private and public key in values.yaml? or other changes is required?

mohjam2004 (Mon, 12 Apr 2021 19:33:55 GMT):
and my next question is that when I want to add a new boot node, I must only add bootnode3 private and public key in values.yaml? or other changes is required?

rampatra (Mon, 12 Apr 2021 19:36:27 GMT):
Got the answer here: https://ethereum.stackexchange.com/a/44897/68050

rampatra (Mon, 12 Apr 2021 20:02:08 GMT):
Can anyone pl help me with a sample code or reference to create a `flexible privacy group` via JSON-RPC?

lucassaldanha (Mon, 12 Apr 2021 21:47:35 GMT):
I don't know how EthersJS does it. You might need to check their docs. Besu expects is like this: `Authorization: Bearer `

lucassaldanha (Mon, 12 Apr 2021 21:48:08 GMT):
Here is a cURL example: `curl -X POST -H 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJwZXJtaXNzaW9ucyI6WyIqOioiXSwidXNlcm5hbWUiOiJ1c2VyMiIsImlhdCI6MTU1MDQ2MTQxNiwiZXhwIjoxNTUwNDYxNzE2fQ.WQ1mqpqzRLHaoL8gOSEZPvnRs_qf6j__7A3Sg8vf9RKvWdNTww_vRJF1gjcVy-FFh96AchVnQyXVx0aNUz9O0txt8VN3jqABVWbGMfSk2T_CFdSw5aDjuriCsves9BQpP70Vhj-tseaudg-XU5hCokX0tChbAqd9fB2138zYm5M' -d '{"jsonrpc":"2.0","method":"net_listening","params":[],"id":1}' http://localhost:8545`

lucassaldanha (Mon, 12 Apr 2021 21:49:30 GMT):
Creating a flexible privacy group via JSON-RPC can be tricky, because you'll be sending transactions to the node (eea_sendRawTransaction).

lucassaldanha (Mon, 12 Apr 2021 21:50:09 GMT):
It can be done, it is just harder. I'd recommend using web3js-eea to deal with the complexity of building, encoding and signing the tx.

lucassaldanha (Mon, 12 Apr 2021 21:50:09 GMT):
It can be done, it is just harder. I'd recommend using web3js-eea (javascript) or Web3j (java) to deal with the complexity of building, encoding and signing the tx.

lucassaldanha (Mon, 12 Apr 2021 21:50:49 GMT):
Flexible privacy groups are created using smart contract logic, that's why you interact with them (and create them) using transactions.

lucassaldanha (Mon, 12 Apr 2021 21:52:19 GMT):
Web3js-eea example: https://github.com/ConsenSys/web3js-eea/blob/master/example/onChainPrivacy/simpleExample.js

lucassaldanha (Mon, 12 Apr 2021 21:54:05 GMT):
And here is the source where Web3js-eea is creating the tx that creates the privacy group: https://github.com/ConsenSys/web3js-eea/blob/075dec06b20568ca4f7a8b7e9dfcd440a7a461f4/src/index.js#L487

rampatra (Mon, 12 Apr 2021 21:54:35 GMT):
thanks for helping out. Our application is in java so I am using the web3j sample code but can't get it to work. This is the problem I'm seeing: https://github.com/web3j/web3j/discussions/1401

rampatra (Mon, 12 Apr 2021 21:55:00 GMT):
so thought of doing it directly via json-rpc but seems like that's harder

lucassaldanha (Mon, 12 Apr 2021 21:56:44 GMT):
Thanks for raising this. Hopefully someone from Web3labs will take a look at it soon. If I have some time I'll try to take a look myself (although they might be able to find the issue faster than me).

rampatra (Mon, 12 Apr 2021 21:58:28 GMT):
However, the `privCreatePrivacyGroup` method in web3j library works fine.

rampatra (Mon, 12 Apr 2021 21:58:49 GMT):
do you know the difference between `privCreatePrivacyGroup` and `privCreateOnChainPrivacyGroup`

rampatra (Mon, 12 Apr 2021 21:59:17 GMT):
is one flexible and the other normal?

lucassaldanha (Mon, 12 Apr 2021 22:00:04 GMT):
Sure, privCreatePrivacyGroup is used for "offchain" privacy groups, where the membership information is kept in Orion. privCreateOnChainPrivacyGroup is used for flexible privacy groups. Membership information is kept in smart contracts.

lucassaldanha (Mon, 12 Apr 2021 22:00:22 GMT):
So depending on the privacy mode that you are using, you should use one or the other.

rampatra (Mon, 12 Apr 2021 22:00:30 GMT):
oh ok

rampatra (Mon, 12 Apr 2021 22:00:44 GMT):
so, the orion one is working so far with web3j

rampatra (Mon, 12 Apr 2021 22:00:55 GMT):
but the onchain one is not

lucassaldanha (Mon, 12 Apr 2021 22:01:10 GMT):
I can see in your issue that you have the flag `--privacy-onchain-groups-enabled=true` enabled. So `privCreateOnChainPrivacyGroup` is the one that you should use.

lucassaldanha (Mon, 12 Apr 2021 22:01:38 GMT):
Your code in the ticket looks alright. Hopefully we can find what is happening and help you out.

rampatra (Mon, 12 Apr 2021 22:02:49 GMT):
Sure, that would be great. In the meanwhile, I will continue with the off chain privacy groups.

lucassaldanha (Mon, 12 Apr 2021 22:03:33 GMT):
Could you please update the ticket with the web3j, Besu and Orion version that you are using?

lucassaldanha (Mon, 12 Apr 2021 22:03:47 GMT):
That should make it easier for reproducing the problem locally

rampatra (Mon, 12 Apr 2021 22:03:56 GMT):
sure

rampatra (Mon, 12 Apr 2021 22:05:30 GMT):
and, just fyi, some of the sample code in web3j docs is outdated for sure. as I am using the latest web3j and some overloaded methods arent there

tomhay (Tue, 13 Apr 2021 00:44:25 GMT):
Would being able to use the Besu API to return a transaction object work for you in this case? I'm not sure that this is the direction you are thinking, but my thought is that you could use the Besu API method eth_getTransactionByBlockNumberAndIndex and write a script in order to get a transaction object back, which you could transform into a list of transactions. I may be overcomplicating what you are trying to do, but in case this is useful, here is the reference to the API method: https://besu.hyperledger.org/en/stable/Reference/API-Methods/#eth_gettransactionbyblocknumberandindex and the transaction object that would be returned: https://besu.hyperledger.org/en/stable/Reference/API-Objects/#transaction-object

lucassaldanha (Tue, 13 Apr 2021 01:42:46 GMT):
Ok, I've got some extra info. This bug has been fixed on Web3j a few weeks ago, but the latest released version of Web3j doesn't have the fix. You should either wait for a release or maybe use a development version to get it working. I've added some extra info on the ticket. Do let me know if there is anything else that I can help you with.

mohjam2004 (Tue, 13 Apr 2021 04:14:17 GMT):
I have another issue. I have defined a default storage class but no volume is created.

mohjam2004 (Tue, 13 Apr 2021 04:35:09 GMT):
Is the member node the same as rpc node with which the developer can connect to besu network and run their codes?

mohjam2004 (Tue, 13 Apr 2021 04:35:13 GMT):

Clipboard - April 13, 2021 9:05 AM

vbhalerao (Tue, 13 Apr 2021 09:33:27 GMT):
vert.x-eventloop-thread-1 | ERROR | VertxPeerDiscoveryAgent | Encountered error while handling packet java.lang.IllegalArgumentException: Could not recover public key at org.hyperledger.besu.crypto.SECP256K1.recoverFromSignatureNative(SECP256K1.java:495) at org.hyperledger.besu.crypto.SECP256K1.recoverPublicKeyFromSignature(SECP256K1.java:370) at org.hyperledger.besu.ethereum.p2p.discovery.internal.Packet.(Packet.java:90) at org.hyperledger.besu.ethereum.p2p.discovery.internal.Packet.decode(Packet.java:126) at org.hyperledger.besu.ethereum.p2p.discovery.VertxPeerDiscoveryAgent.lambda$handlePacket$6(VertxPeerDiscoveryAgent.java:221) at io.vertx.core.impl.ContextImpl.lambda$executeBlocking$2(ContextImpl.java:313) at io.vertx.core.impl.TaskQueue.run(TaskQueue.java:76) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) at java.base/java.lang.Thread.run(Unknown Source)

vbhalerao (Tue, 13 Apr 2021 09:33:27 GMT):
vert.x-eventloop-thread-1 | ERROR | VertxPeerDiscoveryAgent | Encountered error while handling packet java.lang.IllegalArgumentException: Could not recover public key at org.hyperledger.besu.crypto.SECP256K1.recoverFromSignatureNative(SECP256K1.java:495) at org.hyperledger.besu.crypto.SECP256K1.recoverPublicKeyFromSignature(SECP256K1.java:370) at org.hyperledger.besu.ethereum.p2p.discovery.internal.Packet.(Packet.java:90) at org.hyperledger.besu.ethereum.p2p.discovery.internal.Packet.decode(Packet.java:126) at org.hyperledger.besu.ethereum.p2p.discovery.VertxPeerDiscoveryAgent.lambda$handlePacket$6(VertxPeerDiscoveryAgent.java:221) at io.vertx.core.impl.ContextImpl.lambda$executeBlocking$2(ContextImpl.java:313) at io.vertx.core.impl.TaskQueue.run(TaskQueue.java:76) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) at java.base/java.lang.Thread.run(Unknown Source) I deployed besu node yesterday and got this error after snychronized, Can anybody know how to solve this error ? Thanks in advance :)

mohjam2004 (Tue, 13 Apr 2021 10:39:51 GMT):
this doc is not available: https://besu.hyperledger.org/en/stable/Tutorials/Privacy/eeajs-Multinode-example/

HiteshSharma (Tue, 13 Apr 2021 11:41:35 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=rmG9Y9QfHaNuT8sDr) @NicolasMassart It would be great if I can find an explorer to use with Besu. But if not, then I think there is no other option than saving the transactions in a database using the API that @tomhay pointed out (or may be any other).

HiteshSharma (Tue, 13 Apr 2021 14:36:43 GMT):
Any type of node that has enabled their RPC, is a RPC node. That can be a member node or a miner or even a validator. If you have enabled RPC on your member node, you can run your codes their.

HiteshSharma (Tue, 13 Apr 2021 14:38:19 GMT):
It seems to be an old link. Here it is what you may be looking for -https://besu.hyperledger.org/en/stable/Tutorials/Privacy/web3js-eea-Multinode-example/

IonutS (Tue, 13 Apr 2021 17:06:07 GMT):
I also got this syncing an ethereum archive node. I would be interested to know why it happens.

NicolasMassart (Tue, 13 Apr 2021 17:08:33 GMT):
Thanks for noticing that. There should be a redirect to prevent the 404.

NicolasMassart (Tue, 13 Apr 2021 17:14:29 GMT):
I created https://github.com/hyperledger/besu-docs/issues/672 , thanks for the report.

NicolasMassart (Tue, 13 Apr 2021 17:16:47 GMT):
Well if you want an explorer, any Ethereum compatible explorer will work, but if you want one that we tested, you can use the one described on this doc page https://besu.hyperledger.org/en/stable/HowTo/Deploy/Lite-Block-Explorer/

NicolasMassart (Tue, 13 Apr 2021 17:19:38 GMT):
You don't need to change anything in the genesis. The genesis config describes what your network will be, what the first block will be (genesis block). But all nodes uses the same genesis. The only reason to modify a genesis is to add validators in the genesis block. But with the Besu IBFT2 setup that we provide , you already have enough validators to be bale to add new ones after the genesis by making them vote for the new nodes. So in your case, I think probably nothing to change on the genesis.

NicolasMassart (Tue, 13 Apr 2021 17:19:38 GMT):
You don't need to change anything in the genesis. The genesis config describes what your network will be, what the first block will be (genesis block). But all nodes uses the same genesis. The only reason to modify a genesis is to add validators in the genesis block for PoA consensus. But you seem to use PoW Ethash. So in your case, I think probably nothing to change on the genesis.

NicolasMassart (Tue, 13 Apr 2021 17:20:35 GMT):
Then yes you may ahve to change the values to add you additionnal boodnode key, change the other keys to your own.

NicolasMassart (Tue, 13 Apr 2021 17:20:35 GMT):
Then yes you may have to change the values to add you additional bootnode key, change the other keys to your own.

NicolasMassart (Tue, 13 Apr 2021 17:31:07 GMT):
About what else you need to change, it's going to be the templates used to generate the network config files. The best is probably to start looking at the Helm tool before trying to make changes to the templates. https://helm.sh/docs/intro/quickstart/ will help you to get tarted.

NicolasMassart (Tue, 13 Apr 2021 17:33:47 GMT):
@joshuafernandes ?

mdwright88 (Tue, 13 Apr 2021 17:51:17 GMT):
I could also suggest checking out https://tryethernal.com/ — just FYI it's not an official repo/project of ours. Have not tested myself, but feel free to check out their Github to see if there is anything useful there.

joshuafernandes (Tue, 13 Apr 2021 20:57:52 GMT):
Hi @mohjam2004 in the quickstart the RPCnode is the equivalent of a member that you have in the operator - if you've spun up 3 members, then you can pick any of them

joshuafernandes (Tue, 13 Apr 2021 21:01:57 GMT):
To the best of my knowledge the operator doesn't have that functionality added yet and it will be added this year. There are helm charts that are available here https://github.com/ConsenSys/quorum-azure that you can use to spin up nodes with a privacy manager attached - these do IBFT2 only though, not ethash. But you can change that in the genesis jobs

joshuafernandes (Tue, 13 Apr 2021 22:15:22 GMT):
@sumaids ^

joshuafernandes (Tue, 13 Apr 2021 22:17:46 GMT):
https://github.com/ConsenSys/quorum-kubernetes/tree/master/helm/quorum-besu/ethash/besu/templates There are only 2 bootnodes in the templates, hence only 2 are deployed

joshuafernandes (Tue, 13 Apr 2021 22:19:21 GMT):
Any charts in the https://github.com/ConsenSys/quorum-kubernetes/tree/master/helm are intended for learning, and are quite 'fixed' ie the entire chart deploys a full network, rather than one node for example

joshuafernandes (Tue, 13 Apr 2021 22:22:04 GMT):
The helmfile setup here https://github.com/ConsenSys/quorum-kubernetes/tree/master/helmfile/quorum-besu/ibft2 should do what you want when you configure things. Or alternatively https://github.com/ConsenSys/quorum-azure/tree/master/helm/dev

joshuafernandes (Tue, 13 Apr 2021 22:23:07 GMT):
Are you able to tell us what you are trying to achieve and what your intended network topology is please so that we can better assist?

joshuafernandes (Tue, 13 Apr 2021 22:25:24 GMT):
To use helmfile https://github.com/roboll/helmfile - its a dependency

markatag (Tue, 13 Apr 2021 22:29:26 GMT):
Has joined the channel.

markatag (Tue, 13 Apr 2021 22:29:26 GMT):
hi..need help connecting one set of nodes to the orignal set of nodes created, on same chain

markatag (Tue, 13 Apr 2021 22:31:18 GMT):
using modified npx docker setup, have 4 validator nodes on original setup, with RPCnode as well..and another machine on a seperate network with same setup...copied the genesis file, and added the RPC enode top static files list of second machine, as well as adding the RPC node and validator1 node to the second machine static nodes list as well

markatag (Tue, 13 Apr 2021 22:32:26 GMT):
maybe i am confused..but I thought the second machine would see the first machine enode and pick up the details and sync..

markatag (Tue, 13 Apr 2021 22:33:48 GMT):
but...anyway..its not working...so I am a bit lost now

markatag (Tue, 13 Apr 2021 22:35:00 GMT):
# bootnodes bootnodes=["enode://dde8ad840a28fadfb01f275c709d78a5215b5c1794330d6112e69c74893776382b967e60b400ac5e5ad60ce48248dc7f40d272c47926343491c3de92e8a4c49a@18.211.191.88:30303","enode://04da4855af0dcb2a13388c354b4275e6bf48e12cc70ff5408d2e302efeb1468bb7fa24acc31450ffa58baa0822f7170baadba529fd5f36319bcc5605a30deae3bb@172.16.239.11:30303","enode"//04e1bbb3ac8d27d944ff872c1f32dc4cafadcc6d7a0f3152e3358dd494f0b30adbe2e95050f081c32339d8369ab3b465b26334f6642c0ef41ae0c9bfa127e304dc@172.16.239.15:30303"] # static nodes static-nodes-file="/config/static-nodes.json" discovery-enabled=true

markatag (Tue, 13 Apr 2021 22:35:24 GMT):
cat static-nodes.json [ "enode://dde8ad840a28fadfb01f275c709d78a5215b5c1794330d6112e69c74893776382b967e60b400ac5e5ad60ce48248dc7f40d272c47926343491c3de92e8a4c49a@18.211.191.88:30303", "enode://04e1bbb3ac8d27d944ff872c1f32dc4cafadcc6d7a0f3152e3358dd494f0b30adbe2e95050f081c32339d8369ab3b465b26334f6642c0ef41ae0c9bfa127e304dc@172.16.239.15:30303", "enode://04da4855af0dcb2a13388c354b4275e6bf48e12cc70ff5408d2e302efeb1468bb7fa24acc31450ffa58baa0822f7170baadba529fd5f36319bcc5605a30deae3bb@172.16.239.11:30303" ]

markatag (Tue, 13 Apr 2021 22:36:19 GMT):
the 18.211.191.88 is the IP address of the original machine, where the RPC node is one of the enodes

markatag (Tue, 13 Apr 2021 22:37:33 GMT):
the 30303 port of this IP is open

drinkcoffee (Tue, 13 Apr 2021 22:53:33 GMT):
I am getting the Besu docker image to operate as an IBFT2 enterprise ethereum network node. For the moment, there is only one node on the network. I received this warning: `besu40 | 2021-04-13 07:07:22.098+00:00 | main | WARN | Besu | --miner-extra-data has been ignored because --miner-enabled was not defined on the command line. besu40 | 2021-04-13 07:07:22.100+00:00 | main | WARN | Besu | --min-gas-price ignored because none of --miner-enabled or --goquorum-compatibility-enabled was defined. miner-enabled means PoW mining. goquorum-compatibility-enabled is a recent addition (Nov 2020), but is undocumented here: https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/ If I don’t want to use Gas, and I don’t want to have a GoQuorum compatibility mode on, what should I do?

drinkcoffee (Tue, 13 Apr 2021 22:53:33 GMT):
I am getting the Besu docker image to operate as an IBFT2 enterprise ethereum network node. For the moment, there is only one node on the network. I received this warning: ``besu40 | 2021-04-13 07:07:22.098+00:00 | main | WARN | Besu | --miner-extra-data has been ignored because --miner-enabled was not defined on the command line. besu40 | 2021-04-13 07:07:22.100+00:00 | main | WARN | Besu | --min-gas-price ignored because none of --miner-enabled or --goquorum-compatibility-enabled was defined.` miner-enabled means PoW mining. goquorum-compatibility-enabled is a recent addition (Nov 2020), but is undocumented here: https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/ If I don’t want to use Gas, and I don’t want to have a GoQuorum compatibility mode on, what should I do?

drinkcoffee (Tue, 13 Apr 2021 22:53:33 GMT):
I am getting the Besu docker image to operate as an IBFT2 enterprise ethereum network node. For the moment, there is only one node on the network. I received this warning: \texttt{besu40 | 2021-04-13 07:07:22.098+00:00 | main | WARN | Besu | --miner-extra-data has been ignored because --miner-enabled was not defined on the command line. besu40 | 2021-04-13 07:07:22.100+00:00 | main | WARN | Besu | --min-gas-price ignored because none of --miner-enabled or --goquorum-compatibility-enabled was defined.} miner-enabled means PoW mining. goquorum-compatibility-enabled is a recent addition (Nov 2020), but is undocumented here: https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/ If I don’t want to use Gas, and I don’t want to have a GoQuorum compatibility mode on, what should I do?

drinkcoffee (Tue, 13 Apr 2021 22:53:33 GMT):
I am getting the Besu docker image to operate as an IBFT2 enterprise ethereum network node. For the moment, there is only one node on the network. I received this warning: besu40 | 2021-04-13 07:07:22.098+00:00 | main | WARN | Besu | --miner-extra-data has been ignored because --miner-enabled was not defined on the command line. besu40 | 2021-04-13 07:07:22.100+00:00 | main | WARN | Besu | --min-gas-price ignored because none of --miner-enabled or --goquorum-compatibility-enabled was defined. miner-enabled means PoW mining. goquorum-compatibility-enabled is a recent addition (Nov 2020), but is undocumented here: https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/ If I don’t want to use Gas, and I don’t want to have a GoQuorum compatibility mode on, what should I do?

drinkcoffee (Wed, 14 Apr 2021 04:58:35 GMT):
If Hyperledger Besu docker container is started with --p2p-enabled=false The following exception gets thrown: besu40 | 2021-04-13 06:50:38.408+00:00 | Timer-0 | ERROR | Besu | Uncaught exception in thread "Timer-0" besu40 | java.io.EOFException besu40 | at org.xbill.DNS.NioTcpClient$ChannelState.processRead(NioTcpClient.java:168) besu40 | at org.xbill.DNS.NioTcpClient$ChannelState.processReadyKey(NioTcpClient.java:126) besu40 | at org.xbill.DNS.Client.processReadyKeys(Client.java:97) besu40 | at org.xbill.DNS.Client.runSelector(Client.java:72) besu40 | at java.base/java.lang.Thread.run(Unknown Source)

atoulme (Wed, 14 Apr 2021 07:09:10 GMT):
No, this exception is not related. This exception has to do with your DNS server being unable to serve large records over TCP. This is fixed in Apache Tuweni, but we need a release out to patch Besu.

mohjam2004 (Wed, 14 Apr 2021 07:49:33 GMT):
I have deployed besu based on this repository: https://github.com/hyperledger-labs/besu-operator but my prometheus has no targets and so the grafana has no graph data. what is the problem?

deluca-mike (Wed, 14 Apr 2021 07:50:21 GMT):
Has joined the channel.

deluca-mike (Wed, 14 Apr 2021 07:50:21 GMT):
Hi all. I started syncing a Besu node in Ethereum testnet, and while I am seeing increasing `Estimated World State completion`'s, I see a ton of `java.lang.IllegalArgumentException: Could not recover public key at org.hyperledger.besu.crypto.SECP256K1.recoverFromSignatureNative(SECP256K1.java:495) at org.hyperledger.besu.crypto.SECP256K1.recoverPublicKeyFromSignature(SECP256K1.java:370)` followed by `2021-04-14 05:44:53.265+00:00 | vert.x-eventloop-thread-2 | ERROR | VertxPeerDiscoveryAgent | Encountered error while handling packet`. Is this normal?

deluca-mike (Wed, 14 Apr 2021 07:50:21 GMT):
Hi all. I started syncing a Besu node in Ethereum testnet, and while I am seeing increasing `Estimated World State completion`'s, I see a ton of `java.lang.IllegalArgumentException: Could not recover public key at org.hyperledger.besu.crypto.SECP256K1.recoverFromSignatureNative(SECP256K1.java:495) at org.hyperledger.besu.crypto.SECP256K1.recoverPublicKeyFromSignature(SECP256K1.java:370)` followed by `2021-04-14 05:44:53.265+00:00 | vert.x-eventloop-thread-2 | ERROR | VertxPeerDiscoveryAgent | Encountered error while handling packet`. Is this normal? Besu 21.1.3, openjdk:11-jre-slim-buster

mohjam2004 (Wed, 14 Apr 2021 07:50:21 GMT):
@joshuafernandes

mohjam2004 (Wed, 14 Apr 2021 08:22:21 GMT):
you mean that If I change genesis I can have ethash support?

joshuafernandes (Wed, 14 Apr 2021 08:38:35 GMT):
There are a couple of things you need to do to get Ethash working: - update the genesis file to use the POA - you can use this as an example https://besu.hyperledger.org/en/stable/Tutorials/Private-Network/Create-Private-Network/

joshuafernandes (Wed, 14 Apr 2021 08:38:35 GMT):
There are a couple of things you need to do to get Ethash working: - update the genesis file to use POW consensus - you can use this as an example https://besu.hyperledger.org/en/stable/Tutorials/Private-Network/Create-Private-Network/

joshuafernandes (Wed, 14 Apr 2021 08:41:20 GMT):
then add the `--miner--enabled` and `--miner-coinbase` parameters to some nodes that will serve as miners. Basically with the POA (IBFT) algorithms the validators create the blocks, with POW(ethash) you need to replace the validators with miners

joshuafernandes (Wed, 14 Apr 2021 08:43:21 GMT):
Have a look at the templates in here https://github.com/ConsenSys/quorum-kubernetes/tree/master/helm/quorum-besu/ethash/besu/templates For the miner specifically, check the miner-statefulset.yml

mohjam2004 (Wed, 14 Apr 2021 09:32:34 GMT):
hi, what is the problem that I can't decrease the number of nodes? @joshuafernandes

mohjam2004 (Wed, 14 Apr 2021 09:32:34 GMT):
hi, what is your idea that I can't decrease the number of nodes? @joshuafernandes

mohjam2004 (Wed, 14 Apr 2021 10:05:58 GMT):
I actually need kubernetes operator for all consensus protocol. Only for ibft2 is available. with the help of kubernets operator for besu only by asking a few questions from user the besu network is deployed into kubernetes cluster. I mean the config file that need to be ready is simple.

IonutS (Wed, 14 Apr 2021 10:59:32 GMT):
I have the same for ethereum archive node. The node has already synced over 10M blocks without any issue ```Apr 14 12:56:47 Ubuntu-2004-focal-64-minimal besu[2352535]: java.lang.IllegalArgumentException: Could not recover public key Apr 14 12:56:47 Ubuntu-2004-focal-64-minimal besu[2352535]: at org.hyperledger.besu.crypto.SECP256K1.recoverFromSignatureNative(SECP256K1.java:495) Apr 14 12:56:47 Ubuntu-2004-focal-64-minimal besu[2352535]: at org.hyperledger.besu.crypto.SECP256K1.recoverPublicKeyFromSignature(SECP256K1.java:370) Apr 14 12:56:47 Ubuntu-2004-focal-64-minimal besu[2352535]: at org.hyperledger.besu.ethereum.p2p.discovery.internal.Packet.(Packet.java:90) Apr 14 12:56:47 Ubuntu-2004-focal-64-minimal besu[2352535]: at org.hyperledger.besu.ethereum.p2p.discovery.internal.Packet.decode(Packet.java:126) Apr 14 12:56:47 Ubuntu-2004-focal-64-minimal besu[2352535]: at org.hyperledger.besu.ethereum.p2p.discovery.VertxPeerDiscoveryAgent.lambda$handlePacket$6(VertxPeer```

mohjam2004 (Wed, 14 Apr 2021 15:04:39 GMT):
I have deployed besu on a kubernetes cluster and I want to run a smart contract on it to check the deployed besu, Is there any sample smart contract that I can test in my deployed besu on kubernetes? (I have 2 boot nodes, 2 validator and 1 member node).

mohjam2004 (Wed, 14 Apr 2021 15:04:39 GMT):
I have deployed besu on a kubernetes cluster and I want to run a smart contract on it to check the deployed besu, Is there any sample smart contract that I can test in my deployed besu on kubernetes? (I have 2 boot nodes, 2 validators and 1 member node).

shemnon (Wed, 14 Apr 2021 16:04:18 GMT):
@IonutS @vbhalerao The stack trace is being traced by this bug: https://github.com/hyperledger/besu/issues/2142 tl;dr Not a besu error, ignore it and it will be fixed in the next release.

NicolasMassart (Wed, 14 Apr 2021 16:07:37 GMT):
@mdwright88 this seems to have a nice UI and easy to use, but be careful because it requires a 3rd party: this is a service that you have to feed with your chain data using their CLI tool but you can't have the explorer running on your own architecture and it opens a breach to the outside if you want your network to be isolated from the outside. May be interesting though, but be careful about this aspect of the tool.

deluca-mike (Wed, 14 Apr 2021 16:12:34 GMT):
s. +

IonutS (Wed, 14 Apr 2021 16:41:04 GMT):
I see, will that happen soon? I guess our nodes won't continue to sync unti lthe new release, right?

IonutS (Wed, 14 Apr 2021 16:41:04 GMT):
I see, will that happen soon? I guess our nodes won't continue to sync until the new release, right?

shemnon (Wed, 14 Apr 2021 17:43:23 GMT):
Nodes are syncing fine. The error statement is noise and occurring at too high a level.

shemnon (Wed, 14 Apr 2021 17:44:03 GMT):
If your node has stopped syncing, it's likely because of a different problem.

IonutS (Wed, 14 Apr 2021 18:14:54 GMT):
I can confirm that it still syncs, I got confused by the noisy logs. I thought it keeps trying to go beyond that error. Any plans to improve syncing? Currently it is super slow compared to Open Ethereum client. I have like 2 months of syncing and still at block a bit over 10600000

shemnon (Wed, 14 Apr 2021 18:57:13 GMT):
The plan is to finish bonsai tries.

shemnon (Wed, 14 Apr 2021 18:57:32 GMT):
But full archival is not our primary use case.

joshuafernandes (Wed, 14 Apr 2021 20:49:00 GMT):
https://github.com/ConsenSys/quorum-kubernetes/tree/master/helm is probably the best learning tool re all consensus algorithms - they are however in helm and not an operator. So you'd need to look through the templates and customize to suit your requirements

joshuafernandes (Wed, 14 Apr 2021 21:16:20 GMT):
Not sure tbh, what do the logs say. If I get the chance I will look into it and see if I can replicate what you're seeing

arjanvaneersel (Thu, 15 Apr 2021 03:53:53 GMT):
Has joined the channel.

arjanvaneersel (Thu, 15 Apr 2021 03:57:46 GMT):
Hello! First of all my compliments for having this really interesting project! I'm currently looking into Besu and I wonder if there are some guidelines about when to use which consensus protocol. It's especially the difference between Clique and IBFT that's not clear to me. Also I wonder about scalability, how large could IBFT or Clique based networks scale?

arjanvaneersel (Thu, 15 Apr 2021 03:59:24 GMT):
And just out of curiosity: Quorum was made in Go (for as far as I know), why the change to Java? Usually I see people moving from Java to Go for performance reasons, but from Go to Java I have not seen before.

sownak (Thu, 15 Apr 2021 08:41:00 GMT):
So it seems that although Besu now supports DNS names via Xdns-enabled but the admin_addPeer function does not accept a DNS name in place of the IP address (it is throwing parse error). Where can this issue be raised?

NicolasMassart (Thu, 15 Apr 2021 10:48:21 GMT):
This is a bit more complex and only brand related. Let me explain: - Before August 2020, Quorum was a JP Morgan project written in Go and forked from Geth. - Besu is the Hyperledger ethereum client written in Java. ConsenSys acquired the Quorum project and decided to use the name as an umbrella for a suite of products related to Ethereum enterprise offering. They then renamed the Go client to GoQuorum. Besu, the Java client, is still Besu. But now both are shipped by ConsenSys under the Quorum brand alongside other tools like EthSigner, Tesssera, Orion,... So there was no migration from Go to Java, Quorum is just a name for an ecosystem composed of the Go and Java client. You can choose which one to use. See more about Quorum, the umbrella brand, at https://consensys.net/quorum/faq

NicolasMassart (Thu, 15 Apr 2021 10:52:11 GMT):
The biggest difference is Clique doesn't have immediate finality compared to IBFT2. Read more about these PoA protocols on Besu doc https://besu.hyperledger.org/en/stable/Concepts/Consensus-Protocols/Comparing-PoA/

NicolasMassart (Thu, 15 Apr 2021 10:57:20 GMT):
This is very likely a network issue between your two machines. Did you open 30303 ports on both UDP and TCP? Are you sure the interface used to expose your node are not localhost only? Are the routes between your two networks correctly configured (can you telnet on port 30303 between the nodes?)

NicolasMassart (Thu, 15 Apr 2021 10:58:01 GMT):
We would need the command line and toml configuration file used on both nodes to investigate more.

NicolasMassart (Thu, 15 Apr 2021 10:58:57 GMT):
This is a different problem than the zero gas price one right?

IonutS (Thu, 15 Apr 2021 12:55:02 GMT):
That would be great feature though! I think currently Besu is the only real alternative to Open Ethereum with trace api and EIP 1898 included. We now see again the OE has issues during the Berlin Hard Fork and a lot of services are relying on that.

atoulme (Thu, 15 Apr 2021 14:50:44 GMT):
you can raise issues on github.

RobbeV 1 (Thu, 15 Apr 2021 20:43:14 GMT):
Hi everyone, I'm looking into privacy groups. One of the functions web3-eea offers is 'findPrivacyGroup()'. I can see cases where u want to use this, but in my case I'd rather have that users can't search for privacygroups. I'll explain further, when company A and company B make a privacygroup, I don't want company C to try to guess with findPrivacyGroup() if A and B have done private transactions. Is there a way to configer my network so findPrivacyGroup is not allowed? Or is my consern flawed?

drinkcoffee (Thu, 15 Apr 2021 21:33:55 GMT):
yes. this is a separate issue

RudraniAngira (Fri, 16 Apr 2021 16:58:26 GMT):
Has joined the channel.

RudraniAngira (Fri, 16 Apr 2021 16:58:46 GMT):
Hello Everyone. Is it a good idea to setup besu code on Windows 10 with intellij. I am looking forward to contributing to the code so just curious if MacOS or linux would be a better choices.

shemnon (Fri, 16 Apr 2021 17:30:43 GMT):
MacOS or Linux would be better choices. Right now the besu-native libraries are only available on mac and linux (patches welcome!) and while we do have pure java fallbacks they are very slow.

shemnon (Fri, 16 Apr 2021 17:31:00 GMT):
it will also require some special CLI flags to work out of the box on windows.

mohjam2004 (Sat, 17 Apr 2021 06:06:46 GMT):
That is kind of you if you also check why the prometheus and grafana have no data after deployment.

mohjam2004 (Sat, 17 Apr 2021 08:11:41 GMT):
hi, can I run this dapp (quorum-dev-quickstart: https://github.com/ConsenSys/quorum-dev-quickstart/blob/master/files/besu/README.md#poa-network-dapps) in my deployed besu network? If yes, what changes I must do to run this dapp in my deployed besu network?

mohjam2004 (Sat, 17 Apr 2021 08:11:41 GMT):
hi, can I run this dapp (quorum-dev-quickstart: https://github.com/ConsenSys/quorum-dev-quickstart/blob/master/files/besu/README.md#poa-network-dapps) in my deployed besu network? If yes, what changes I must do to run this dapp in my deployed besu network? I dont want to run it in its deployed test network I have my own deployed besu network

mohjam2004 (Sat, 17 Apr 2021 08:12:34 GMT):
I mean what changes i must do in these destinations?

mohjam2004 (Sat, 17 Apr 2021 08:12:36 GMT):

Clipboard - April 17, 2021 12:42 PM

cbfh (Sat, 17 Apr 2021 09:24:38 GMT):
Hi, beginner here. I'm trying to follow the Create a Permissioned Network tutorial (https://besu.hyperledger.org/en/stable/Tutorials/Permissioning/Create-Permissioned-Network), but I want to use a different device for each node. I'm a bit confused about where to place the Genesis file, and how to change the node starting commands to correctly use the genesis file. What should I do? Is this possible?

mohjam2004 (Sat, 17 Apr 2021 12:13:20 GMT):
Is there any block explorer for besu that can be installed through helm command?

mohjam2004 (Sat, 17 Apr 2021 14:06:07 GMT):
I have deployed besu based on besu kubernetes operator: (2 validators, 1 member and 2 boot nodes). I have deployed an Ethereum block explorer and set an environment variable to connect to member node. but when I open block explorer nothing is shown as target.

mohjam2004 (Sun, 18 Apr 2021 06:18:49 GMT):
I use this repo to deploy besu on kubernets cluster: https://github.com/ConsenSys/quorum-azure which configuration files must I change to use longhorn storage class instead of azure?

mohjam2004 (Sun, 18 Apr 2021 06:36:24 GMT):
i have deployed longhorn as default storage class in the kubernetes cluster

mohjam2004 (Sun, 18 Apr 2021 08:29:48 GMT):
I changed some setting in node-statefulset.yaml and the problem is resolved and pv is created on longhorn storage calss.

mohjam2004 (Sun, 18 Apr 2021 08:31:22 GMT):
my new problem is this: the boot node become active but restart constantly and this is its log: Setting logging level to INFO 2021-04-18 08:28:04.871+00:00 | main | INFO | AbstractAltBnPrecompiledContract | Using LibEthPairings native alt bn128 2021-04-18 08:28:07.675+00:00 | main | INFO | SECP256K1 | Using native secp256k1 2021-04-18 08:28:07.680+00:00 | main | INFO | Besu | Starting Besu version: besu/v21.1.4/linux-x86_64/oracle_openjdk-java-11 2021-04-18 08:28:08.577+00:00 | main | WARN | Besu | --min-gas-price ignored because none of --miner-enabled or --goquorum-compatibility-enabled was defined. 2021-04-18 08:28:08.779+00:00 | main | INFO | Besu | Static Nodes file = /data/static-nodes.json 2021-04-18 08:28:08.780+00:00 | main | INFO | StaticNodesParser | StaticNodes file /data/static-nodes.json does not exist, no static connections will be created. 2021-04-18 08:28:08.780+00:00 | main | INFO | Besu | Connecting to 0 static nodes. 2021-04-18 08:28:08.782+00:00 | main | INFO | Besu | Security Module: localfile 2021-04-18 08:28:08.884+00:00 | main | INFO | RocksDBKeyValueStorageFactory | No existing database detected at /data. Using version 1 ANTLR Tool version 4.7.1 used for code generation does not match the current runtime version 4.8ANTLR Runtime version 4.7.1 used for parser compilation does not match the current runtime version 4.8ANTLR Tool version 4.7.1 used for code generation does not match the current runtime version 4.8ANTLR Runtime version 4.7.1 used for parser compilation does not match the current runtime version 4.8/data/DATABASE_METADATA.json (Permission denied) 2021-04-18 08:28:08.886+00:00 | main | ERROR | RocksDBKeyValueStorageFactory | Failed to retrieve the RocksDB database meta version: /data/DATABASE_METADATA.json (Permission denied) To display full help: besu [COMMAND] --help

Nithronium (Sun, 18 Apr 2021 15:39:22 GMT):
Has joined the channel.

Nithronium (Sun, 18 Apr 2021 15:39:23 GMT):
Greetings, is it possible to make people pay for gas on IBFT2 network?

Nithronium (Sun, 18 Apr 2021 15:39:32 GMT):
Also is it possible to add a native token?

Nithronium (Sun, 18 Apr 2021 15:40:10 GMT):
Or would it be better to fork Binance SC and make modifications there to allow third-party participants to network?

Nithronium (Sun, 18 Apr 2021 15:56:36 GMT):
Alright I figured out that IBFT2 besu also supports third-party participants to transact on the network

macfarla (Mon, 19 Apr 2021 00:33:50 GMT):
You can only find privacy groups that you are a member of. So if C calls findPrivacyGroup(A,B) no results will be found

arjanvaneersel (Mon, 19 Apr 2021 04:45:06 GMT):
Hello. I'm trying to setup a permissioned network through the documentation (https://besu.hyperledger.org/en/stable/Tutorials/Permissioning/Getting-Started-Onchain-Permissioning/) and this demo: https://www.youtube.com/watch?v=MhOJKOoEZQQ. I understand, thanks to the demo, when creating my genesis file, from where to get the bytecode for the ingress contracts. I don't uinderstand from where I can get the storage values. I am talking about the first, initial launch of my network.

arjanvaneersel (Mon, 19 Apr 2021 04:45:06 GMT):
Hello. I'm trying to setup a permissioned network through the documentation (https://besu.hyperledger.org/en/stable/Tutorials/Permissioning/Getting-Started-Onchain-Permissioning/) and this demo: https://www.youtube.com/watch?v=MhOJKOoEZQQ. I understand, thanks to the demo, when creating my genesis file, from where to get the bytecode for the ingress contracts. I don't uinderstand from where I can get the storage values. I am talking about the first, initial launch of my network. Could anyone explain me what to do?

arjanvaneersel (Mon, 19 Apr 2021 04:45:06 GMT):
Hello. I'm trying to setup a permissioned network with onchain permissioning through the documentation (https://besu.hyperledger.org/en/stable/Tutorials/Permissioning/Getting-Started-Onchain-Permissioning/) and this demo: https://www.youtube.com/watch?v=MhOJKOoEZQQ. I understand, thanks to the demo, when creating my genesis file, from where to get the bytecode for the ingress contracts. I don't uinderstand from where I can get the storage values. I am talking about the first, initial launch of my network. Could anyone explain me what to do?

RobbeV 1 (Mon, 19 Apr 2021 11:16:37 GMT):
Thank you, that makes sense!

A1forETH (Mon, 19 Apr 2021 15:05:42 GMT):
Has joined the channel.

A1forETH (Mon, 19 Apr 2021 15:05:42 GMT):
Hey guys running into an error with besu and hoping someone can help. What Public key is besu referring too? Is there any other reason i may be getting this error? ``` 2021-04-17 22:39:34.091+00:00 | vert.x-eventloop-thread-1 | ERROR | VertxPeerDiscoveryAgent | Encountered error while handling packet java.lang.IllegalArgumentException: Could not recover public key at org.hyperledger.besu.crypto.SECP256K1.recoverFromSignatureNative(SECP256K1.java:495) at org.hyperledger.besu.crypto.SECP256K1.recoverPublicKeyFromSignature(SECP256K1.java:370) at org.hyperledger.besu.ethereum.p2p.discovery.internal.Packet.(Packet.java:90) at org.hyperledger.besu.ethereum.p2p.discovery.internal.Packet.decode(Packet.java:126) at org.hyperledger.besu.ethereum.p2p.discovery.VertxPeerDiscoveryAgent.lambda$handlePacket$6(VertxPeerDiscoveryAgent.java:221) at io.vertx.core.impl.ContextImpl.lambda$executeBlocking$2(ContextImpl.java:313) at io.vertx.core.impl.TaskQueue.run(TaskQueue.java:76) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) at java.base/java.lang.Thread.run(Thread.java:834) ```

A1forETH (Mon, 19 Apr 2021 15:19:03 GMT):
I get that error over and over again until besu just dies. This was happening before i updated the besu client but am now on version besu/v21.1.1/linux-x86_64/openjdk-java-11

rai (Mon, 19 Apr 2021 18:49:39 GMT):
Hi @A1forETH, we have a fix for that being worked on right now: https://github.com/hyperledger/besu/pull/2143

rai (Mon, 19 Apr 2021 18:50:29 GMT):
However, I wasn't aware that it was causing the node to fall over. I was under the impression that it was just spamming a lot of logs. Could you provide your full besu logs?

rai (Mon, 19 Apr 2021 18:51:00 GMT):
And all configuration including the command line args and the config-file you're using

A1forETH (Mon, 19 Apr 2021 18:55:52 GMT):
Yea i can but I think I found the real issue. It was just buried in the other errors that 2143 fixes. My drive is full thought it was 2T but its only 1T. If I enable pruning will besu start pruning the database right away to start making more space?

rai (Mon, 19 Apr 2021 19:05:10 GMT):
Ok, that makes much more sense. With pruning, it takes some space to makes some space unfortunately! We have to store metadata (namely which nodes to keep when we start sweeping the database). Try resizing and starting pruning

rai (Mon, 19 Apr 2021 19:05:10 GMT):
Ok, that makes much more sense. With pruning, it takes some space to make some space unfortunately! We have to store metadata (namely which nodes to keep when we start sweeping the database). Try resizing and starting pruning

A1forETH (Mon, 19 Apr 2021 20:04:09 GMT):
Ill have to move to a new drive. Im currently remote form my system so i may just have to remove the chain data and start with pruning enabled.

clzola (Mon, 19 Apr 2021 23:00:56 GMT):
Has joined the channel.

clzola (Mon, 19 Apr 2021 23:01:07 GMT):
Hello 👋

clzola (Mon, 19 Apr 2021 23:01:22 GMT):
I have a question regarding ibft 2.0

clzola (Mon, 19 Apr 2021 23:01:41 GMT):
I notices that blocks are created every 2 seconds

clzola (Mon, 19 Apr 2021 23:02:04 GMT):
Is there any way to make it being created only ehen there are transactions

arjanvaneersel (Tue, 20 Apr 2021 10:57:04 GMT):
@clzola That is an interesting question indeed. I'd like to know the answer to that too.

shemnon (Tue, 20 Apr 2021 14:40:52 GMT):
Suppressing empty blocks is not part of IBFT2 right now. IIRC only Aura on OpenEthereum supports that feature.

atoulme (Tue, 20 Apr 2021 16:50:49 GMT):
it's also a good idea to have blocks, even if empty, as they help the chain keep secure. Otherwise the tip of the chain can be forked more easily.

shemnon (Tue, 20 Apr 2021 18:21:54 GMT):
With a BFT protocol you can keep increasing the round counter instead of issuing a block. But BFTs are different from Clique and PoW in that a quorum must approve the block, so there is no forking. (that's how they get their finality). I think it was discussed as a possibility for QBFT but I'm not sure how far the discussion went.

recarelee (Tue, 20 Apr 2021 21:18:35 GMT):
Has joined the channel.

recarelee (Tue, 20 Apr 2021 21:18:36 GMT):
Hi everyone, I am running Besu client in Ethereum network, is there any way to disable the local transaction feature (transactions sent through RPC)? Thank you!

daniellehrner (Tue, 20 Apr 2021 23:12:56 GMT):
Has joined the channel.

daniellehrner (Tue, 20 Apr 2021 23:12:57 GMT):
Hi everyone, we are working on adding a new signature algorithm (secp256r1) to Besu. The Java implementation is finished, but for performance reasons we need to select a native library implementation as well. I reviewed many different libraries and I think two of them would be suitable. I have created a Google Doc with an overview. Please let me know what you think about them: https://docs.google.com/document/d/1NFmh0Z2Qs7HjtMKsdwQaeQXoBIR5Lbh3O3lKXSyVs_s/edit?usp=sharing

arjanvaneersel (Wed, 21 Apr 2021 07:09:28 GMT):
I know that I can configure a zero gas network, but is there also a way to configure a network with a fixed gas price?

mohjam2004 (Wed, 21 Apr 2021 08:18:47 GMT):
I have deployed a private besu network on kubernetes. now I want to monitor ethstat. I must run alethio ethstat client. Is specifying these options mandatory? --register --account-email

mohjam2004 (Wed, 21 Apr 2021 08:19:06 GMT):
and what is this option ? --net host

mohjam2004 (Wed, 21 Apr 2021 08:19:23 GMT):
the whole command is this: docker run -d --rm --name ethstats-client --net host alethio/ethstats-cli --register --account-email --node-name --server-url http://localhost:3000 --client-url ws://127.0.0.1:8546

neha.jajodia (Wed, 21 Apr 2021 09:46:11 GMT):
Has joined the channel.

neha.jajodia (Wed, 21 Apr 2021 09:46:12 GMT):
Enterprise blockchain jumps 40% in 2020. Get early access to the original report on Enterprise Blockchain Protocols Evolution Index 2021. https://chainstack.com/download/enterprise-blockchain-protocols-evolution-index-2021/

neha.jajodia (Wed, 21 Apr 2021 09:46:47 GMT):
The report provides detailed qualitative and quantitative on publicly available developer data of the 6 most popular enterprise blockchain protocols being used today - Autonity, Baseline, Besu, Corda, Fabric, Quorum.

HiteshSharma (Wed, 21 Apr 2021 12:37:14 GMT):

Clipboard - April 21, 2021 6:05 PM

HiteshSharma (Wed, 21 Apr 2021 12:37:14 GMT):

Clipboard - April 21, 2021 6:05 PM

Nithronium (Wed, 21 Apr 2021 13:12:42 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=jaLFJMrxzAmcbacxs) as @shemnon mentioned, IBFT2 requires blocks being mined even if they are empty at the current state. However, instead of not mining empty blocks, maybe there could be an algorithm which groups the empty blocks together as a chain re-org and registers as one block only. So if your 1st block is mined and from 2 to 8th blocks are empty and there is data on only 9th and later blocks, maybe the daemon can pack the blocks from 2th to 8th, and record as single block.

Nithronium (Wed, 21 Apr 2021 13:14:07 GMT):
Though again this approach has to be tested against malicious nodes (if there are untrusted participants in the PoA)

Nithronium (Wed, 21 Apr 2021 13:16:27 GMT):
Do you guys think it is a good idea to remove the PoW and Clique related things if we want to deploy IBFT2 chain? Besu currently supports different consensus algorithms but I wonder how that effects the performance & storage of the client.

Nithronium (Wed, 21 Apr 2021 13:18:38 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=TwuyJkS84nTAKewix) Why would you want to do that? In case you want everyone to pay the same gas price for executing things, what happens when there are more TXs coming than your network can handle per second?

Nithronium (Wed, 21 Apr 2021 13:19:23 GMT):
I mean, assume that you handle 5 tx per second, each 10 gwei/gas. If you start receiving 10 tx per second and you won't allow people to outbid each other, it's gonna be like rolling the dice to have a tx get recorded.

Nithronium (Wed, 21 Apr 2021 13:20:20 GMT):
If you don't think you'll reach the block limit, then simply set min gas variable when running node, so that node rejects any tx sent with lower gas than that. And that would be the minimum limit, so kinda like fixed but if network activity grows, can increase etc.

RobbeV 1 (Wed, 21 Apr 2021 14:34:25 GMT):
Hi everyone, I'm trying to add a member to a privacy group. web3.priv doesn't have the addToPrivacyGroup function, am I supposed to use web3.privx? And what is the difference between web3.priv and web3.privx?

shemnon (Wed, 21 Apr 2021 14:39:03 GMT):
Not right now. It would be difficult because a gas free network is actually a network that accepts a zero gas price. TXes are always free to set the gas price to whatever they want. The problem with a fixed cost network is you would disregard the gas price in the TX. Doable, but that's not how Besu is currently written.

shemnon (Wed, 21 Apr 2021 14:41:37 GMT):
Removing the clique and PoW code from Besu in general is a non-starter. Mainnet compatability is one of its pillars.

shemnon (Wed, 21 Apr 2021 14:42:00 GMT):
If your code is only configured to use IBFT then clique and PoW specific code won't be used.

HiteshSharma (Wed, 21 Apr 2021 15:01:47 GMT):
I'm using this genesis file - ``` { "config": { "constantinoplefixblock": 0, "ethash": {}, "chainID": xxxx }, "difficulty": "0x1", "mixhash": "0x000000000000000000000000000000000000000000000000000000000000000", "nonce": "0x42", "gasLimit": "0x1000000", "timestamp": "0x0", "coinbase": "0x0000000000000000000000000000000000000000", "alloc": { "fe3b557e8fb62b89f4916b721be55ceb828dbd73": { "balance": "10000" }, "627306090abaB3A6e1400e9345bC60c78a8BEf57": { "balance": "10000" }, "f17f52151EbEF6C7334FAD080c5704D77216b732": { "balance": "10000" }, "0x0000000000000000000000000000000000008888": { "comment": "Account Ingress smart contract", "balance": "0", "code": "6080604052348015..................12a5d64736f6c63430005090032", "storage": { "0x0000000000000000000000000000000000000000000000000000000000000000": "0x72756c6573000000000000000000000000000000000000000000000000000000", "0x0000000000000000000000000000000000000000000000000000000000000001": "0x61646d696e697374726174696f6e000000000000000000000000000000000000", "0x0000000000000000000000000000000000000000000000000000000000000004": "0x0f4240" } } } } ``` But the difficulty of a block is showing as - `0x20000`. Also, it is taking very long for block creation, something like more than 15 mins. And even the difficulty is not changing with blocks. I only have 2 miners in the network for now. Please guide me on this, to how to have a network with 12sec latency in block creation, and dynamic difficulty; similar to Ethereum blockchain.

HiteshSharma (Wed, 21 Apr 2021 15:01:47 GMT):
I'm using this genesis file - ``` { "config": { "constantinoplefixblock": 0, "ethash": {}, "chainID": xxxx }, "difficulty": "0x1", "mixhash": "0x000000000000000000000000000000000000000000000000000000000000000", "nonce": "0x42", "gasLimit": "0x1000000", "timestamp": "0x0", "coinbase": "0x0000000000000000000000000000000000000000", "alloc": { "fe3b557e8fb62b89f4916b721be55ceb828dbd73": { "balance": "10000" }, "627306090abaB3A6e1400e9345bC60c78a8BEf57": { "balance": "10000" }, "f17f52151EbEF6C7334FAD080c5704D77216b732": { "balance": "10000" }, "0x0000000000000000000000000000000000008888": { "comment": "Account Ingress smart contract", "balance": "0", "code": "6080604052348015..................12a5d64736f6c63430005090032", "storage": { "0x0000000000000000000000000000000000000000000000000000000000000000": "0x72756c6573000000000000000000000000000000000000000000000000000000", "0x0000000000000000000000000000000000000000000000000000000000000001": "0x61646d696e697374726174696f6e000000000000000000000000000000000000", "0x0000000000000000000000000000000000000000000000000000000000000004": "0x0f4240" } } } } ``` But the difficulty of a block is showing as - `0x20000`. Also, it is taking very long for block creation, something like more than 15 mins. And even the difficulty is not changing with blocks. I only have 2 miners in the network for now. Please guide me on this, to how to have a network with 12sec latency in block creation, and dynamic difficulty; similar to Ethereum blockchain. Currently, the permissioning contracts have not been deployed on the network, as I was just checking that the node connects and the block creation time is correct.

shemnon (Wed, 21 Apr 2021 15:10:23 GMT):
`0x20000` is the protocol defined minimum difficulty for a floating difficulty. Try playing with `fixeddifficulty` - that will provide the irregular block times you don't get with clique - https://besu.hyperledger.org/en/stable/Reference/Config-Items/#fixed-difficulty

HiteshSharma (Thu, 22 Apr 2021 07:24:46 GMT):
But wouldn't that fix the difficulty in the future too? I mean when there will be many miners with high computation resources, the blocks could be mined in very few seconds, and that create inconsistency within the network. P.S - This Ethash network will be public.

HiteshSharma (Thu, 22 Apr 2021 07:33:04 GMT):
``` Using fixeddifficulty is not recommended for use with Ethash outside of test environments. For production networks using Ethash, we recommend setting a low difficulty value in the genesis file instead. Ethash will adjust the difficulty of the network based on hashrate to produce blocks at the targeted frequency. ``` Quoting this line from the link you provided and the statement that you made `fixeddifficulty` is static and the minimum difficulty would be `0x20000` only when using `difficulty` parameter. But as the miners increase and the difficulty should exceed the above number, will then the difficulty becomes dynamic and works similar to Ethereum? Second question is - can we decrease/increase the block creation time than the one in Ethereum? If yes, how?

Nithronium (Thu, 22 Apr 2021 07:57:39 GMT):
AFAIK fixed difficulty is, well, fixed. You use it during development. And you switch to difficulty on deployment. If you can't find enough hashpower to mine even 0x20000 on the beginning, you might want to reconsider your choices for the network security because anyone renting hashrate from Nicehash would be able to takeover your network.

HiteshSharma (Thu, 22 Apr 2021 08:10:41 GMT):
Okay. @Nithronium, thanks for verifying this. If we take care of the hash power, will the `difficulty` be dynamic after that. And secondly, can we change the block creation time?

Nithronium (Thu, 22 Apr 2021 10:05:46 GMT):
on the config, for the IBFT2 (i am trying that one), I have options inside the ibft2 object, that can specify `blockperiodseconds` so maybe for ethash there's that too.

mohjam2004 (Thu, 22 Apr 2021 10:54:16 GMT):
hi @joshuafernandes how can I deploy Alethio Ethstat on kubernetes (server-client-dashboard) when I deploy besu on kubernetes?

mohjam2004 (Thu, 22 Apr 2021 10:54:16 GMT):
hi @joshuafernandes , after deploying besu on kubernetes based on this doc: https://github.com/ConsenSys/quorum-kubernetes how can I deploy Alethio Ethstat on kubernetes (server-client-dashboard)?

mohjam2004 (Thu, 22 Apr 2021 10:56:12 GMT):
I have trouble deploying Alethio Ethstat client

mohjam2004 (Thu, 22 Apr 2021 11:05:47 GMT):
I deploy Alethio block explorer

mohjam2004 (Thu, 22 Apr 2021 11:05:47 GMT):
I could deploy Alethio block explorer

mohjam2004 (Thu, 22 Apr 2021 11:07:19 GMT):
Is it possible to have example file for Alethio block explorer and Ethstat on this repo: https://github.com/ConsenSys/quorum-kubernetes

cbfh (Thu, 22 Apr 2021 11:27:04 GMT):
Hi everyone. When creating a free-gas permissioned Clique network, transactions aren't always sent. I have tried this a few times and on some tries it works, on others doesn't. I have followed the documentation, what might I be doing wrong?

cbfh (Thu, 22 Apr 2021 11:27:28 GMT):
Blocks are created correctly, and the nodes connect properly as peers

Nithronium (Thu, 22 Apr 2021 13:17:27 GMT):
What error/message do you get when you submit a transaction? How do you submit your transaction?

shemnon (Thu, 22 Apr 2021 13:59:14 GMT):
ethash cannot fix blocks per second. Difficulty floats or difficulty is fixed. Perhaps we need to expose a knob to make the floor difficulty configurable. But I think a better approach would be to use GPU mining via stratum.

Nithronium (Thu, 22 Apr 2021 14:43:50 GMT):
The thing is, Ethereum has a fixed 13 second block-interval. So depending on the average difficulty increases or decreases to hit the 13s average target. Now one might want to have a PoW network with ethash where block interval is, say, 30 seconds, or 5 seconds. I think this could be an option for ethash too, so on private PoW networks using besu one can configure block interval.

Nithronium (Thu, 22 Apr 2021 14:44:54 GMT):
If one wants to create their own chain, and not planning to use mainnet ever, this still would be a no?

Nithronium (Thu, 22 Apr 2021 14:45:36 GMT):
Or perhaps adjust the build + somehow embed the genesis file in it? So once node is built, release could be shared with other peers and they can run a peer node without specifying any flags.

Nithronium (Thu, 22 Apr 2021 14:45:48 GMT):
Or would it be better to build a docker container for the peer node?

shemnon (Thu, 22 Apr 2021 14:47:26 GMT):
Ethereum 1.0 does not have a fixed 13 second block interal, there is a floating difficulty algorithm that averages down to 13 seconds in the long run. Minimum difficulty is part of that algorithm

shemnon (Thu, 22 Apr 2021 14:48:00 GMT):
Why fork the client?

shemnon (Thu, 22 Apr 2021 14:49:17 GMT):
If you can configure a genesis that accommodates your chain definition forking the client adds risk, you then have to keep the fork up to date.

Nithronium (Thu, 22 Apr 2021 14:50:15 GMT):
That's my point. Sorry for phrasing it wrongly (english is not my native). What I meant was what you said, on average it finds blocks every 13s. Changing that shouldn't be that hard, no? Simply on the algo multiply the diff target by 1/13 to get value for 1s interval, then multiply with whatever number you want to adjust the average block interval. Couldn't that be an option on besu for private networks?

Nithronium (Thu, 22 Apr 2021 14:51:18 GMT):
If I configure a genesis, I still need a way to make people download besu + download genesis + run with the flags. In order to have something that takes just one command with no flags + automatically connect to the chain would be a better user experience.

shemnon (Thu, 22 Apr 2021 15:07:55 GMT):
Right, that's just a distribution not a fork.

shemnon (Thu, 22 Apr 2021 15:09:31 GMT):
Proof of work for private networks is a very bad idea. It's only useful for really one top dog network per algorithm, otherwise you can be 51% attacked very easily. That's why Besu has Proof of Authority algos like BFT and Clique.

shemnon (Thu, 22 Apr 2021 15:11:20 GMT):
If you can enumerate who should be using the network (hence the private moniker) then you can enumerate who should be validating.

andympd (Fri, 23 Apr 2021 09:23:04 GMT):
Has joined the channel.

helderjnpinto (Fri, 23 Apr 2021 11:00:51 GMT):
Hello guys one question api of ADMIN includes IBFT methods ?

mohjam2004 (Fri, 23 Apr 2021 11:11:30 GMT):
I have resolved it. and client can connect to besu node. but the alethio ethstat server don't show any data

mohjam2004 (Fri, 23 Apr 2021 11:12:05 GMT):

Clipboard - April 23, 2021 3:42 PM

mohjam2004 (Fri, 23 Apr 2021 11:12:55 GMT):
this is ethstat client log

mohjam2004 (Fri, 23 Apr 2021 11:12:56 GMT):

Clipboard - April 23, 2021 3:42 PM

mohjam2004 (Fri, 23 Apr 2021 11:27:06 GMT):

Clipboard - April 23, 2021 3:57 PM

mohjam2004 (Fri, 23 Apr 2021 12:29:46 GMT):
the data is sent to ethstat server but nothing is shown

bradmcbrayer (Fri, 23 Apr 2021 15:58:06 GMT):
Has joined the channel.

bradmcbrayer (Fri, 23 Apr 2021 15:58:07 GMT):
newbe here. trying to update to besu-21.1.5. Downloaded binary but it does not have a /bin. (Following documentation) So how to start Besu?

shemnon (Fri, 23 Apr 2021 16:26:19 GMT):
Have you tried `.../besu-21.1.5/bin`?

bradmcbrayer (Fri, 23 Apr 2021 16:39:19 GMT):
yea... there is not a bin

bradmcbrayer (Fri, 23 Apr 2021 16:39:19 GMT):
yea... there is not a bin. lol not that much of a newbe

mohjam2004 (Sat, 24 Apr 2021 05:03:52 GMT):
Is there any command by which I can see the *"network name"* my besu nodes are running on it?

mohjam2004 (Sat, 24 Apr 2021 08:28:19 GMT):
hello again @joshuafernandes I have opened an issue in Alethio. If you can help on this, I'll be glad to. https://github.com/Alethio/ethstats-network-server/issues/23

HiteshSharma (Sat, 24 Apr 2021 12:08:52 GMT):
But this network is supposed to be public. So what I can understand is that the Besu PoW network would try to have a average of 13s interval by default and the minimum floating difficulty is `0x20000`. Can we change these values and if yes, then how?

shemnon (Sat, 24 Apr 2021 13:51:55 GMT):
Code would need to be written to allow the minimum to be configured.

shemnon (Sat, 24 Apr 2021 13:53:52 GMT):
I would first recommend trying to get a local stratum instance setup, with GPU mining. A typical GPU should be able to pull the minimum by itself. CPU mining in Besu is quite inefficient.

shemnon (Sat, 24 Apr 2021 13:54:40 GMT):
But your public network will also be trivially subject to 51% attacks.

HiteshSharma (Sat, 24 Apr 2021 14:14:11 GMT):
Will do that @shemnon . Thanks for the advice. I suppose the 13s interval is also not configurable, even in the source code, right?

HiteshSharma (Sat, 24 Apr 2021 14:14:11 GMT):
Will do that @shemnon . Thanks for the advice. I suppose the 13s interval is also not configurable, even from the source code, right?

mohjam2004 (Sun, 25 Apr 2021 05:54:07 GMT):
I try to contact Alethio for an issue the email specified here doesn't exist: https://besu.hyperledger.org/en/1.2.0/Monitoring/Alethio/Overview/

mohjam2004 (Sun, 25 Apr 2021 05:54:07 GMT):
I try to contact Alethio for an support issue, the email specified here doesn't exist: https://besu.hyperledger.org/en/1.2.0/Monitoring/Alethio/Overview/

mohjam2004 (Sun, 25 Apr 2021 06:03:37 GMT):
the aleth.io is down

arjanvaneersel (Sun, 25 Apr 2021 07:02:27 GMT):
I'm a bit confused about the documentation regarding implementing TLS. My goal is to use TLS for the communication between metamask and my besu network. However I don't get how I can configure this. Should metamask get registered as a known client? If so, how can I get Metamask's details to do so?

Nithronium (Sun, 25 Apr 2021 11:03:00 GMT):
Hey here's another question, has anyone here ever encountered a startup error where Besu won't run?

Nithronium (Sun, 25 Apr 2021 11:03:26 GMT):
I ran the besu a couple times, no problem, and now after restarting, it gets stuck at first message shown "Using libethpairings native alt bn128".

Nithronium (Sun, 25 Apr 2021 11:04:06 GMT):
When I use `--logging ALL` flag, I see that it finds secp256k1 library, and then stuck there. Cpu usage goes to 1% and ram usage goes to 300 MB and node is just stuck

diegoll (Mon, 26 Apr 2021 02:38:04 GMT):
Hello Nithroium, I'm running a Besu node in a `t2.micro` AWS instance and from going to that message to the next one, it took ~7 minutes. Here are the relevant parts of log (INFO level): ``` 2021-04-26 02:16:50.681+00:00 | main | INFO | AbstractAltBnPrecompiledContract | Using LibEthPairings native alt bn128 2021-04-26 02:23:45.838+00:00 | main | INFO | SECP256K1 | Using native secp256k1 2021-04-26 02:23:45.845+00:00 | main | INFO | Besu | Starting Besu version: besu/v21.1.5/linux-x86_64/openjdk-java-11 ``` How long are you waiting before cancelling the process?

Nithronium (Mon, 26 Apr 2021 03:55:14 GMT):
It really changes for me. I have multiple droplets of same spec, generated them together by creating multiple instance at once. Some of them directly starts the node, some of them does that and it sometimes takes 5 seconds, sometimes 30 minutes. What's weird is that once a node starts and I abort with CTRL + C on the terminal, and restart with same command, it sometimes takes 10-15 minutes for it to load the library. Eventually the node starts. Maximum time period I saw was 30 minutes.

Nithronium (Mon, 26 Apr 2021 04:46:44 GMT):
Also another question, I couldn't get to make `coinbase`parameter work on the IBFT. The mining node claims the reward apparently.

arjanvaneersel (Mon, 26 Apr 2021 07:24:03 GMT):
I am trying to configure a clique network. When running the network locally as stipulated in the tutorial in the documentation everything works fine. However when I deploy to AWS the initial signer node isn't producing any blocks. My config.toml file: `data-path="s1data" genesis-file="genesis.json" network-id="123" rpc-http-enabled=true rpc-http-cors-origins=["*"] rpc-http-api=["ETH","NET","CLIQUE"] #rpc-http-api=["ADMIN","ETH","NET","PERM","CLIQUE","EEA","PRIV"] rpc-http-host="0.0.0.0" rpc-http-port=8545 rpc-ws-enabled=true rpc-ws-host="0.0.0.0" rpc-ws-port=8546 rpc-ws-api=["ETH","NET","CLIQUE"] #rpc-ws-api=["ADMIN","ETH","NET","PERM","CLIQUE","EEA","PRIV"] host-allowlist=["*"] p2p-port=30303` My genesis file: `{ "config":{ "chainId":2021, "constantinoplefixblock": 0, "clique":{ "blockperiodseconds":15, "epochlength":30000 } }, "coinbase":"0x0000000000000000000000000000000000000000", "difficulty":"0x1", "extraData":"0x0000000000000000000000000000000000000000000000000000000000000000860dd0cc99142b5ebc39a6ceb99ce05348851d4f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "gasLimit":"0xa00000", "mixHash":"0x0000000000000000000000000000000000000000000000000000000000000000", "nonce":"0x0", "timestamp":"0x5c51a607", "alloc": { "53138C880D8E68020499E04C3c86EECcCaD5aD45": { "balance": "90000000000000000000000000000000000000000" } }, "number":"0x0", "gasUsed":"0x0", "parentHash":"0x0000000000000000000000000000000000000000000000000000000000000000" }` Other nodes can connect without a problem: `EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 4`. Also the log shows no errors, just this warning, but the node does boot: `ANTLR Tool version 4.7.1 used for code generation does not match the current runtime version 4.8ANTL Runtime version 4.7.1 used for parser compilation does not match the current runtime...` The signer's node address is: 0x860dd0cc99142b5ebc39a6ceb99ce05348851d4f. That's included in the extradata part of the genesis file. Anyone having a clue what I'm doing wrong, causing that the node isn't producing blocks?

atoulme (Mon, 26 Apr 2021 16:24:14 GMT):
I have seen the antlr warning too, I think it's benign but I understand how it's distracting. Feel free to open an issue for it.

atoulme (Mon, 26 Apr 2021 16:25:20 GMT):
The log says it's waiting for 4 other peers to sync. You can change the minimum number of peers needed to sync in your configuration.

shemnon (Mon, 26 Apr 2021 16:44:28 GMT):
The secure entropy is causing problems, especially on a t3.micro - https://github.com/hyperledger/besu/issues/1464#issuecomment-710027687

Nithronium (Mon, 26 Apr 2021 17:11:58 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=AjCBQLEniwv2iTgqs) I think the log says "No sync parget, waiting for peers, connected peers: 4" no? Because as new nodes connect, the number increases.

shemnon (Mon, 26 Apr 2021 17:20:15 GMT):
I think IBFT re-uses the coinbase field to mean something else. @lucassaldanha would have more insight,.

shemnon (Mon, 26 Apr 2021 17:20:15 GMT):
I think IBFT re-uses the coinbase field to mean something else. @lucassaldanha would have more insight.

arjanvaneersel (Mon, 26 Apr 2021 17:33:38 GMT):
And that might be the reason there are no blocks being produced? I thought that the number indicates the amount of nodes connected, as it starts at 0 and increases when other nodes get connected.

IGM 4 (Mon, 26 Apr 2021 17:33:49 GMT):
Has joined the channel.

IGM 4 (Mon, 26 Apr 2021 17:33:49 GMT):
Hi everyone

IGM 4 (Mon, 26 Apr 2021 17:33:59 GMT):
Can I ask you a question

IGM 4 (Mon, 26 Apr 2021 17:34:01 GMT):
?

arjanvaneersel (Mon, 26 Apr 2021 17:34:28 GMT):
Also I wonder whether I should activate the miner on Clique?

IGM 4 (Mon, 26 Apr 2021 17:38:17 GMT):
I'm building a netowrk with besu and orion, with two machines in aws, each machine has group of 3 nodes with orion, under a Dicker network. When two of the nodes of the same machine send a private transaction between them, all goes right, when sending a private transaction between a node in a machine and a node from the other, seems like everything goes ok, but an event that should be emiited, is skipped, but there is no error log anywhere

atoulme (Tue, 27 Apr 2021 05:09:00 GMT):
you're right. I should not talk before coffee.

IvanHomoliak (Tue, 27 Apr 2021 15:52:35 GMT):
Has joined the channel.

IvanHomoliak (Tue, 27 Apr 2021 15:52:36 GMT):
Hi guys, may I ask you whether it is possible to get the current list of validators from the smart contract, please? Sometimes it might be very useful - e.g., governance. This info should be presented in extraData header field but even this one seems not accessible from the smart contract.

shemnon (Tue, 27 Apr 2021 17:13:22 GMT):
Currently, no. My take is that this would require a new precompiled contract since it's interacting basically across layers. However there are bytecodes to support PoW consensus (COINBASE, DIFFICULTY) so its addition woudln't be without precedent.

cbfh (Tue, 27 Apr 2021 18:18:46 GMT):
I'm trying to create a permissioned network with 3 nodes on different locations (hosted on different devices). I'm having problems connecting those nodes. I'm using the bootnodes option, but I don't have a clear idea of the process I should follow. Overall, what are the steps I should take?

cbfh (Tue, 27 Apr 2021 18:20:25 GMT):
I'm using local permissioning; until now, I have copied the genesis file and the permissions file on the three devices, and have tried to start the nodes (all of them are connected to the same network)

joshuafernandes (Tue, 27 Apr 2021 20:52:27 GMT):
Hi @mohjam2004 Im not sure if this helps or is close to your setup https://medium.com/alethio/a-guide-to-deploying-alethios-free-open-source-products-18216617722e. The main repos https://github.com/Alethio/ethstats-network-server doesn't look like its maintained anymore though so you may need to fork and customise to suit your reqs?

macfarla (Wed, 28 Apr 2021 03:49:52 GMT):
where did you download from? I just downloaded the zip file here https://github.com/hyperledger/besu/releases and unzipped there is a /bin

macfarla (Wed, 28 Apr 2021 03:50:07 GMT):
what do you mean by "network name"?

macfarla (Wed, 28 Apr 2021 03:56:01 GMT):
Have you tried the updated docs https://besu.hyperledger.org/en/stable/HowTo/Deploy/Lite-Block-Explorer/

macfarla (Wed, 28 Apr 2021 03:58:26 GMT):
I would recommend first verifying that the nodes can connect with permissioning disabled if you can.

macfarla (Wed, 28 Apr 2021 04:27:07 GMT):
have you verified that the nodes can connect otherwise when on different machines?

macfarla (Wed, 28 Apr 2021 04:37:30 GMT):
with clique you do not need to enable mining

macfarla (Wed, 28 Apr 2021 04:39:14 GMT):
Have you verified that the nodes can connect to each other otherwise? What versions of Besu and Orion are you running?

macfarla (Wed, 28 Apr 2021 04:40:57 GMT):
are you starting from block 0? Can you share your Besu logs?

arjanvaneersel (Wed, 28 Apr 2021 07:43:28 GMT):

arjanvaneersel - Wed Apr 28 2021 10:43:21 GMT+0300 (Eastern European Summer Time).txt

arjanvaneersel (Wed, 28 Apr 2021 07:44:20 GMT):
As I said before: When I run things locally it works fine and blocks are being created, but as soon as I deploy to AWS the nodes aren't creating blocks.

arjanvaneersel (Wed, 28 Apr 2021 07:46:21 GMT):
Here is the current config.toml: `data-path="s1data" genesis-file="genesis.json" network-id=123 rpc-http-enabled=true rpc-http-api=["ETH","NET","CLIQUE"] host-allowlist=["*"] rpc-http-cors-origins=["all"] #bootnodes=["enode://d97bbb975c07ab48ea7332221662e5b8b3ee63e85c349f129001cc4a676cf531cef5b87992d96d265bc726af752af2e8e788c58edef3ec0e06e7db7910b2ae18@127.0.0.1:30303"] bootnodes=["enode://d97bbb975c07ab48ea7332221662e5b8b3ee63e85c349f129001cc4a676cf531cef5b87992d96d265bc726af752af2e8e788c58edef3ec0e06e7db7910b2ae18@13.51.155.9:30303"]` and the genesis file: `{ "config":{ "chainId":2021, "constantinoplefixblock": 0, "clique":{ "blockperiodseconds":15, "epochlength":30000 } }, "coinbase":"0x0000000000000000000000000000000000000000", "difficulty":"0x1", "extraData":"0x0000000000000000000000000000000000000000000000000000000000000000860dd0cc99142b5ebc39a6ceb99ce05348851d4f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "gasLimit":"0xa00000", "mixHash":"0x0000000000000000000000000000000000000000000000000000000000000000", "nonce":"0x0", "timestamp":"0x5c51a607", "alloc": { "627306090abaB3A6e1400e9345bC60c78a8BEf57": { "balance": "90000000000000000000000" } }, "number":"0x0", "gasUsed":"0x0", "parentHash":"0x0000000000000000000000000000000000000000000000000000000000000000" }`

arjanvaneersel (Wed, 28 Apr 2021 08:01:36 GMT):

arjanvaneersel - Wed Apr 28 2021 11:01:24 GMT+0300 (Eastern European Summer Time).txt

arjanvaneersel (Wed, 28 Apr 2021 08:02:27 GMT):
The local log to show that when I run it locally, the signer node starts producing blocks immediately.

cbfh (Wed, 28 Apr 2021 11:41:07 GMT):
Sorry if this is too much of a newbie question, but how would I do that too?

arjanvaneersel (Wed, 28 Apr 2021 13:26:16 GMT):
I found the issue. Something went wrong in with deploying via terraform and the keys weren't saved on the AWS node. This caused that the node got a different address than what was mentioned in the genesis file, hence it not being a signer.

arjanvaneersel (Wed, 28 Apr 2021 13:29:00 GMT):
My previous issue is solved. The only thing I don't get yet is how I can add additional signers. In total I have 4 nodes. So as stipulated in the documentation I sent the request to add node1 as a signer to node0. That went fine. To make node2 a signer I sent the request to both node0 and node1, however that didn't work. I do wonder whether I should change the value of ID in the rpc request?

IvanHomoliak (Wed, 28 Apr 2021 14:09:59 GMT):
I see. Thank you for answer. Would be nice to have something like that.

Nithronium (Wed, 28 Apr 2021 15:56:26 GMT):
The smart contract, as well as the EVM works deterministic. So adding the extra data field to the contract wouldn't be something "inside" the EVM but someting inside the node. What you can do is that write a contract that holds an array of IP addresses, and each time you run your contract from one of the machines, let the machine first get network state, then embed it to the call and write to the contract. This way, just like oracles, you would be writing node state TO THE CHAIN.

shemnon (Wed, 28 Apr 2021 16:04:56 GMT):
That's the outside approach. The downside is that you need to keep the observer service up, so if the observer goes down data goes out of sync. The upside, which should not be overlooked, is that you can do this without changing node software.

Nithronium (Wed, 28 Apr 2021 16:05:25 GMT):
Are there any ways to make IBFT2 mining profits to go to one wallet address instead of the verifying node? I tried `coinbase` parameter on Genesis but seems like it doesn't work.

shemnon (Wed, 28 Apr 2021 16:05:57 GMT):
You can add hooks so that contracts can detect a downed observer by adding "heartbeat" checks that will always update some value at fixed intervals even if nothing changes.

shemnon (Wed, 28 Apr 2021 16:06:12 GMT):
More devops work, but zero node changes.

Nithronium (Wed, 28 Apr 2021 16:07:17 GMT):
Adding node list as a extradata has no benefits in terms of networking because each node will be producing different extradata depending on peers they are connected to. This would break the deterministic approach of EVM.

Nithronium (Wed, 28 Apr 2021 16:07:51 GMT):
On the other hand, if one node periodically writes that extra data to the chain, it means there's trust involved. And since there's trust involved, the node's peer activity can be tracked with an external software.

Nithronium (Wed, 28 Apr 2021 16:08:13 GMT):
Even better, if all nodes have their RPC exposed, a single app can fetch that data periodically from each node and record.

cbfh (Wed, 28 Apr 2021 16:18:21 GMT):
Have you tried using --miner-coinbase when you start a node?

Nithronium (Wed, 28 Apr 2021 16:19:32 GMT):
The --miner-coinbase is related to node's mining setting. I require something that is in the genesis.json so if more nodes (independent ones) start up, their validated income also paid to the miner address in the genesis.

RobbeV 1 (Wed, 28 Apr 2021 16:56:03 GMT):
Since using privacy groups I'm getting the error: Error: Returned error: InvalidPayload. My transaction looks like this: `// Build Increment Tx const documentTx = document.methods.setKey(receiverAddress, key); // Sign Tx with PK const createTransaction = await this.web3.eth.accounts.signTransaction( { to: documentAddress, data: documentTx.encodeABI(), gas: 23064, privateFrom: enclaveKey, privacyGroupId: privacyId, privateKey: this.account.privateKey.substring(2), }, this.account.privateKey ); // Send Tx and Wait for Receipt const createReceipt = await this.web3.eth.sendSignedTransaction( createTransaction.rawTransaction );` Can anyone see the problem?

RobbeV 1 (Wed, 28 Apr 2021 16:59:38 GMT):
I am able to make privacygroups and add members to it. I'm also able to deploy contracts

lucassaldanha (Wed, 28 Apr 2021 22:15:33 GMT):
Hi! What version of Besu, Orion and Web3js-eea are you using? Also, could you please share the script that you are using (not just a fragment)?

lucassaldanha (Wed, 28 Apr 2021 22:17:05 GMT):
We have a page in our docs about setting up a permissioned network. I believe it is a good start to understand how it works. https://besu.hyperledger.org/en/latest/Tutorials/Permissioning/Create-Permissioned-Network/

lucassaldanha (Wed, 28 Apr 2021 22:22:49 GMT):
@IvanHomoliak it would be interesting to hear what is the use case for having access to validators from the EVM scope. At the moment, Besu has a JSON-RPC method that you can use to retrieve the list of validators on any point in the chain (https://besu.hyperledger.org/en/latest/Reference/API-Methods/#ibft_getvalidatorsbyblockhash).

Victorbesu (Wed, 28 Apr 2021 22:23:29 GMT):
Hi team. Looking for some support please. To set up Besu, I went in the direction starting with besu-sample-networks project. Well since then I have successfully used besu locally with my dapp and it worked well for my initial tests. I could query, and send txs to the blockchain. Then I handed this off to the devops in my org and after a few weeks he had it in Argo CD setup. Now I am in the following situation * I can connect to this remote besu instance in meta mask * I can see that I have a balance in metamask on this network * I can run migration scripts from truffle to my network * I can load code into Remix and interact with the contract. * But in remix, I cannot read from the contract Now my problem is although I can see native eth balance and execute transactions with my account ( it has balance on genesis file) --> I still cannot "Get" from the blockchain, I cannot read anything. I cannot read values with remix, I cannot read values from my ethers.js project. When checking documentation someone mentioned this https://github.com/adetante/explorer-besu-plugin , is that my best bet to resolve this issue? When using https://github.com/ConsenSys/besu-sample-networks how to configure allow list if using on the cloud?t

lucassaldanha (Wed, 28 Apr 2021 22:28:03 GMT):
It should make no difference running Besu locally or on a hosted server (considering all the networking configuration is correct). Do you get any errors from Remix when trying to "read" from the contract? Anything on Besu logs that could indicate an issue? Remix interacts with the node through JSON-RPC (so does MetaMask). You could try sending an eth_call cURL request to the node to check if you can get an insight on why it isn't working.

macfarla (Wed, 28 Apr 2021 23:33:36 GMT):
This docs page steps through the process https://besu.hyperledger.org/en/stable/HowTo/Configure/Consensus-Protocols/Clique/#adding-and-removing-signers

macfarla (Wed, 28 Apr 2021 23:34:15 GMT):
There is also this API call to check the status of current proposals. https://besu.hyperledger.org/en/stable/Reference/API-Methods/#clique_proposals

macfarla (Wed, 28 Apr 2021 23:35:24 GMT):
awesome!

Victorbesu (Thu, 29 Apr 2021 00:40:53 GMT):
Hey thanks for the response I only get errors when I try to "read" something from the contract

Nithronium (Thu, 29 Apr 2021 04:01:44 GMT):
Hmmm, now that I have checked this issue with my own instance, I've seen the same. The node must be reporting correctly because I have an EXTERNAL block explorer installed and there I can see the total supply, token holders etc. on my custom ERC-20. But for some reason Remix can't parse that data.

Nithronium (Thu, 29 Apr 2021 04:02:41 GMT):
JUST as I was writing this, I thought "wait a minute, did I choose correct environment??" and realized that it was JavascriptVM. Changing that to Injected Web3 solved my problem.

RobbeV 1 (Thu, 29 Apr 2021 09:22:23 GMT):
I'm using the latest besu and orion docker images, version of web3-eea = ^0.10.0.

RobbeV 1 (Thu, 29 Apr 2021 09:23:20 GMT):
Here is the full method: `share = async (documentAddress, receiverAddress, key, enclaveKey, privacyId) => { console.log( `Attempting to share from account ${this.account.address}, to account: ${receiverAddress}` ); const document = new this.web3.eth.Contract( this.Document.abi, documentAddress ); // Build Increment Tx const documentTx = document.methods.setKey(receiverAddress, key); // Sign Tx with PK const createTransaction = await this.web3.eth.accounts.signTransaction( { to: documentAddress, data: documentTx.encodeABI(), gas: 23064, privateFrom: enclaveKey, privacyGroupId: privacyId, privateKey: this.account.privateKey.substring(2), }, this.account.privateKey ); // Send Tx and Wait for Receipt const createReceipt = await this.web3.eth.sendSignedTransaction( createTransaction.rawTransaction ); console.log( `Document shared successfully with hash: ${createReceipt.transactionHash}\n` ); }; `

Dazel (Thu, 29 Apr 2021 10:04:12 GMT):
Quick question, is it possible to deploy a permissioned besu network on Azure?

Nithronium (Thu, 29 Apr 2021 12:10:20 GMT):
It costs extra to save data to the blockchain itself as it consumes gas. As @lucassaldanha stated, locally the information can be stored without costing gas. @IvanHomoliak

Nithronium (Thu, 29 Apr 2021 12:10:39 GMT):
Yes it is possible.

Nithronium (Thu, 29 Apr 2021 12:12:03 GMT):
https://besu.hyperledger.org/en/stable/Tutorials/Permissioning/Create-Permissioned-Network/

SuzanaMaranhao (Thu, 29 Apr 2021 14:27:38 GMT):
Hello, I am creating a Besu network involving some institutions. Is there a problem if one institution install many Besu nodes reusing the same IP with different ports?

SuzanaMaranhao (Thu, 29 Apr 2021 14:27:38 GMT):
Hello, I am creating a Besu network involving some institutions. Is there a problem if one institution installs many Besu nodes reusing the same IP with different ports?

SuzanaMaranhao (Thu, 29 Apr 2021 14:56:12 GMT):
Another question. In order to enable WebSocketProvider, I configured config.toml (rpc-ws-enabled + rpc-ws-port). Is it enough?

Nithronium (Thu, 29 Apr 2021 15:33:40 GMT):
There's no problem there. However, keep in mind that if they deploy the nodes on one machine like the examples on documentation, if machine goes down, your network might stall. Also if internet goes down, since they all have same network, all nodes will go down.

ClaudemirBrum (Thu, 29 Apr 2021 17:47:02 GMT):
Has joined the channel.

camilo.dotto (Thu, 29 Apr 2021 17:53:54 GMT):
Has joined the channel.

macfarla (Thu, 29 Apr 2021 19:52:41 GMT):
should be. if the default host is right and the default APIs are what you need. https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#rpc-ws-api

macfarla (Thu, 29 Apr 2021 19:53:08 GMT):
Try it, does it work?

Nithronium (Fri, 30 Apr 2021 09:31:40 GMT):
add rpc-ws-host and set it to 0.0.0.0 if you want to connect from external resource

GuillaumeMjk (Fri, 30 Apr 2021 11:05:13 GMT):
Has joined the channel.

GuillaumeMjk (Fri, 30 Apr 2021 11:05:13 GMT):
Hello, quick question, using Besu on public Ethereum Network, can i add a layer of privacy (permissions) over my tx or is it juste meant to be done on a private Eth network ?

Nithronium (Fri, 30 Apr 2021 13:10:53 GMT):
It is meant to be on a private network. It doesn't work on ETH Mainnet

GuillaumeMjk (Fri, 30 Apr 2021 13:16:08 GMT):
thank you very much for your answer!

bradmcbrayer (Fri, 30 Apr 2021 15:21:29 GMT):
Almost completed syncing with Goerli Wednesday then it stopped. Rebooted but now not finding peers. Have trace on. How to debug?

SuzanaMaranhao (Fri, 30 Apr 2021 16:11:23 GMT):
Do I need to include rpc-ws-api if I already have rpc-http-api, rpc-ws-enabled and rpc-ws-port? @macfarla?

SuzanaMaranhao (Fri, 30 Apr 2021 16:19:40 GMT):
Thank you for these answers

alftom (Fri, 30 Apr 2021 18:11:21 GMT):
Has joined the channel.

alftom (Fri, 30 Apr 2021 18:11:22 GMT):
Does Besu have any plans to enable interoperability between different private Besu networks? Cosmos, Polkadot, etc. have their approaches and I'm wondering if there's an existing effort with Besu.

chainsaw (Fri, 30 Apr 2021 19:52:50 GMT):
Has joined the channel.

chainsaw (Fri, 30 Apr 2021 19:52:51 GMT):
howdy

SuzanaMaranhao (Fri, 30 Apr 2021 21:01:41 GMT):

Architecture.png

SuzanaMaranhao (Fri, 30 Apr 2021 21:05:53 GMT):
Hello, when dealing with a permissioned network for many institutions, is it possible to have a topology that the validators talk to each other using nodes that are not validators? I heard it was not possible a few years ago (not sure if it was a bug). Does Besu supports that? I can see it may offer some protection to the validators but it maybe introduce workload issues in some nodes, right?

SuzanaMaranhao (Fri, 30 Apr 2021 21:05:53 GMT):
Hello, when dealing with a permissioned network for many institutions, is it possible to have a topology that the validators talk to each other using nodes that are not validators? I heard it was not possible a few years ago (not sure if it was a bug). Does Besu support that? I understand it may offer some protection to the validators but it maybe (a) introduces workload issues in some nodes and (b) increase the risk of connectivity since validators are achieved only by a "brigde-node", right?

Nithronium (Sat, 01 May 2021 07:17:58 GMT):
The topology you posted is valid. However what you are asking is not valid afaik. The reason would be the Byzantine Attack because if you put a bridge node, that node might interrupt messages (even though can't change). That might cause network to stop producing blocks. Also would cause extra workload.

pkchai (Sun, 02 May 2021 14:54:30 GMT):
Has joined the channel.

pkchai (Sun, 02 May 2021 14:54:31 GMT):
Hi @rai I'm also getting the same error. I'm running v21.1.5, is the fix in this version already?

SuzanaMaranhao (Mon, 03 May 2021 13:32:26 GMT):
I agree with your concerns, @Nithronium. The bridge node may be attacked in this architecture and could stop the communication with validators anyway. I think there are pros and cons in creating this "bridge" node that protect validators. Anyway, I heard that this option was not even possible 1-2 years ago. It seems that there was a strict requirement to validators talk directly among them.

SuzanaMaranhao (Mon, 03 May 2021 13:32:26 GMT):
I agree with your concerns, @Nithronium. The bridge node may be attacked in this architecture and could stop the communication with validators anyway. I think there are pros and cons in creating this "bridge" node that protects validators. Anyway, I heard that this option was not even possible 1-2 years ago. It seems that there was a strict requirement to validators talk directly among them.

cbfh (Mon, 03 May 2021 18:05:55 GMT):
Hey everyone. If I want to configure my Besu node to be accesible from outside my home network, do I have to set my public IP in the --p2p-host option?

cbfh (Mon, 03 May 2021 18:06:40 GMT):
If so, what should I do if my IP is not static and I use a dynamic DNS?

mdwright88 (Mon, 03 May 2021 18:08:59 GMT):
Feel free to check out the roadmap. Our focus right now is interoperability with GoQuorum private/permissioned fork of geth.

mdwright88 (Mon, 03 May 2021 18:09:01 GMT):
https://wiki.hyperledger.org/display/BESU/Roadmap

Nithronium (Mon, 03 May 2021 18:16:14 GMT):
if you are using a home network and your IP changes, you will have to restart the outside nodes because they'll have to find your new IP. OR you can configure an outside node as the bootnode, and your local node as the secondary nodes so even if your IP changes, your node will connect to bootnode.

Nithronium (Mon, 03 May 2021 18:16:37 GMT):
Also if you want other nodes to access your node, you might want to open your 30303 port from the router

mdwright88 (Mon, 03 May 2021 18:27:48 GMT):
You can go through our entire docs on Privacy, privacy groups and extended privacy https://besu.hyperledger.org/en/stable/Concepts/Privacy/Privacy-Overview/

cbfh (Mon, 03 May 2021 18:32:29 GMT):
Okay, thanks

alftom (Mon, 03 May 2021 19:36:19 GMT):
@mdwright88 is the interoperability designed specifically for GoQuorum or with other permissioned blockchains in mind?

mdwright88 (Mon, 03 May 2021 19:36:57 GMT):
Specifically for GoQuorum

drinkcoffee (Mon, 03 May 2021 21:28:51 GMT):
ConsenSys Software R&D is working on crosschain function calls across any blockchain (permissioned, permissionless, EVM based and non-EVM based). Have a look at https://arxiv.org/pdf/2011.12783.pdf and https://www.youtube.com/watch?v=ixK0_ltjr8k

lucassaldanha (Tue, 04 May 2021 02:00:55 GMT):
@SuzanaMaranhao you are correct. All validators must be able to connect to each other. There is no relaying of IBFT messages.

Nithronium (Tue, 04 May 2021 08:32:28 GMT):
@SuzanaMaranhao could you please explain what would be the pros of such approach? Besu node doesn't store any private key except the one for the node. So the worst case scenario for direct communication with a node is that you leave some ports open and people SSH and steal your key for your node. And what they can do with that is being a byzantine node and broadcasting false messages. Which actually has the same attack surface with your bridge node. Are there any pros that I am missing?

GuillaumeMjk (Tue, 04 May 2021 11:40:54 GMT):
Yes thank you ! I went through it and things appears clearer now!

cbfh (Tue, 04 May 2021 17:40:33 GMT):
Regarding my last question about dynamic IP: if I'm running a node at a home network for a permissioned network, is there any way I can take advantage of a website like No-IP to set up a dynamic DNS IP? Or must I stick to the solution provided by @Nithronium about using an outside node as a bootnode?

davidwboswell (Tue, 04 May 2021 22:02:00 GMT):
The Linux Foundation and Hyperledger are planning a Hyperledger Besu certification program and we need your help.  If you have 2 minutes to complete a short survey, your feedback will be used in the creation of this certification.  You can fill out the survey at: https://www.surveymonkey.com/r/Q2DXHWZ

RobbeV 1 (Wed, 05 May 2021 07:46:25 GMT):
Hi everyone, does anyone have any experience using Hyperledger Caliper with Besu, or maybe know a good tutorial?

VijayMichalik (Wed, 05 May 2021 15:02:17 GMT):
Hey @RobbeV 1, the Besu team improved Caliper support for Besu last year and have been testing against Caliper for a good while now - these instructions should work to configure everything I believe https://hyperledger.github.io/caliper/v0.4.2/ethereum-config/

Nithronium (Thu, 06 May 2021 06:38:41 GMT):
I haven't tried such service myself. However, if the mentioned service makes you install an app on your device, and every time your IP changes, updates their DNS records to resolve the domain always to your device, then this might do it.

HiteshSharma (Thu, 06 May 2021 07:48:12 GMT):

Clipboard - May 6, 2021 1:17 PM

bradmcbrayer (Thu, 06 May 2021 12:01:37 GMT):
I keep getting two messages while syncing Besu: Red-"java.lang.IllegalArgumentException: Could not recover public key" and Yellow "Unexpected error while calculating ECDH Key Agreement: Invalid point coordinates". Almost caught up syncing mainnet and a testnet but have to restart multiple times a day. How do I fix these?

Nithronium (Thu, 06 May 2021 13:23:01 GMT):
Any security suggestion for communicating with EthSigner? Nginx reverse proxy with basic auth?

shemnon (Thu, 06 May 2021 14:04:07 GMT):
https://www.jsonrpc.org/specification

shemnon (Thu, 06 May 2021 14:05:17 GMT):
The next two week release should eliminate those logs. Some other client on the network (not besu) is sending a bad key in p2p stuff. The fix is to move the notification from error to debug.

bradmcbrayer (Thu, 06 May 2021 14:57:30 GMT):
thank you!

Nithronium (Thu, 06 May 2021 20:12:49 GMT):
Has anyone benchmarked Besu for gas cap? For example, if set with 4 nodes and 50M gas with 2 sec block interval, if we have like 32 GB RAM, 16vCPU, load balancing system, would it handle?

shemnon (Thu, 06 May 2021 20:15:30 GMT):
50MM gas is no enough, you will saturate the chain at that level. Try 70-100MM. 300 tps. And the constraint was how fast we can serve the transaction receipts to the test harness. If the harness checked receipts later and did more sensible querying it could ho higher. Probably only need 8-16 Gib and 4-8 cores to achieve that. You will also need one or more RPC only nodes. with beefier specs.

shemnon (Thu, 06 May 2021 20:15:30 GMT):
50MM gas is no enough, you will saturate the chain at that level. Try 70-100MM. 300 tps. And the constraint was how fast we can serve the transaction receipts to the test harness. If the harness checked receipts later and did more sensible querying it could go higher. Probably only need 8-16 Gib and 4-8 cores to achieve that. You will also need one or more RPC only nodes. with beefier specs.

shemnon (Thu, 06 May 2021 20:17:04 GMT):
A more useful metric would be how much gas per second is used because not all Ethereum transactions are the same. I don't think we could do 300 uniswaps per second, for example.

Nithronium (Thu, 06 May 2021 20:19:06 GMT):
What about regular 21K gas transactions?

Nithronium (Thu, 06 May 2021 20:19:43 GMT):
and also what is the bottleneck in sending 300 uniswaps per second for example? the cpu or the memory? or simply read-write ratio of the storage?

Nithronium (Thu, 06 May 2021 20:21:00 GMT):
BSC can handle 150tps as of now, I think

Nithronium (Thu, 06 May 2021 22:16:46 GMT):
Is there any way to reduce maximum allowed gas after deploying the chain?

shemnon (Thu, 06 May 2021 22:26:37 GMT):
Two approaches, either restart each node with `--target-gas-limit` or call https://besu.hyperledger.org/en/stable/Reference/API-Methods/#miner_changetargetgaslimit on each node.

shemnon (Thu, 06 May 2021 22:26:42 GMT):
It will take time to ratchet down.

RobbeV 1 (Fri, 07 May 2021 13:28:49 GMT):
Hi everyone, private transactions are not added to the transaction pool, Does this mean that there needs to be trust between the participants of a private transaction, because its not validated by the network?

RobbeV 1 (Fri, 07 May 2021 13:29:41 GMT):
Thanks alot!

VijayMichalik (Fri, 07 May 2021 13:37:33 GMT):
No problem!

antonydenyer (Fri, 07 May 2021 17:45:52 GMT):
How have you configured your network for privacy and consensus?

bradmcbrayer (Fri, 07 May 2021 18:44:20 GMT):
Anyone else having problems fining peers? My config has nat-method="upnp" and the NAT is working. Also have fast-sync-min-peers=1. I check with etherscan to see that its not making progress so I restart Besu. It starts up, eventually finds a peer and syncs a few blocks only to get stuck again. I have two machines one on mainnet and one on goerli both are almost caught up but both have to be restarted to find peers.

bradmcbrayer (Fri, 07 May 2021 18:44:20 GMT):
Anyone else having problems finding peers? My config has nat-method="upnp" and the NAT is working. Also have fast-sync-min-peers=1. I check with etherscan to see that its not making progress so I restart Besu. It starts up, eventually finds a peer and syncs a few blocks only to get stuck again. I have two machines one on mainnet and one on goerli both are almost caught up but both have to be restarted to find peers.

Nithronium (Sat, 08 May 2021 10:55:54 GMT):
thanks a lot!

Nithronium (Sat, 08 May 2021 10:56:05 GMT):
I totally missed that API

cbfh (Sat, 08 May 2021 11:22:03 GMT):
Hey everyone. I'm trying to benchmark my network using Caliper, and I'm getting really confused. Is there any guide on how to do it specifically for Besu?

RoboCopsGoneMad (Sat, 08 May 2021 23:11:46 GMT):
Has joined the channel.

RoboCopsGoneMad (Sat, 08 May 2021 23:11:47 GMT):
trying to connect to besu with prometheus from a different host, and am getting a 403 - Host not authorized

RoboCopsGoneMad (Sat, 08 May 2021 23:12:23 GMT):
is that not a supported configuration? I see the default bind address for the /metrics endpoint is on the loopback

RoboCopsGoneMad (Sat, 08 May 2021 23:13:11 GMT):
i'm running besu in the provided docker though

RoboCopsGoneMad (Sun, 09 May 2021 00:05:27 GMT):
I noticed the ansible role has `besu_host_whitelist` for allowing RPC connections from other hosts. can that be set via an environment var, and will it affect the prometheus /metrics endpoint as well?

RoboCopsGoneMad (Sun, 09 May 2021 00:56:41 GMT):
_realizes this is what prometheus push gateways are for. slinks away silently._

atoulme (Sun, 09 May 2021 21:33:33 GMT):
you can also use the otel collector to scrape metrics

rampatra (Mon, 10 May 2021 16:26:58 GMT):
Is there a way (an api) to view all the private transactions that happened via orion?

Dazel (Mon, 10 May 2021 17:43:56 GMT):
Hey everyone. Can I deploy a contract into a permissioned Besu network using web3.py? If so, how? I'm having problems doing it.

antonydenyer (Mon, 10 May 2021 20:46:57 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=6e2FGMaSN2uGYJpfw) You can iterate over all transactions to the privacy marker transaction address. But that has it's own issues ...

rampatra (Mon, 10 May 2021 21:44:20 GMT):
thanks for replying. Any reference link you might have?

rampatra (Mon, 10 May 2021 21:45:34 GMT):
Asking because I didnt fully get you.

macfarla (Tue, 11 May 2021 01:46:49 GMT):
I don't see a reason why not. What error are you getting?

antonydenyer (Tue, 11 May 2021 05:37:48 GMT):
In besu when you create a private transactions you end up with a public marker transaction and a private one distributed with orion.

antonydenyer (Tue, 11 May 2021 05:37:48 GMT):
In besu when you create a private transaction you end up with a public marker transaction and a private one distributed with orion.

antonydenyer (Tue, 11 May 2021 05:39:03 GMT):
To get a list of all private transactions in a network you can iterate over all blocks and transactions using json-rpc and then filter out the ones that are addressed to the marker transaction.

antonydenyer (Tue, 11 May 2021 05:40:05 GMT):
It's the same question as get me a list of all transaction to an address. The answer is, it's a pain because you need to iterate over every block.

rampatra (Tue, 11 May 2021 07:12:01 GMT):
sorry, I actually mean how to read the contents of the private transaction after knowing the public marker transaction? I understand that I have to iterate all the blocks and filter out the marker transactions and there's no direct way to get all marker transactions yet. Also, is this the same with tessera?

antonydenyer (Tue, 11 May 2021 07:49:03 GMT):
Once you have the transaction key it's easy. You can just hit `/receive` with the transaction key and the enclave key. https://github.com/hyperledger/besu/blob/master/acceptance-tests/tests/src/test/java/org/hyperledger/besu/tests/web3j/privacy/PrivacyClusterAcceptanceTest.java#L169 shows you how it was done in besu.

antonydenyer (Tue, 11 May 2021 07:49:42 GMT):
The other option is to hit the db directly. Setup orion to use postgres https://docs.orion.consensys.net/en/stable/Tutorials/Using-PostgreSQL/ then just query that like normal!

rampatra (Tue, 11 May 2021 07:50:55 GMT):
This is useful info. Thank you.

cbfh (Tue, 11 May 2021 07:56:35 GMT):
When calling w3.eth.contract(), I get the error `ValueError: {'code': -32604, 'message': 'The method eth_sendTransaction is not supported. Use eth_sendRawTransaction to send a signed transaction to Besu.'}`

cbfh (Tue, 11 May 2021 07:57:10 GMT):
I guess eth_sendTransaction gets called inside w3.eth.contract(), which is not supported

macfarla (Tue, 11 May 2021 07:58:17 GMT):
yep so to use eth_sendTransaction in besu, you have to put EthSigner in front. or use web3js-eea https://besu.hyperledger.org/en/stable/HowTo/Send-Transactions/Account-Management/

cbfh (Tue, 11 May 2021 07:59:02 GMT):
Thanks! I suppose I can use web3.py later on for other operations, right?

coenie (Tue, 11 May 2021 13:14:05 GMT):
Hi! Can anyone point me to how the validator seals are formed for IBFT2? in IBFT1 it is something like keccak256(blockHash, COMMIT_MSG_CODE), but that doesn't seem to work for IBFT2

rampatra (Tue, 11 May 2021 13:53:12 GMT):
So, if I go with the postgres route, would I still need to traverse the blocks to get the marker transaction? In other words, would I need the key (used to receive the orion payload) from the marker transaction? If I have access to the entire db then I can just read it from there without this key. Am I right?

VijayMichalik (Tue, 11 May 2021 15:45:13 GMT):
just looking into this for you!

VijayMichalik (Tue, 11 May 2021 16:38:55 GMT):
The code is somewhere around here but I can't find it exactly - the team is in the process of pulling out some common BFT code to this part of the repo. hopefully I can get you a more direct answer in a few hours. https://github.com/hyperledger/besu/blob/master/consensus/common/src/main/java/org/hyperledger/besu/consensus/common/bft/BftBlockHashing.java

Dazel (Tue, 11 May 2021 17:57:30 GMT):
Quick question. As it says in here: https://besu.hyperledger.org/en/stable/HowTo/Interact/Client-Libraries/web3js-eea/#deploying-a-contract-with-sendrawtransaction I can deploy a contract using this snippet: `const contractOptions = { data: `0x123`, // contract binary privateFrom: "orionNode1PublicKey", privateFor: ["orionNode3PublicKey"], privateKey: "besuNode1PrivateKey" }; return web3.eea.sendRawTransaction(contractOptions);` Do I need to use a orion node? How would I use this for a local besu node?

Dazel (Tue, 11 May 2021 17:57:30 GMT):
Quick question. As it says in here: https://besu.hyperledger.org/en/stable/HowTo/Interact/Client-Libraries/web3js-eea/#deploying-a-contract-with-sendrawtransaction I can deploy a contract using this snippet: `const contractOptions = { data: "0x123", // contract binary privateFrom: "orionNode1PublicKey", privateFor: ["orionNode3PublicKey"], privateKey: "besuNode1PrivateKey" }; return web3.eea.sendRawTransaction(contractOptions);` Do I need to use a orion node? How would I use this for a local besu node?

Dazel (Tue, 11 May 2021 17:57:30 GMT):
Quick question. As it says in here: https://besu.hyperledger.org/en/stable/HowTo/Interact/Client-Libraries/web3js-eea/#deploying-a-contract-with-sendrawtransaction I can deploy a contract using this snippet: `const contractOptions = { data: "0x123", // contract binary privateFrom: "orionNode1PublicKey", privateFor: ["orionNode3PublicKey"], privateKey: "besuNode1PrivateKey" };` return web3.eea.sendRawTransaction(contractOptions);` Do I need to use a orion node? How would I use this for a local besu node?

Dazel (Tue, 11 May 2021 17:57:30 GMT):
Quick question. As it says in here: https://besu.hyperledger.org/en/stable/HowTo/Interact/Client-Libraries/web3js-eea/#deploying-a-contract-with-sendrawtransaction I can deploy a contract using this snippet: `const contractOptions = {` `data: "0x123", // contract binary` privateFrom: "orionNode1PublicKey", privateFor: ["orionNode3PublicKey"], privateKey: "besuNode1PrivateKey" }; return web3.eea.sendRawTransaction(contractOptions);` Do I need to use a orion node? How would I use this for a local besu node?

Dazel (Tue, 11 May 2021 17:57:30 GMT):
Quick question. As it says in here: https://besu.hyperledger.org/en/stable/HowTo/Interact/Client-Libraries/web3js-eea/#deploying-a-contract-with-sendrawtransaction I can deploy a contract using this snippet: const contractOptions = { data: "0x123", // contract binary privateFrom: "orionNode1PublicKey", privateFor: ["orionNode3PublicKey"], privateKey: "besuNode1PrivateKey" }; return web3.eea.sendRawTransaction(contractOptions);` Do I need to use a orion node? How would I use this for a local besu node?

Dazel (Tue, 11 May 2021 17:57:30 GMT):
Quick question. As it says in here: https://besu.hyperledger.org/en/stable/HowTo/Interact/Client-Libraries/web3js-eea/#deploying-a-contract-with-sendrawtransaction I can deploy a contract using this snippet: `const contractOptions = { data: "0x123", // contract binary privateFrom: "orionNode1PublicKey", privateFor: ["orionNode3PublicKey"], privateKey: "besuNode1PrivateKey" }; return web3.eea.sendRawTransaction(contractOptions);` Do I need to use a orion node? How would I use this for a local besu node?

macfarla (Tue, 11 May 2021 19:46:41 GMT):
That snippet is deploying a private contract, and for that you need a private transaction manager (Orion). If you're not using privacy, you can just use web3j https://besu.hyperledger.org/en/stable/HowTo/Develop-Dapps/Client-Libraries/

macfarla (Tue, 11 May 2021 19:46:43 GMT):
That snippet is deploying a private contract, and for that you need a private transaction manager (Orion). If you're not using privacy, you can just use web3j https://besu.hyperledger.org/en/stable/HowTo/Develop-Dapps/Client-Libraries/

macfarla (Tue, 11 May 2021 19:47:17 GMT):
Sorry I don't know your use case - but to sent a tx to besu it needs to be signed outside of besu

macfarla (Tue, 11 May 2021 19:48:04 GMT):
EthSigner is nice for this and it's what I use when developing

jframe (Wed, 12 May 2021 03:15:48 GMT):
Not sure entirely what you mean. But the commit seals that are included in the extra data for the finalised block are created using IbftRound.createCommitSeal which does a keccak256(commitHash) where the commit hash is the hash of the proposed block header with the extra data changed to exclude the commit seals. The hash that is signed and included as part of the IBFT2 messages does a keccak256(messageCode, rlp(payload)) which is done in IbftPayload.

gortaire (Wed, 12 May 2021 03:25:45 GMT):
Has joined the channel.

gortaire (Wed, 12 May 2021 03:25:46 GMT):
Hi all, I'm on my first steps with Ethereum and Besu, and I'm struggling with a Metamask problem since it isn't loading the account balance after I've reloaded the sample network. I understand It must be a very basic issue, but I'd really appreciate any hints to solve it. Thanks in advance!

gortaire (Wed, 12 May 2021 03:32:50 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=yQJLhks8a44wbTgND) Just in case, to be clear, I've already tried reinstalling Metamask, also switch networks, and reload accounts, and, when I look up the imported account in the block explorer, it shows the right balances.

rjones (Wed, 12 May 2021 04:48:14 GMT):

rjones (Wed, 12 May 2021 04:48:26 GMT):
Has left the channel.

VijayMichalik (Wed, 12 May 2021 07:25:17 GMT):
Hi Giorgio, welcome to Besu! Can you let me know which sample network tutorial you're following? Are you getting any errors in your logs?

antonydenyer (Wed, 12 May 2021 12:35:00 GMT):
yes, you could just read them from the db.

gortaire (Wed, 12 May 2021 14:57:34 GMT):
Hi Vijay, thank you very much for your reply. I've downloaded the https://github.com/ConsenSys/quorum-dev-quickstart samples and I'm following the Hyperledger Besu path. I've successfully launched the test network with privacy enabled and my next step would be the pet-shop dapp deployment. This deployment is currently failing due to a lack of funds in the owner account I'm using, but I've realized the genesis file includes three accounts with plenty of balance. The problem is when I import any of those accounts in metamask, it is showing a zero/empty balance, though, the account's balance on the block explorer shows the opposite, that's why I'm pretty sure there is a problem with metamask. Then, to workaround this issue, I'd like to find a way to manually create accounts, in this manner I'll be able to include them in the genesis file and finally, recreate the network and use those accounts to deploy the dapp. I'm trying to build something based on web3 to do that, so, as I've told, any help will be very appreciated.

gortaire (Wed, 12 May 2021 15:22:41 GMT):

Screen Shot 2021-05-12 at 11.20.19.png

gortaire (Wed, 12 May 2021 15:23:12 GMT):

Screen Shot 2021-05-12 at 11.19.53.png

VijayMichalik (Wed, 12 May 2021 15:59:19 GMT):
Hey @gortaire it looks like your Metamask is not connecting to your Besu node. Can you perhaps screenshot the address and port in your Metamask network selection? Are there any errors in your Besu logs when you try to connect?

gortaire (Wed, 12 May 2021 16:04:04 GMT):
Can you guide me on which logs should i look to check errors?

gortaire (Wed, 12 May 2021 16:06:22 GMT):
there are many nodes, in which of them should i find relevant logs?

gortaire (Wed, 12 May 2021 16:06:51 GMT):
in the rpcnode?

VijayMichalik (Wed, 12 May 2021 16:42:07 GMT):
yep! the rpcnode logs would be the correct ones to check

gortaire (Wed, 12 May 2021 17:45:18 GMT):
Fixed!. I've recreated again all the installation and also the rpc connection on metamask with a different name and now all is working fine. What a shame, obviously I was stuck in a very beginners issue, however, I'm glad to join the community and I hope to collaborate with valuable topics in the future. Thank you very much for the consideration given and the goodwill to help!

VijayMichalik (Wed, 12 May 2021 18:58:34 GMT):
No problem at all, anytime! Hope to see you join our community calls in the future - let us know if you want to share what you're working on!

gortaire (Wed, 12 May 2021 19:15:39 GMT):
I’ll be aware, than you!

rampatra (Thu, 13 May 2021 14:13:55 GMT):
Can anyone here help me with this please: https://github.com/web3j/web3j/issues/1411 ?

RoboCopsGoneMad (Thu, 13 May 2021 21:50:14 GMT):
i'm having a hard time understanding the initial sync process of my Besu client.... here's what I think i know so far. I'm running fast sync, so it shouldn't be trying to execute any contracts older than my pivot block, which is top block as of startup time, minus 64. My blockchain is synced up till the time I started it, but it hasn't pulled in any new blocks. It continues to pull down world state too. How can I tell if I did anything wrong, or how much of the state tries remain to be pulled in?

RoboCopsGoneMad (Thu, 13 May 2021 21:51:13 GMT):
i'm currently almost 6K blocks behind, and not sure when that will start coming down. I'm not sure how much world state remains or what it's actually doing right now.

ajsutton (Thu, 13 May 2021 22:28:00 GMT):
Blocks after the pivot block can't be imported until the whole world state has downloaded, because those do need to have their transactions processed and that requires the world state. Unfortunately with the way that the protocols work for fast sync there isn't any way to get a clear indication of how many trie nodes are left to download because it keeps changing. Last I heard I think was about 700 million but my memory may be off on that. Also, it's common for the process to need to move up to a more recent pivot block because all peers have pruned the world state at the original pivot block. In that case Besu has to walk the whole world state trie again and download any nodes that have changed which significantly increases the total number of trie nodes that wind up being downloaded.

RoboCopsGoneMad (Thu, 13 May 2021 22:30:27 GMT):
thanks! that explains a lot. I assume when i get to a case where state has aged out, i can just bounce my client, and it'll choose a new pivot 64 blocks from head of chain

ajsutton (Thu, 13 May 2021 22:54:24 GMT):
Definitely don't bounce your client. Besu will handle the case where it can't get the state from peers automatically. You'll see it log a message about selecting a new pivot block - not sure what the actual wording is though.

RoboCopsGoneMad (Thu, 13 May 2021 22:55:25 GMT):
is increasing --max-peers worth a bounce though? I have plenty of bandwidth (gig fiber)

ajsutton (Thu, 13 May 2021 22:56:55 GMT):
Maybe but usually the sync is limited by your disk speed. The problem with restarting is that you guarantee Besu will have to start walking the trie from scratch again when you do it.

RoboCopsGoneMad (Thu, 13 May 2021 22:57:41 GMT):
right because it's a wholy new intermediate state starting point

RoboCopsGoneMad (Thu, 13 May 2021 22:57:49 GMT):
thanks for the help!

macfarla (Fri, 14 May 2021 02:58:45 GMT):
You can _read_ public state from private tx but you can't write to the public state from a private transaction. We have a web3js-eea example here which reads from the public state https://github.com/ConsenSys/web3js-eea/tree/master/example/accessPublicState

rampatra (Fri, 14 May 2021 10:17:57 GMT):
oh I see

rampatra (Fri, 14 May 2021 10:18:39 GMT):
Then what will be the work around for this? What if one wants to update the public state in a private transaction?

antonydenyer (Fri, 14 May 2021 12:41:07 GMT):
you can't it's basically impossible to do it in a single transaction. You could have something like an atomic swap between public and private state to achieve what you want but it's a multistage process.

Dazel (Fri, 14 May 2021 14:00:08 GMT):
Hey everyone. How can I interact with a smart contract deployed in Besu, if can't use eth_sendTransaction? I'm unable to use myContract.methods.method(param).send({ from: account }). How would I do it with eth_sendRawTransaction?

Dazel (Fri, 14 May 2021 14:00:08 GMT):
Hey everyone. How can I interact with a smart contract deployed in Besu, if can't use eth_sendTransaction? I'm unable to use myContract.methods.method(param).send({ from: account }). How would I do it with eth_sendRawTransaction? Edit: nevermind, I found a way to do it

Dazel (Fri, 14 May 2021 14:00:16 GMT):
I'm using web3js

roshan13046 (Sat, 15 May 2021 04:22:19 GMT):
Has joined the channel.

roshan13046 (Sat, 15 May 2021 04:22:19 GMT):
Hi! Everyone.

charith1994 (Sat, 15 May 2021 17:03:44 GMT):
Has joined the channel.

EmcLab (Mon, 17 May 2021 05:02:18 GMT):
What is the SNAPSHOT version of besu? Shall we use it in production?

VijayMichalik (Mon, 17 May 2021 09:54:56 GMT):
Hey @EmcLab, SNAPSHOT versions are under active development, and therefore the actual code could change daily. We recommend only using the full releases in production.

mohjam2004 (Mon, 17 May 2021 11:53:18 GMT):
Hi @joshuafernandes I have deployed besu on my kubernetes cluster based on this doc: https://github.com/ConsenSys/quorum-kubernetes/tree/master/kubectl/quorum-besu/ibft2-with-privacy I have error on my node1-privacy and node2-privacy pods. this is the failed log on them: ANTLR Tool version 4.7.1 used for code generation does not match the current runtime version 4.8ANTLR Runtime version 4.7.1 used for parser compilation does not match the current runtime version 4.8ANTLR Tool version 4.7.1 used for code generation does not match the current runtime version 4.8ANTLR Runtime version 4.7.1 used for parser compilation does not match the current runtime version 4.8Not a free gas network. --privacy-marker-transaction-signing-key-file must be specified and must be a funded account. Private transactions cannot be signed by random (non-funded) accounts in paid gas networks Note: I haven't change anything in all files in your repository for "ibft2-with-privacy" and just deploy it to test 1st deployment. what does cause this problem?

mohjam2004 (Mon, 17 May 2021 14:15:21 GMT):

Clipboard - May 17, 2021 6:45 PM

EmcLab (Mon, 17 May 2021 14:58:52 GMT):
In ibftConfigFile.json file in doc, there is alloc block which contains some account# and private key. Can I use empty alloc when setup the private network? Here is the doc link https://besu.hyperledger.org/en/stable/Tutorials/Private-Network/Create-IBFT-Network/

coenie (Mon, 17 May 2021 19:33:11 GMT):
Hi, sorry for only getting to this now. What I want to do is be able to recover the ethereum address that created the seal. I'm able to get to the correct block hash (or commitHash above), but the recovered addresses doesn't match the validator addresses. It should be as simple as ecrecover(keccak256(keccak256(rlp encoded blockheader)), validator seal), right ?

coenie (Mon, 17 May 2021 19:33:11 GMT):
Hi, sorry for only getting to this now. What I want to do is be able to recover the ethereum address that created the seal. I'm able to get to the correct block hash (or commitHash above), but the recovered addresses doesn't match the validator addresses. As per your message, it should be as simple as ecrecover(keccak256(keccak256(rlp encoded blockheader)), validator seal), right ?

indranil32 (Tue, 18 May 2021 14:10:20 GMT):
Has joined the channel.

Nithronium (Tue, 18 May 2021 17:08:35 GMT):
Hello everyone, I just wanted to ask a quick question, are there any works related to the Avalanche consensus on BESU?

Nithronium (Tue, 18 May 2021 17:09:05 GMT):
Not the actual UTXO implementation as simply it's not an EVM chain. However, the communication protocol could be implemented as an alternative, I think

Nithronium (Tue, 18 May 2021 17:09:19 GMT):
It basically deals on the communication aspect of the nodes and scalability.

VijayMichalik (Tue, 18 May 2021 17:11:20 GMT):
Hi @EmcLab, you can totally have an empty alloc. Here are all the fields explained - you should customize them for your project. https://besu.hyperledger.org/en/stable/Reference/Config-Items/

VijayMichalik (Tue, 18 May 2021 17:11:20 GMT):
Hi @EmcLab, you can totally have an empty alloc. Here are all the fields explained - you should customize them for your project as you're developing your project. https://besu.hyperledger.org/en/stable/Reference/Config-Items/

jframe (Wed, 19 May 2021 01:44:53 GMT):
Hi coenie, We are actually do a recover to verify the seals are from known validators in the BftCommitSealsValidationRule which uses the BftInterface so you can see how to recover the validator address that created seal in this code https://github.com/hyperledger/besu/blob/master/consensus/common/src/main/java/org/hyperledger/besu/consensus/common/bft/BftBlockInterface.java#L98. Basically you need to do a ecrecover of the block hash and the validator seal then convert that public key to an ethereum address. So basically publicKeyToAddress(ecrecover(keccak256(rlp encoded blockheader), validator seal))

jframe (Wed, 19 May 2021 01:44:53 GMT):
Hi coenie, We are do a recover to verify the seals are from known validators in the BftCommitSealsValidationRule which uses the BftInterface so you can see how to recover the validator address that created seal in this code https://github.com/hyperledger/besu/blob/master/consensus/common/src/main/java/org/hyperledger/besu/consensus/common/bft/BftBlockInterface.java#L98. Basically you need to do a ecrecover of the block hash and the validator seal then convert that public key to an ethereum address. So basically publicKeyToAddress(ecrecover(keccak256(rlp encoded blockheader), validator seal))

RobbeV 1 (Wed, 19 May 2021 11:38:18 GMT):
Hi eveyone, I wanted to see how scalable Besu is. I'm using the test-network and the included grafana to look how everything is performing. Now is there an easy way to double the amount of nodes of the besu test network?

VijayMichalik (Wed, 19 May 2021 13:57:08 GMT):
Hey Robbe, what dimension of scalability are you interested in, is it TPS? Or total nodes? Or perhaps number of validators?

VijayMichalik (Wed, 19 May 2021 13:59:03 GMT):
Hi @Nithronium, Besu is designed to be extensible and we are always interested to explore new topics. We haven't had anyone approach with a concrete proposal or request to include Avalanche consensus yet, but would be interested to see one if you wanted to put it forward.

TravisPayne (Wed, 19 May 2021 16:02:17 GMT):
Has joined the channel.

TravisPayne (Wed, 19 May 2021 16:02:17 GMT):
Hi all, encountered a bit of a problem. Currently trying to deploy a contract and send a private transaction using the node EEAClient, the first time it works without a hitch, the second time I try to run the exact same code, I receive the error "Unable to decode the private signed raw transaction". Has anyone seen this before or have an idea about what might be doing wrong? Cheers

Nithronium (Wed, 19 May 2021 17:36:05 GMT):
Let me work on that then. Are there any previous feature suggestion/proposal templates I can take a look at, so that I know what I should prepare & how to propose, or even if I need to provide a PoC etc.

Nithronium (Wed, 19 May 2021 17:36:05 GMT):
Let me work on that then. Are there any previous feature suggestion/proposal templates I can take a look at? so that I know what I should prepare & how to propose, or even if I need to provide a PoC etc.

Nithronium (Wed, 19 May 2021 17:40:23 GMT):
NVM, found it :) https://wiki.hyperledger.org/display/BESU/Suggesting+Enhancements

DavidMacFadyen (Wed, 19 May 2021 18:19:20 GMT):
Has joined the channel.

DavidMacFadyen (Wed, 19 May 2021 18:19:21 GMT):
Dear Besu People! I head the Media and Entertainment SIG (Special Interest Group) at Hyperledger, and am currently booking speakers to match the wish-list of our members. One member asks: “I'd like to hear from someone at Consensys about this, connecting Ethereum with enterprise via Hyperledger.” Does anybody have a good contact––or suggested contact? We'd like somebody to come and be a speaker at one of our get-togethers. Thanks! David

alftom (Wed, 19 May 2021 18:39:02 GMT):
I'm curious to see when Besu will support secp256r1. I believe this is the only thing preventing Besu from being NIST compliant at the moment, given POA and using Java libraries?

SajidaZ (Wed, 19 May 2021 18:55:55 GMT):
Hi David, interesting topic indeed. I will ask at Consensys and get back to you shortly.

rampatra (Wed, 19 May 2021 19:28:38 GMT):
A general question: how does ethereum prevent double spend of erc20 tokens? The code for the transfer is this: ``` function transfer(address to, uint256 value) public returns (bool) { require(value <= _balances[msg.sender]); require(to != address(0)); _balances[msg.sender] = _balances[msg.sender].sub(value); _balances[to] = _balances[to].add(value); emit Transfer(msg.sender, to, value); return true; } ``` I was now wondering how does ethereum prevent double spend in this case? Is it with the help of account level nonce or something else?

shemnon (Wed, 19 May 2021 19:34:21 GMT):
Because ERC-20s are account based there are no double spends. Double spends are an aspect of UTXO based systems, where you in effect have a sort of a digital bearer bond. Account level nonce ensures that an account's transactions are not replayed.

DavidMacFadyen (Wed, 19 May 2021 19:36:50 GMT):
Fantastic: thank you!

SajidaZ (Wed, 19 May 2021 22:02:04 GMT):
Hi @bradmcbrayer, what command are you using? Which version of Besu are you running? If you can send logs as well, that would be useful.

macfarla (Wed, 19 May 2021 23:22:22 GMT):
There is some work underway on this, it's still in the "experimental feature" phase. If you search PRs for "elliptic curve" and "SECP256R1" you can view the code changes - but keep in mind it's still under active development so things could change.

macfarla (Wed, 19 May 2021 23:47:48 GMT):
I have seen that error a lot... it can mean a number of things. What mode of privacy are you using? Are you running a particular EEAClient example or running your own code? Either way, can you share the code or a reference to it?

VijayMichalik (Thu, 20 May 2021 09:56:52 GMT):
Thanks @Nithronium! If you want to chat it over after you've drafted it, definitely come along to one of the contributor calls (and let us know which one!)

TravisPayne (Thu, 20 May 2021 10:29:50 GMT):
Hey, I'm using the web3-eea client on npm, and using the private network example nodes: https://besu.hyperledger.org/en/stable/Tutorials/Examples/Privacy-Example/ I believe these nodes are built using the --privacy-enabled flag, so quite confused as to how this error is happening. Thanks!!

TravisPayne (Thu, 20 May 2021 10:52:00 GMT):
This is how the EEA client is being used in my code: ` const txPoolReceipt = this.web3EEA?.eea.sendRawTransaction({ data: request.transactionConfig.rawTransaction as string, privateFrom: request.privateTransactionConfig?.privateFrom, privateFor: request.privateTransactionConfig?.privateFor, privateKey: secret, to: request.transactionConfig.to });`

TravisPayne (Thu, 20 May 2021 10:52:00 GMT):
This is how the EEA client is being used in my code: ` `` const txPoolReceipt = this.web3EEA?.eea.sendRawTransaction({ data: request.transactionConfig.rawTransaction as string, privateFrom: request.privateTransactionConfig?.privateFrom, privateFor: request.privateTransactionConfig?.privateFor, privateKey: secret, to: request.transactionConfig.to });```

TravisPayne (Thu, 20 May 2021 10:52:00 GMT):
This is how the EEA client is being used in my code: ``` const txPoolReceipt = this.web3EEA?.eea.sendRawTransaction({ data: request.transactionConfig.rawTransaction as string, privateFrom: request.privateTransactionConfig?.privateFrom, privateFor: request.privateTransactionConfig?.privateFor, privateKey: secret, to: request.transactionConfig.to }); ```

rampatra (Thu, 20 May 2021 12:07:29 GMT):
One more question on this. I think this account level also comes in play in Private Transactions involving Orion/Tessera. Am i right? In other words, besu maintains/checks the account nonce even for private TXOs?

rampatra (Thu, 20 May 2021 12:07:29 GMT):
One more question on this. I think this account level nonce also comes in play in Private Transactions involving Orion/Tessera. Am i right? In other words, besu maintains/checks the account nonce even for private TXOs?

rampatra (Thu, 20 May 2021 12:18:58 GMT):
Another general question, does besu maintains/checks the account nonce even for private TXOs? That is, would besu prevent double-spend by maintaining/checking the account nonce for Private Transactions?

rampatra (Thu, 20 May 2021 12:18:58 GMT):
Another general question, does besu maintains/checks the account nonce even for private TXOs? That is, would besu prevent double-spend by maintaining/checking the account nonce for Private Transactions? Asking because the nonce for account A for privacy group ABC is different to the nonce for account A for privacy group AB. So, how does besu prevent double spend in this case? Does it use the nonce for the marker transaction to prevent double-spends?

rampatra (Thu, 20 May 2021 12:18:58 GMT):
Another general question, does besu maintains/checks the account nonce even for private TXOs? That is, would besu prevent double-spend by maintaining/checking the account nonce for Private Transactions? Asking because the nonce for account A for privacy group ABC is different to the nonce for account A for privacy group AB. So, how does besu prevent double spend in this case? Does it use the nonce of the marker transaction to prevent double-spends?

shemnon (Thu, 20 May 2021 13:56:55 GMT):
Just Transactions, not TXOs, Ethereum does not have a TXO/UTXO model.

shemnon (Thu, 20 May 2021 13:57:17 GMT):
Besu checks/maintains account nonces because the more generalized ethereum protocol does.

rampatra (Thu, 20 May 2021 14:00:27 GMT):
sorry my bad, I meant to write Txns.

grace.hartley (Thu, 20 May 2021 15:00:20 GMT):
User User_1 added by grace.hartley.

rampatra (Thu, 20 May 2021 15:52:20 GMT):
Is there a way where a participant (one of the receiver) in a privacy group prevent a private transaction from happening?

EmcLab (Thu, 20 May 2021 18:12:02 GMT):
When I start boot node with 21.1.5 first time, there is an warning about logging. The config.toml file was moved from a running node. Is it problem? How to fix this warning?

EmcLab (Thu, 20 May 2021 18:13:38 GMT):
2021-05-21 01:47:37.631+08:00 | main | INFO | LogBloomCacheMetadata | Lookup cache metadata file in data directory: /home/besu_network/node1/data/caches 2021-05-21 01:47:37,637 pool-8-thread-1 WARN org.apache.logging.log4j.spi.AbstractLogger caught java.lang.IllegalArgumentException logging MessageFormatMessage: Using the APIs optimized for: {} java.lang.IllegalArgumentException: can't parse argument number: at java.base/java.text.MessageFormat.makeFormat(MessageFormat.java:1454) at java.base/java.text.MessageFormat.applyPattern(MessageFormat.java:492) at java.base/java.text.MessageFormat.(MessageFormat.java:391) at org.apache.logging.log4j.message.MessageFormatMessage.formatMessage(MessageFormatMessage.java:115) at org.apache.logging.log4j.message.MessageFormatMessage.getFormattedMessage(MessageFormatMessage.java:87) at org.apache.logging.log4j.core.async.InternalAsyncUtil.makeMessageImmutable(InternalAsyncUtil.java:41) at org.apache.logging.log4j.core.impl.MutableLogEvent.setMessage(MutableLogEvent.java:217) at org.apache.logging.log4j.core.impl.ReusableLogEventFactory.createEvent(ReusableLogEventFactory.java:100) at org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:408) at org.apache.logging.log4j.core.config.AwaitCompletionReliabilityStrategy.log(AwaitCompletionReliabilityStrategy.java:63) at org.apache.logging.log4j.core.Logger.logMessage(Logger.java:153) at org.apache.logging.log4j.spi.ExtendedLoggerWrapper.logMessage(ExtendedLoggerWrapper.java:222) at org.apache.logging.log4j.spi.AbstractLogger.log(AbstractLogger.java:2110) at org.apache.logging.log4j.spi.AbstractLogger.tryLogMessage(AbstractLogger.java:2198) at org.apache.logging.log4j.spi.AbstractLogger.logMessageTrackRecursion(AbstractLogger.java:2152) at org.apache.logging.log4j.spi.AbstractLogger.logMessageSafely(AbstractLogger.java:2135) at org.apache.logging.log4j.spi.AbstractLogger.logMessage(AbstractLogger.java:2028) at org.apache.logging.log4j.spi.AbstractLogger.logIfEnabled(AbstractLogger.java:1899) at org.apache.logging.log4j.spi.AbstractLogger.log(AbstractLogger.java:1778) at org.apache.logging.log4j.jul.ApiLogger.log(ApiLogger.java:132) at io.opentelemetry.sdk.internal.JavaVersionSpecific.(JavaVersionSpecific.java:44) at io.opentelemetry.sdk.internal.SystemClock.now(SystemClock.java:30) at io.opentelemetry.sdk.internal.MonotonicClock.create(MonotonicClock.java:40) at io.opentelemetry.sdk.trace.SdkSpanBuilder.getClock(SdkSpanBuilder.java:251)

shemnon (Thu, 20 May 2021 18:47:29 GMT):
@atoulme looks like a splunk issue? In the java version check static iniailizers?

GarySchulte (Thu, 20 May 2021 18:55:30 GMT):
https://github.com/open-telemetry/opentelemetry-java/issues/2455 looks like it is was fixed in January

GarySchulte (Thu, 20 May 2021 18:57:22 GMT):
I have noticed the error, but it hasn't affected the client's normal operations after it occurs.

GarySchulte (Thu, 20 May 2021 19:02:56 GMT):
I will bump the version of opentelemetry to at least 0.14.1. There is a long list of breaking changes between lates and our current rev (despite being only 5 months old!)

GarySchulte (Thu, 20 May 2021 19:02:56 GMT):
I will bump the version of opentelemetry to at least 0.14.1. There is a long list of breaking changes between latest and our current rev (despite being only 5 months old!)

EmcLab (Thu, 20 May 2021 19:17:54 GMT):
Here is the java --version

EmcLab (Thu, 20 May 2021 19:18:04 GMT):
# java --version openjdk 14.0.2 2020-07-14 OpenJDK Runtime Environment (build 14.0.2+12-Ubuntu-120.04) OpenJDK 64-Bit Server VM (build 14.0.2+12-Ubuntu-120.04, mixed mode, sharing)

atoulme (Thu, 20 May 2021 19:52:04 GMT):
thanks for looking into it folks. Yes, the format changed a lot, but should be nicer going forward (API freeze with 1.0). @EmcLab feel free to open an issue and give me reference

GarySchulte (Thu, 20 May 2021 20:35:21 GMT):
even the bump to 0.14.1 causes interface changes/deprecations that are not immediately obvious how to rectify - I will defer to @atoulme on this since it seems like it is in his wheelhouse

SajidaZ (Thu, 20 May 2021 22:32:22 GMT):
Hi David, you can reach to Matt Wright @mdwright88

SajidaZ (Thu, 20 May 2021 22:32:22 GMT):
Hi @DavidMacFadyen , you can reach to Matt Wright @mdwright88

SajidaZ (Thu, 20 May 2021 22:32:22 GMT):
Hi @DavidMacFadyen, you can reach to Matt Wright @mdwright88

SajidaZ (Thu, 20 May 2021 22:32:22 GMT):
Hi @DavidMacFadyen, you can reach out to Matt Wright @mdwright88

EmcLab (Fri, 21 May 2021 03:47:25 GMT):
@atoulme , new issue open on github. here is the link https://github.com/hyperledger/besu/issues/2312

atoulme (Fri, 21 May 2021 05:35:59 GMT):
Thanks Gary for taking a look

rampatra (Fri, 21 May 2021 13:37:01 GMT):
Didn't find anything on this yet: https://chat.hyperledger.org/channel/besu?msg=2HiFG2cP7sdC3JS5m. Any help would be really appreciated.

DavidMacFadyen (Fri, 21 May 2021 14:48:39 GMT):
THANK YOU ))

EmcLab (Fri, 21 May 2021 18:24:34 GMT):
Hi all, for non-boot nodes, the config still is similar to boot node, which requires rpc enabled, rpc-http-api, rpc-http-hosts and rpc-http-cors-origin. My question is that since non-boot nodes does not take rpc call directly from clients, why the rpc is still enabled for them?

EmcLab (Sat, 22 May 2021 04:34:48 GMT):
What is wrong with the message below? The same config (with different port) works on other node.

EmcLab (Sat, 22 May 2021 04:34:50 GMT):
2021-05-22 12:33:48.645+08:00 | Thread-2 | INFO | AutoTransactionLogBloomCachingService | Shutting down Auto transaction logs caching service. 2021-05-22 12:33:48.646+08:00 | Thread-2 | INFO | NatService | No NAT environment detected so no service could be stopped ANTLR Tool version 4.7.1 used for code generation does not match the current runtime version 4.8ANTLR Runtime version 4.7.1 used for parser compilation does not match the current runtime version 4.8ANTLR Tool version 4.7.1 used for code generation does not match the current runtime version 4.8ANTLR Runtime version 4.7.1 used for parser compilation does not match the current runtime version 4.82021-05-22 12:33:50.809+08:00 | main | INFO | AbstractAltBnPrecompiledContract | Using LibEthPairings native alt bn128

Dazel (Sat, 22 May 2021 11:12:39 GMT):
Hey everyone, would it be possible to run a small permissioned Besu network with 3 nodes on Raspberry Pis with 1gb of ram? The idea would be to have a block time of around 15 seconds and have a low transaction amount of around 30 transactions/hour.

Dazel (Sat, 22 May 2021 12:25:11 GMT):

Clipboard - May 22, 2021 2:25 PM

Dazel (Sat, 22 May 2021 12:25:13 GMT):
Another question, in the information of block validation, in which unit is the gas represented (like in this image)

EmcLab (Sat, 22 May 2021 18:01:02 GMT):
For non-boot node with service enabled, sometime it is synced and sometimes it is not. Here is the message when it was not:

EmcLab (Sat, 22 May 2021 18:01:07 GMT):
2021-05-23 01:31:30.060+08:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2021-05-23 01:31:35.060+08:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2021-05-23 01:31:40.061+08:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0

EmcLab (Sat, 22 May 2021 18:01:37 GMT):
What is wrong here?

EmcLab (Sat, 22 May 2021 19:03:59 GMT):
Manually start the server work with $sudo systemctl restart node4.service. The boot node shows 4 peers and all other 3 non-boot nodes showing 3 peers. Is it right? I am a little confused with the peer count for boot and non-boot nodes.

EmcLab (Sat, 22 May 2021 19:03:59 GMT):
Manually start the service works with $sudo systemctl restart node4.service. The boot node shows 4 peers and all other 3 non-boot nodes showing 3 peers. Is it right? I am a little confused with the peer count for boot and non-boot nodes.

EmcLab (Sat, 22 May 2021 19:07:49 GMT):
For a 4 nodes Besu network with one boot node, what is the right number of peers showing on boot and non-boot nodes assuming all 4 nodes are up and running?

HiteshSharma (Sun, 23 May 2021 07:26:37 GMT):
There is no unit for gas.

HiteshSharma (Sun, 23 May 2021 07:27:50 GMT):
The unit for gas price is `wei`. So the transaction fee is calculated as - `gas used` * `gas price` wei.

HiteshSharma (Sun, 23 May 2021 07:28:03 GMT):
And `wei` can be converted to `Ether`.

HiteshSharma (Sun, 23 May 2021 11:36:40 GMT):
Hi guys, is there a way to show the currency symbol as something other than `ETH` by default? My main motive is to start a chain for which the currency symbol - 'DDR'. I don't know the logic behind it. Is it just to tell others that the mined coins for this network is `DDR` and not `ETH`? But connecting to the chain, shows currency symbol as `ETH` by default. How to go forward with it?

HiteshSharma (Sun, 23 May 2021 11:36:40 GMT):
Hi guys, is there a way to show the currency symbol as something other than `ETH` by default? My main motive is to start a chain for which the currency symbol - 'DDR'. I don't know the logic behind it. Is it just to tell others that the mined coins for this network is `DDR` and not `ETH`? But connecting to the chain, shows currency symbol as `ETH` by default. How to go forward with it? Simply put how to create my own cryptocurrency?

HiteshSharma (Sun, 23 May 2021 11:36:40 GMT):
Hi guys, is there a way to show the currency symbol as something other than `ETH` by default? My main motive is to start a chain for which suppose that the currency symbol - `DDR`. I don't know the logic behind it. Is it just to tell others that the mined coins for this network is `DDR` and not `ETH`? But connecting to the chain, shows currency symbol as `ETH` by default. How to go forward with it? Simply put how to create my own cryptocurrency?

HiteshSharma (Sun, 23 May 2021 11:36:40 GMT):
Hi guys, is there a way to show the currency symbol as something other than `ETH` by default? My main motive is to start a chain for which suppose that the currency symbol is `DDR`. I don't know the logic behind it. Is it just to tell others that the mined coins for this network is `DDR` and not `ETH`? But connecting to the chain, shows currency symbol as `ETH` by default. How to go forward with it? Simply put how to create my own cryptocurrency?

EmcLab (Mon, 24 May 2021 05:10:55 GMT):
Hi there, I just setup a 4 nodes network. The peer count on boot node is 4. However it is 3 peers on all other non-boot node. What could be wrong here?

EmcLab (Mon, 24 May 2021 05:16:44 GMT):
2021-05-24 12:50:33.065+08:00 | pool-8-thread-1 | DEBUG | BaseBftController | New chain head detected (block number=106392), currently mining on top of 106391. 2021-05-24 12:50:34.862+08:00 | EthScheduler-Timer-0 | DEBUG | FullSyncTargetManager | Caught up to best peer: 106391, Peers: 4 2021-05-24 12:50:34.862+08:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 4 peers currently connected. 2021-05-24 12:50:35.000+08:00 | pool-8-thread-1 | DEBUG | IbftRound | Creating proposed block. round=ConsensusRoundIdentifier{Sequence=106393, Round=0} 2021-05-24 12:50:35.024+08:00 | pool-8-thread-1 | DEBUG | IbftRound | Received a prepare message. round=ConsensusRoundIdentifier{Sequence=106393, Round=0}

EmcLab (Mon, 24 May 2021 05:17:17 GMT):
3ef461d284abfecb72be4a2cdaa6a271) in 0.000s. Peers: 3 2021-05-24 12:40:17.057+08:00 | EthScheduler-Workers-2 | INFO | PersistBlockTask | Imported #106,084 / 0 tx / 0 om / 0 (0.0%) gas / (0x2b91d68407a7d67dee2209fd3ee6af967ac49870be363117019929f070f326a3) in 0.000s. Peers: 3 2021-05-24 12:40:17.058+08:00 | pool-8-thread-1 | INFO | IbftBesuControllerBuilder | Produced #106,084 / 0 tx / 0 pending / 0 (0.0%) gas / (0x2b91d68407a7d67dee2209fd3ee6af967ac49870be363117019929f070f326a3) 2021-05-24 12:40:19.059+08:00 | pool-8-thread-1 | INFO | IbftBesuControllerBuilder | Imported #106,085 / 0 tx / 0 pending / 0 (0.0%) gas / (0x2c99e49ea401105514369d507c87f22d91efa2b2e94fdfdd5f31e1780d484d3a) 2021-05-24 12:40:19.059+08:00 | EthScheduler-Workers-0 | INFO | PersistBlockTask | Imported #106,085 / 0 tx / 0 om / 0 (0.0%) gas / (0x2c99e49ea401105514369d507c87f22d91efa2b2e94fdfdd5f31e1780d484d3a) in 0.000s. Peers: 3

mohjam2004 (Mon, 24 May 2021 11:48:47 GMT):
I have deployed besu with privacy on my kubernetes cluster based on this: https://github.com/ConsenSys/quorum-kubernetes/tree/master/kubectl/quorum-besu/ibft2-with-privacy *my validator and node(n)-privacy nodes have this error*: ANTLR Tool version 4.7.1 used for code generation does not match the current runtime version 4.8ANTLR Runtime version 4.7.1 used for parser compilation does not match the current runtime version 4.8ANTLR Tool version 4.7.1 used for code generation does not match the current runtime version 4.8ANTLR Runtime version 4.7.1 used for parser compilation does not match the current runtime version 4.8Unable to read genesis file for GoQuorum options

mohjam2004 (Mon, 24 May 2021 11:51:44 GMT):
for step 4, I have created orionSetup/orion1 and orionSetup/orion2 folder

mohjam2004 (Mon, 24 May 2021 11:52:19 GMT):
and inside them I have created oriion1.password and orion2.password

mohjam2004 (Mon, 24 May 2021 11:52:19 GMT):
and inside them I have created orion1.password and orion2.password

mohjam2004 (Mon, 24 May 2021 11:53:05 GMT):
and inside these two files I have written password (as text file)

mohjam2004 (Mon, 24 May 2021 11:54:29 GMT):
then I run this command

mohjam2004 (Mon, 24 May 2021 11:54:31 GMT):
docker run -it --volume $PWD/orionSetup/orion1:/opt/orion/data --entrypoint "/bin/sh" pegasyseng/orion:latest -c 'cd /opt/orion/data && cat orion1.password | /opt/orion/bin/orion --generatekeys nodeKey' docker run -it --volume $PWD/orionSetup/orion2:/opt/orion/data --entrypoint "/bin/sh" pegasyseng/orion:latest -c 'cd /opt/orion/data && cat orion2.password | /opt/orion/bin/orion --generatekeys nodeKey' sudo chown -R $USER:$USER ./orionSetup

mohjam2004 (Mon, 24 May 2021 11:54:31 GMT):
docker run -it --volume $PWD/orionSetup/orion1:/opt/orion/data --entrypoint "/bin/sh" pegasyseng/orion:latest -c 'cd /opt/orion/data && cat orion1.password | /opt/orion/bin/orion --generatekeys nodeKey' docker run -it --volume $PWD/orionSetup/orion2:/opt/orion/data --entrypoint "/bin/sh" pegasyseng/orion:latest -c 'cd /opt/orion/data && cat orion2.password | /opt/orion/bin/orion --generatekeys nodeKey'

VijayMichalik (Mon, 24 May 2021 11:56:10 GMT):
Hey @mohjam2004 I added this issue here: https://github.com/ConsenSys/quorum-kubernetes/issues/80

VijayMichalik (Mon, 24 May 2021 11:56:33 GMT):
thanks for flagging!

mohjam2004 (Mon, 24 May 2021 11:56:39 GMT):
and use the public and private key generated into secrets/orion(n)-key-secret.yaml and configmap/orion-configmap.yaml

VijayMichalik (Mon, 24 May 2021 11:58:27 GMT):
the pegasyseng orion dockerhub repo references have been deprecated as of 12/2020, it can now be found at consensys/quorum-orion

mohjam2004 (Mon, 24 May 2021 12:00:33 GMT):
I should not use pegasyseng/orion?

mohjam2004 (Mon, 24 May 2021 12:00:57 GMT):
It works me and keys are generated

mohjam2004 (Mon, 24 May 2021 12:00:57 GMT):
It works for me and keys are generated

mohjam2004 (Mon, 24 May 2021 12:01:51 GMT):

Clipboard - May 24, 2021 4:31 PM

VijayMichalik (Mon, 24 May 2021 12:02:52 GMT):
please check the notices at the top of this page - you'll still be able to get older versions of Orion there but not the latest https://hub.docker.com/r/pegasyseng/orion

mohjam2004 (Mon, 24 May 2021 12:10:27 GMT):
Thanx, I had done another test. based on my 1st test I updated the issue.

mohjam2004 (Mon, 24 May 2021 12:19:51 GMT):

Clipboard - May 24, 2021 4:49 PM

mohjam2004 (Mon, 24 May 2021 12:19:55 GMT):
Is this correct in: https://github.com/ConsenSys/quorum-kubernetes/blob/master/kubectl/quorum-besu/ibft2-with-privacy/statefulsets/node2privacy-statefulset.yaml

mohjam2004 (Mon, 24 May 2021 12:20:46 GMT):
this is node2privacy-stateful but orion1-pubkey is written

VijayMichalik (Mon, 24 May 2021 13:54:44 GMT):
Hi @HiteshSharma, is it metamask you're seeing this currency symbol in? It may be that you need to discuss this with that team. Depending on your use case you may instead want to use an ERC20 token https://docs.openzeppelin.com/contracts/2.x/erc20

VijayMichalik (Mon, 24 May 2021 13:59:53 GMT):
It may be possible, but I would generally expect to need 2-4x more RAM than that depending on load - I would check out the Ethereum on ARM project who have been testing this. Unfortunately we do not have any standard tested minimum specs as this is not a common request. https://twitter.com/EthereumOnARM/status/1374646640242475013

VijayMichalik (Mon, 24 May 2021 14:00:47 GMT):
if you take your private transaction manager offline, the transaction can

VijayMichalik (Mon, 24 May 2021 14:00:54 GMT):
can't be executed

VijayMichalik (Mon, 24 May 2021 14:01:44 GMT):
currently there are no native features to allow synchronization of private state between two different groups

VijayMichalik (Mon, 24 May 2021 14:02:19 GMT):
this is something we're looking into but is a hard research problem

rampatra (Mon, 24 May 2021 14:08:11 GMT):
okay but still the nonce of the private marker transaction are executed serially. am i right? And, this nonce is the account nonce of the caller? In other words, if one account makes 2 different requests (private transactions) in 2 different privacy groups then these 2 requests would be executed one after the other and not in parallel. Am I right?

VijayMichalik (Mon, 24 May 2021 15:25:29 GMT):
let me check

VijayMichalik (Mon, 24 May 2021 15:32:18 GMT):
privacy group nonces are separate to the private marker transaction nonces. you have a separate account nonce for the private marker transaction and also each privacy group

rampatra (Mon, 24 May 2021 15:34:00 GMT):
yes, that I am aware of. I am concerned about the order of execution of privacy marker transaction nonces. More specifically this: > In other words, if one account makes 2 different requests (private transactions) in 2 different privacy groups then these 2 requests would be executed one after the other and not in parallel. Am I right?

VijayMichalik (Mon, 24 May 2021 15:41:42 GMT):
understood - will come back with an answer in a few hours

rampatra (Mon, 24 May 2021 15:44:16 GMT):
I think the answer is yes after reading the docs as the marker nonces are nothing but normal account nonces for public transactions. But it's good to be doubly sure. Maybe I am missed something.

VijayMichalik (Mon, 24 May 2021 15:54:00 GMT):
checking in on this - will hopefully have an answer this evening (the k8s example repo probably needs some updating)

jkcomment (Mon, 24 May 2021 16:53:23 GMT):
Has joined the channel.

lucassaldanha (Mon, 24 May 2021 20:49:41 GMT):
Just to clarify, a PMT is a regular public ethereum tx. The nonce for a PMT has to meet all criteria for a valid tx.

lucassaldanha (Mon, 24 May 2021 20:50:28 GMT):
And remember that the sender of a PMT is not necessarily the same sender of the Private TX associated with the PMT. So there is zero association between the two nonces.

lucassaldanha (Mon, 24 May 2021 20:52:43 GMT):
Interesting, in a 4 node network, all nodes should have 3 peers. Maybe the bootnode is counting itself? Have you tried admin_peers to see who is in the bootnode's peer list? https://besu.hyperledger.org/en/latest/Reference/API-Methods/#admin_peers

rampatra (Mon, 24 May 2021 21:16:40 GMT):
This is an interesting point. How can I guarantee that the sender of PMT is the sender of PT? In what cases are they different?

rampatra (Mon, 24 May 2021 21:17:55 GMT):
No, I mean an api or something.

lucassaldanha (Mon, 24 May 2021 21:20:09 GMT):
As I mentioned, the PMT is a regular Ethereum tx. The two "special" things about it is that its data will be used by Besu as a key to the private tx in Orion/Tessera, and that the 'to' address is the address of the privacy pre-compiled contract. If you want the same sender for the PMT and the Private TX, you can do it by creating the private tx and the PMT manually (see https://besu.hyperledger.org/en/latest/HowTo/Send-Transactions/Creating-Sending-Private-Transactions/#priv_distributerawtransaction)

lucassaldanha (Mon, 24 May 2021 21:21:25 GMT):
However, I would discourage use cases that rely on the same account sending the PMT and the private tx. The privacy group is a world state completely independent from the public world state. So the account "x" in the public world state is not the same account "x' in a privacy group.

lucassaldanha (Mon, 24 May 2021 21:22:16 GMT):
What I'm trying to say is that the PMT sender account doesn't matter for the logic inside the private group.

lucassaldanha (Mon, 24 May 2021 21:23:21 GMT):
In its "default" configuration, the PMTs are sent with a random account.

rampatra (Mon, 24 May 2021 21:24:06 GMT):
What I want is, the sender in one PG shouldnt use the same token (double spend) in another privacy group.

rampatra (Mon, 24 May 2021 21:24:49 GMT):
and, one way I was thinking to check this is via account nonce of PMT. This way I didnt have to do anything and leverage ethereum to do it for me

rampatra (Mon, 24 May 2021 21:24:49 GMT):
and, one way I was thinking to check this is via account nonce of PMT. This way I didnt have to do anything and leverage ethereum to do it for me.

lucassaldanha (Mon, 24 May 2021 21:25:31 GMT):
How would you use the nonce to check?

rampatra (Mon, 24 May 2021 21:27:06 GMT):
no, I won't do anything. ethereum doesnt execute a bigger nonce from the same account until all smaller nonces are executed. So, this means all requests from a single account are executed one after the other. So, no chance of double-spend. So, I was thinking to leverage this for my purpose.

joshuafernandes (Mon, 24 May 2021 21:27:24 GMT):
Hello @mohjam2004 , thats a typo and should be orion2. I've fixed that up now, so do a pull and should be good to go

lucassaldanha (Mon, 24 May 2021 21:27:42 GMT):
I'm sorry but I don't see how this would prevent double spending between privacy groups.

lucassaldanha (Mon, 24 May 2021 21:28:18 GMT):
But give it a shot and see how it goes

rampatra (Mon, 24 May 2021 21:31:27 GMT):
let me give an example, if sender A did a PT with nonce 1 and did another PT (in another group) with nonce 2 then these two requests will be executed one after the other (serially) right? Don't worry about state here. Assume the sender is maintaining the same state in both privacy group.

rampatra (Mon, 24 May 2021 21:31:27 GMT):
let me give an example, if sender A did a PT with PMT nonce 1 and did another PT (in another privacy group) with PMT nonce 2 then these two requests will be executed one after the other (serially) right? Don't worry about state here. Assume the sender is maintaining the same state in both privacy group.

lucassaldanha (Mon, 24 May 2021 21:33:16 GMT):
In this case, the sender is playing by the rules. What happens if they send PT with nonce 1 on group A, and PT with nonce 1 on group B? Only members of each group know what the nonce of the private tx is.

lucassaldanha (Mon, 24 May 2021 21:33:39 GMT):
There is no way of verifying it outside of the privacy group.

rampatra (Mon, 24 May 2021 21:34:26 GMT):
I am talking about the PMT nonce. Can they control the PMT nonce?

lucassaldanha (Mon, 24 May 2021 21:34:52 GMT):
They can.

lucassaldanha (Mon, 24 May 2021 21:36:00 GMT):
The sender can choose the nonce for the PMT, but they are subject to the nonce rules.

lucassaldanha (Mon, 24 May 2021 21:36:37 GMT):
If sender A sends two PMTs with the same nonce, whichever is processed second will be invalid.

rampatra (Mon, 24 May 2021 21:37:35 GMT):
okay, then that will solve my problem. Even if they change the PMT nonce and play dirty they wont be able to succeed.

rampatra (Mon, 24 May 2021 21:38:17 GMT):
So, only thing I need to take care is the sender of the PT should be the sender of the PMT.

rampatra (Mon, 24 May 2021 21:38:28 GMT):
Am I correct?

lucassaldanha (Mon, 24 May 2021 21:38:58 GMT):
To use the same sender for the PMT and the Private TX you can use https://besu.hyperledger.org/en/latest/HowTo/Send-Transactions/Creating-Sending-Private-Transactions/#priv_distributerawtransaction

rampatra (Mon, 24 May 2021 21:39:40 GMT):
I am using web3j fopr my requests, I need to check what are they using underneath.

lucassaldanha (Mon, 24 May 2021 21:40:23 GMT):
They'll be calling Besu APIs. So even if they don't have support for distribute private tx, it should be easy to extend it.

rampatra (Mon, 24 May 2021 21:41:14 GMT):
makes sense. Btw, do you agree with this: > okay, then that will solve my problem. Even if they change the PMT nonce and play dirty they wont be able to succeed. So, only thing I need to take care is the sender of the PT should be the sender of the PMT. Am I correct?

rampatra (Mon, 24 May 2021 21:41:14 GMT):
makes sense. Btw, do you agree with this: > okay, then that will solve my problem. Even if they change the PMT nonce and play dirty they wont be able to succeed. > So, only thing I need to take care is the sender of the PT should be the sender of the PMT. Am I correct?

rampatra (Mon, 24 May 2021 21:41:14 GMT):
makes sense. Btw, do you agree with this: > okay, then that will solve my problem. Even if they change the PMT nonce and play dirty they wont be able to succeed. > So, only thing I need to take care is the sender of the PT should be the sender of the PMT. > Am I correct?

lucassaldanha (Mon, 24 May 2021 21:41:43 GMT):
I can't agree because I don't see how this will solve the double spending problem between privacy groups :)

lucassaldanha (Mon, 24 May 2021 21:42:02 GMT):
But if you think it is possible you should try it

rampatra (Mon, 24 May 2021 21:42:18 GMT):
even after assuming the state is same?

lucassaldanha (Mon, 24 May 2021 21:42:30 GMT):
How do you know the state is the same?

rampatra (Mon, 24 May 2021 21:42:57 GMT):
okay, do you agree whether the requests would be executed one after the other and not both at the same time?

lucassaldanha (Mon, 24 May 2021 21:44:05 GMT):
For two PMTs with the same sender, if one has nonce 1 and the other nonce 2, they won't execute at the same time.

rampatra (Mon, 24 May 2021 21:48:11 GMT):
now that you're here :) I would like to ask another question to you. Can a participant (other than the sender) in a privacy group prevent a PT from happening?

lucassaldanha (Mon, 24 May 2021 21:50:19 GMT):
In a general sense no. However, if that private tx is calling a contract for example, the contract code might have rules that make the tx invalid (e.g. a require or assert)

lucassaldanha (Mon, 24 May 2021 21:51:02 GMT):
The transaction will happen, but it won't modify the contract state

lucassaldanha (Mon, 24 May 2021 21:52:19 GMT):
One option (and this is deep in the weeds of private tx processing) would be modifying the privacy precompile to deal with the private tx in a different way.

lucassaldanha (Mon, 24 May 2021 21:52:36 GMT):
But then all nodes in the network will need to run your custom Besu build.

rampatra (Mon, 24 May 2021 21:54:33 GMT):
ok. got you.

rampatra (Mon, 24 May 2021 21:54:58 GMT):
Thanks a mil for all the help so far. It's been invaluable.

lucassaldanha (Mon, 24 May 2021 21:55:34 GMT):
Good luck with your project!!

rampatra (Mon, 24 May 2021 22:21:07 GMT):
hey @lucassaldanha, sorry it's me again. Is there a way a private SC make state change in a public SC?

rampatra (Mon, 24 May 2021 22:21:07 GMT):
hey @lucassaldanha, sorry it's me again. Is there a way a private SC make a state change in a public SC? Or, can it only read from a public SC?

lucassaldanha (Mon, 24 May 2021 22:21:56 GMT):
Only read

rampatra (Mon, 24 May 2021 22:24:30 GMT):
No workarounds for this? 🤔 Will oracles be a good practice to use if I want SC in different PGs to access a common datastore?

lucassaldanha (Mon, 24 May 2021 22:25:48 GMT):
> No workarounds for this? No. Ultimately, it doesn't make sense to let a private tx (that not everyone will be able to see) affect the public state that is visible to everyone.

lucassaldanha (Mon, 24 May 2021 22:26:45 GMT):
> Will oracles be a good practice to use if I want SC in different PGs to access a common datastore? I'm not sure. I haven't seen this being done before.

rampatra (Mon, 24 May 2021 22:27:20 GMT):
our project is a bit different. we want certain transactions to be private but the fund pool is common.

jkcomment (Tue, 25 May 2021 00:44:41 GMT):
Hi, guys! How do you manage your nonce? Quorum and Geth use that account management feature, and I didn't need to manage nonce on the client side, but in case of Besu, I need to manage nonce by myself. I am using Besu to develop a system that has the ability to send tx continuously from one account, and I am having trouble with nonce management: even if I can get the nonce count of the pending tx from the tx pool and put the incremented value in the tx and send it, it does not necessarily mean that the previously sent Even if I can get the pending nonce count from the tx pool and put the incremented value in the tx, it doesn't necessarily mean that the tx sent before will arrive before the last tx sent. If you have a good solution or an example that might be helpful, please let me know. Translated with www.DeepL.com/Translator (free version)

jkcomment (Tue, 25 May 2021 00:46:33 GMT):
Hi, guys! How do you manage your nonce? Quorum and Geth use that account management feature, and I didn't need to manage nonce on the client side, but in case of Besu, I need to manage nonce by myself. I am using Besu to develop a system that has the ability to send tx continuously from one account, and I am having trouble with nonce management: even if I can get the nonce count of the pending tx from the tx pool and put the incremented value in the tx and send it, it does not necessarily mean that the previously sent Even if I can get the pending nonce count from the tx pool and put the incremented value in the tx, it doesn't necessarily mean that the tx sent before will arrive before the last tx sent. If you have a good solution or an example that might be helpful, please let me know.

JavierMarchetti (Tue, 25 May 2021 01:52:18 GMT):
Has joined the channel.

mohjam2004 (Tue, 25 May 2021 03:46:44 GMT):
hi @VijayMichalik @joshuafernandes another issue is that the ibftConfigFile.json in this path: https://github.com/ConsenSys/quorum-kubernetes/tree/master/kubectl/quorum-besu/ibft2-with-privacy/ibftSetup can not be used to generate keys for validators. It doesn't start with genesis and It has extradata.

mohjam2004 (Tue, 25 May 2021 04:08:43 GMT):

Clipboard - May 25, 2021 8:38 AM

mohjam2004 (Tue, 25 May 2021 04:08:48 GMT):
I have pulled the updated repository in this link: https://github.com/ConsenSys/quorum-kubernetes/tree/master/kubectl/quorum-besu/ibft2-with-privacy and deploy all resources with no changes in all yaml files. all workloads are up and running except node1-privacy and node2-privacy.

mohjam2004 (Tue, 25 May 2021 04:09:43 GMT):
this is the failed log in node1-privacy and node2-privacy: ANTLR Tool version 4.7.1 used for code generation does not match the current runtime version 4.8ANTLR Runtime version 4.7.1 used for parser compilation does not match the current runtime version 4.8ANTLR Tool version 4.7.1 used for code generation does not match the current runtime version 4.8ANTLR Runtime version 4.7.1 used for parser compilation does not match the current runtime version 4.8Not a free gas network. --privacy-marker-transaction-signing-key-file must be specified and must be a funded account. Private transactions cannot be signed by random (non-funded) accounts in paid gas networks

mohjam2004 (Tue, 25 May 2021 04:15:13 GMT):

Clipboard - May 25, 2021 8:44 AM

mohjam2004 (Tue, 25 May 2021 04:22:28 GMT):
and it doesn't have this part to generate validator keys: "blockchain": { "nodes": { "generate": true, "count": 4 }

joshuafernandes (Tue, 25 May 2021 07:50:06 GMT):
Hi @mohjam2004 this isn't an issue and is by design. The charts in quorum-kubernetes are to get users familiar with how things work. https://github.com/ConsenSys/quorum-kubernetes/tree/master/helmfile

joshuafernandes (Tue, 25 May 2021 07:50:06 GMT):
Hi @mohjam2004 this isn't an issue and is by design. The charts in quorum-kubernetes are to get users familiar with how things work. The helmfile setup in the repo will spin up everything including genesis creation and such https://github.com/ConsenSys/quorum-kubernetes/tree/master/helmfile

joshuafernandes (Tue, 25 May 2021 07:52:20 GMT):
When you are familiar with things in quorum-kubernetes we have an Azure ready repo that has dev and prod charts - both of which do things automatically as well as use Azure native services

joshuafernandes (Tue, 25 May 2021 07:52:20 GMT):
When you are familiar with things in quorum-kubernetes we have an Azure ready repo https://github.com/ConsenSys/quorum-azure that has dev and prod charts - both of which do things automatically as well as use Azure native services

mohjam2004 (Tue, 25 May 2021 08:00:00 GMT):
Thanx alot, can you help me on this error: https://chat.hyperledger.org/channel/besu?msg=ZvvPRsE2DDWqAjprK

mohjam2004 (Tue, 25 May 2021 08:10:46 GMT):
I have manage to deploy besu on kubernetes cluster with ibft2 consensus (kubectl part of this repo). Now I can't deploy ibft2-with-privacy

mohjam2004 (Tue, 25 May 2021 08:10:46 GMT):
I have managed to deploy besu on kubernetes cluster with ibft2 consensus (kubectl part of this repo). Now I can't deploy ibft2-with-privacy (kubectl resources)

VijayMichalik (Tue, 25 May 2021 08:21:12 GMT):
Hey @jkcomment, we recommend the use of EthSigner https://docs.ethsigner.consensys.net/en/stable/ for transaction signing, which includes nonce management

HiteshSharma (Tue, 25 May 2021 08:29:39 GMT):
Yes on metamask.

HiteshSharma (Tue, 25 May 2021 08:30:43 GMT):
So basically what I want is a name for my currency, just like Bitcoin has `BTC` and Ethereum hsa `ETH`.

VijayMichalik (Tue, 25 May 2021 08:32:24 GMT):
You have to fill in that detail when you are connecting to a new network with MetaMask or it defaults to ETH. Here is the FAQ https://metamask.zendesk.com/hc/en-us/articles/360043227612-How-to-add-custom-Network-RPC-and-or-Block-Explorer

alvaropicazo (Tue, 25 May 2021 08:34:29 GMT):
Has joined the channel.

mohjam2004 (Tue, 25 May 2021 09:41:37 GMT):
I have deployed ibft2-with-privacy based on helm chart and I have got the same error as when I use kubectl resources. I have these logs on node1and2-privacy: Setting logging level to INFO 2021-05-25 09:28:35.838+00:00 | main | INFO | AbstractAltBnPrecompiledContract | Using LibEthPairings native alt bn128 2021-05-25 09:28:36.050+00:00 | main | INFO | SECP256K1 | Using native secp256k1 2021-05-25 09:28:36.143+00:00 | main | INFO | Besu | Starting Besu version: besu/v21.1.6/linux-x86_64/oracle_openjdk-java-11 2021-05-25 09:28:38.249+00:00 | main | INFO | Besu | Static Nodes file = /data/static-nodes.json 2021-05-25 09:28:38.253+00:00 | main | INFO | StaticNodesParser | StaticNodes file /data/static-nodes.json does not exist, no static connections will be created. 2021-05-25 09:28:38.254+00:00 | main | INFO | Besu | Connecting to 0 static nodes. 2021-05-25 09:28:38.336+00:00 | main | INFO | Besu | Security Module: localfile 2021-05-25 09:28:38.470+00:00 | main | INFO | DatabaseMetadata | Lookup database metadata file in data directory: /data 2021-05-25 09:28:39.440+00:00 | main | INFO | RocksDBKeyValueStorageFactory | Existing database detected at /data. Version 1 2021-05-25 09:28:44.053+00:00 | main | INFO | KeyPairUtil | Loaded public key 0x62f13f45b78061c46841c44e90a1863033729ede420fbe22b2e184f791bdcb889362ca9a061b9d3c4a090ac29ee36eab7de835f5d11a3e252ce3e9152565b273 from /data/key ANTLR Tool version 4.7.1 used for code generation does not match the current runtime version 4.8ANTLR Runtime version 4.7.1 used for parser compilation does not match the current runtime version 4.8ANTLR Tool version 4.7.1 used for code generation does not match the current runtime version 4.8ANTLR Runtime version 4.7.1 used for parser compilation does not match the current runtime version 4.8Not a free gas network. --privacy-marker-transaction-signing-key-file must be specified and must be a funded account. Private transactions cannot be signed by random (non-funded) accounts in paid gas networks To display full help: besu [COMMAND] --help

mohjam2004 (Tue, 25 May 2021 09:47:38 GMT):

Clipboard - May 25, 2021 2:17 PM

mohjam2004 (Tue, 25 May 2021 12:50:12 GMT):
Hi in this repo: https://github.com/ConsenSys/quorum-kubernetes/tree/master/kubectl/quorum-besu/ibft2-with-privacy Node2Privacy is correct in read me.

mohjam2004 (Tue, 25 May 2021 12:50:23 GMT):

Clipboard - May 25, 2021 5:20 PM

HiteshSharma (Tue, 25 May 2021 13:39:15 GMT):
So, a coin name is not hard coded anywhere in a network. Its just a convention for some value used on a network. So you mention your network to the public and say that this is the name of the coin we use on this network. And you use your network id and chain id, to give it a specific name. And then you give a specific coin.

HiteshSharma (Tue, 25 May 2021 13:39:15 GMT):
So, a coin name is not hard coded anywhere in a network. Its just a convention for some value used on a network. So you mention your network to the public and say that this is the name of the coin we use on this network. And you use your network id and chain id, to give it a specific name. And then you give a specific coin name to it.

HiteshSharma (Tue, 25 May 2021 13:39:15 GMT):
So, a coin name is not hard coded anywhere in a network. Its just a convention for some value used on a network. So you mention your network to the public and say that this is the name of the coin we use on this network. And what you are actually doing is - you use your network id and chain id, to give it a specific name. And then you give a specific coin name to it.

HiteshSharma (Tue, 25 May 2021 13:40:42 GMT):
Then you contact some 3rd party service to show your coin to the public users with a specific symbol that you decide upon.

HiteshSharma (Tue, 25 May 2021 13:42:07 GMT):
Am I thinking correct?

HiteshSharma (Tue, 25 May 2021 13:46:17 GMT):
So, if I'm using Besu to create my own network and I've a explorer. I just need to mention my coin name, e.g. `DDR` on the explorer. Is that the correct approach?

EmcLab (Tue, 25 May 2021 18:16:39 GMT):
@lucassaldanha , Here is a log from the besu doc for setup a 4nodes private ibft2 private network. The peer count is 4. But the doc doesn't specify if the log is from boot node or non boot node.

EmcLab (Tue, 25 May 2021 18:16:41 GMT):
2020-12-21 07:22:17.883+10:00 | EthScheduler-Workers-0 | INFO | PersistBlockTask | Imported #1 / 0 tx / 0 om / 0 (0.0%) gas / (0xde088192f27ca376eea969cb7a4a1de445bd923fde0444194c88e630f7705584) in 0.010s. Peers: 4 2020-12-21 07:22:19.057+10:00 | pool-8-thread-1 | INFO | IbftRound | Importing block to chain. round=ConsensusRoundIdentifier{Sequence=2, Round=0}, hash=0x2ca2652fa79ae2b3b6aadcfb13d5d362ffd6207c3b5ae47971e04eb9d05deaa9 2020-12-21 07:22:21.044+10:00 | pool-8-thread-1 | INFO | IbftRound | Importing block to chain. round=ConsensusRoundIdentifier{Sequence=3, Round=0}, hash=0x5d9a06cd17127712cfae7d1c25f705f302e146f4b64a73de3c814e1b5a3f9a16 2020-12-21 07:22:23.049+10:00 | pool-8-thread-1 | INFO | IbftRound | Importing block to chain. round=ConsensusRoundIdentifier{Sequence=4, Round=0}, hash=0x843981375f4cb2bb0f33a09b647ac27da5df2c539d940d8344c907eede57829c 2020-12-21 07:22:25.060+10:00 | pool-8-thread-1 | INFO | IbftRound | Importing block to chain. round=ConsensusRoundIdentifier{Sequence=5, Round=0}, hash=0x82b2069961d9185f7857cad1123de72d715729e122441335db486ea436834d6e

EmcLab (Tue, 25 May 2021 18:17:22 GMT):
Here is the besu do link 2020-12-21 07:22:17.883+10:00 | EthScheduler-Workers-0 | INFO | PersistBlockTask | Imported #1 / 0 tx / 0 om / 0 (0.0%) gas / (0xde088192f27ca376eea969cb7a4a1de445bd923fde0444194c88e630f7705584) in 0.010s. Peers: 4 2020-12-21 07:22:19.057+10:00 | pool-8-thread-1 | INFO | IbftRound | Importing block to chain. round=ConsensusRoundIdentifier{Sequence=2, Round=0}, hash=0x2ca2652fa79ae2b3b6aadcfb13d5d362ffd6207c3b5ae47971e04eb9d05deaa9 2020-12-21 07:22:21.044+10:00 | pool-8-thread-1 | INFO | IbftRound | Importing block to chain. round=ConsensusRoundIdentifier{Sequence=3, Round=0}, hash=0x5d9a06cd17127712cfae7d1c25f705f302e146f4b64a73de3c814e1b5a3f9a16 2020-12-21 07:22:23.049+10:00 | pool-8-thread-1 | INFO | IbftRound | Importing block to chain. round=ConsensusRoundIdentifier{Sequence=4, Round=0}, hash=0x843981375f4cb2bb0f33a09b647ac27da5df2c539d940d8344c907eede57829c 2020-12-21 07:22:25.060+10:00 | pool-8-thread-1 | INFO | IbftRound | Importing block to chain. round=ConsensusRoundIdentifier{Sequence=5, Round=0}, hash=0x82b2069961d9185f7857cad1123de72d715729e122441335db486ea436834d6e

EmcLab (Tue, 25 May 2021 18:18:37 GMT):
https://besu.hyperledger.org/en/stable/Tutorials/Private-Network/Create-IBFT-Network/#10-confirm-the-private-network-is-working

EmcLab (Tue, 25 May 2021 19:14:41 GMT):
# curl -X POST --data '{"jsonrpc":"2.0","method":"admin_peers","params":[],"id":1}' http://127.0.0.1:8545 { "jsonrpc" : "2.0", "id" : 1, "result" : [ { "version" : "0x5", "name" : "besu/v21.1.5/linux-x86_64/openjdk-java-14", "caps" : [ "eth/62", "eth/63", "eth/64", "eth/65", "IBF/1" ], "network" : { "localAddress" : "127.0.0.1:30303", "remoteAddress" : "127.0.0.1:59574" }, "port" : "0x7662", "id" : "0x217f52722c6f5f2df98c68fe91295368e7806b44a6b2b1fb8b598d3b27e047ddfb6f1c62f3a9ac7df3205c52d6a4c21c08e13cd34d696d7a5832981056ed1b11", "protocols" : { "eth" : { "difficulty" : "0x2aa48", "head" : "0xaa6701c99dcfd3ccd90a2478d9d9a3a4d2e96560dac21f0f6627b7ac638c6f80", "version" : 65 } }, "enode" : "enode://217f52722c6f5f2df98c68fe91295368e7806b44a6b2b1fb8b598d3b27e047ddfb6f1c62f3a9ac7df3205c52d6a4c21c08e13cd34d696d7a5832981056ed1b11@127.0.0.1:30306?discport=0" }, { "version" : "0x5", "name" : "besu/v21.1.5/linux-x86_64/openjdk-java-14", "caps" : [ "eth/62", "eth/63", "eth/64", "eth/65", "IBF/1" ], "network" : { "localAddress" : "127.0.0.1:55536", "remoteAddress" : "127.0.0.1:30304" }, "port" : "0x7660", "id" : "0x95f74f8a85d1d2338968ca54b2587803ef8ff3d9695d0d14bf41c96c03123ba5555f108449aa6b77e19856ef46e311b521baf06872e9beff717468591e6bbe3e", "protocols" : { "eth" : { "difficulty" : "0x2aa48", "head" : "0xaa6701c99dcfd3ccd90a2478d9d9a3a4d2e96560dac21f0f6627b7ac638c6f80", "version" : 65 } }, "enode" : "enode://95f74f8a85d1d2338968ca54b2587803ef8ff3d9695d0d14bf41c96c03123ba5555f108449aa6b77e19856ef46e311b521baf06872e9beff717468591e6bbe3e@127.0.0.1:30304" }, { "version" : "0x5", "name" : "besu/v21.1.5/linux-x86_64/openjdk-java-14", "caps" : [ "eth/62", "eth/63", "eth/64", "eth/65", "IBF/1" ], "network" : { "localAddress" : "127.0.0.1:33408", "remoteAddress" : "127.0.0.1:30305" }, "port" : "0x7661", "id" : "0xc15fddf28d10ca21133b27c8aab5d92ffa39f40d52b0a022c4bdb0c640912085335d37099ed0f8052f65a63b8d0081fe4d375168f668c2293e15b99fd7d30226", "protocols" : { "eth" : { "difficulty" : "0x2aa48", "head" : "0xaa6701c99dcfd3ccd90a2478d9d9a3a4d2e96560dac21f0f6627b7ac638c6f80", "version" : 65 } }, "enode" : "enode://c15fddf28d10ca21133b27c8aab5d92ffa39f40d52b0a022c4bdb0c640912085335d37099ed0f8052f65a63b8d0081fe4d375168f668c2293e15b99fd7d30226@127.0.0.1:30305" } ]

Nithronium (Tue, 25 May 2021 21:58:36 GMT):
Hi, I'd like to ask a question related to Besu. On the /data/database directory there are files with ending .log, what are those? Simply logs of the console? Can I delete them?

shemnon (Tue, 25 May 2021 22:17:29 GMT):
Those are rocksdb files. IIRC that's the write-ahead-log. Don't delete them, RocksDB should delete them when they are merged in. Generally speaking deleting or editing anything in .../database could cause data corruption.

Nithronium (Tue, 25 May 2021 22:24:42 GMT):
Thanks a lot. I am trying to forecast the required storage data for running a node with 2s block interval in the long run.

Nithronium (Tue, 25 May 2021 22:26:55 GMT):
An empty block seems to be around 800bytes, lets call it 1KB to ease the calculations. That is roughly 16M blocks a year and 15GB storage. This is only assuming blocks are empty. Assuming a little network utilization, this could be around 25GB a year. However, currently I am at 1M blocks and already storage is around 2GB (which is double the amount I estimate by calculations)

Nithronium (Tue, 25 May 2021 22:27:05 GMT):
That's why I wondered if they were just scrap logs

EmcLab (Wed, 26 May 2021 00:51:20 GMT):
@lucassaldanha , only 3 peers listed, including boot node itself. The node4 which has port 30306 is not listed here.

macfarla (Wed, 26 May 2021 04:57:30 GMT):
Well spotted @mohjam2004 - would you like to file a PR to update it?

macfarla (Wed, 26 May 2021 05:03:36 GMT):
This is the problem here ``` Not a free gas network. --privacy-marker-transaction-signing-key-file must be specified and must be a funded account. Private transactions cannot be signed by random (non-funded) accounts in paid gas ```

macfarla (Wed, 26 May 2021 05:03:56 GMT):
Could it be that the `--privacy-marker-transaction-signing-key-file` does not exist?

mohjam2004 (Wed, 26 May 2021 05:08:07 GMT):
yes

macfarla (Wed, 26 May 2021 05:09:39 GMT):
:rocket:

mohjam2004 (Wed, 26 May 2021 05:11:11 GMT):
I don't know what should I write for this parameter (what value I must assign for this option): --privacy-marker-transaction-signing-key-file = ?

macfarla (Wed, 26 May 2021 05:14:10 GMT):
https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#privacy-marker-transaction-signing-key-file

macfarla (Wed, 26 May 2021 05:14:33 GMT):
You either need to specify a key file, or use zero gas for your network

macfarla (Wed, 26 May 2021 05:16:20 GMT):
https://besu.hyperledger.org/en/stable/HowTo/Use-Privacy/Sign-Privacy-Marker-Transactions/

mohjam2004 (Wed, 26 May 2021 05:16:52 GMT):
may I know why I didn't have error when I deployed ibft2 consensus? I had gas not zero value and my besu network deployed successfully.

mohjam2004 (Wed, 26 May 2021 05:16:52 GMT):
may I know why I didn't have this error when I deployed ibft2 consensus? I had gas not zero value and my besu network deployed successfully.

mohjam2004 (Wed, 26 May 2021 05:16:52 GMT):
may I know why I didn't have this error when I deployed ibft2 consensus? I had gas not zero value and my besu network deployed successfully. I have this problem with "ibft2-with-privacy"

macfarla (Wed, 26 May 2021 05:20:09 GMT):
This is only relevant when using privacy

mohjam2004 (Wed, 26 May 2021 05:20:25 GMT):
thanx alot

joshuafernandes (Wed, 26 May 2021 05:23:43 GMT):
On your current setup, give it the same path as your existing nodekey for the --privacy-marker-transaction-signing-key-file and you should be fine - that about right @StefanPingel ?

joshuafernandes (Wed, 26 May 2021 05:25:23 GMT):
Or optionally set the network to be free gas https://besu.hyperledger.org/en/latest/HowTo/Configure/FreeGas/

macfarla (Wed, 26 May 2021 05:28:05 GMT):
I don't think there's a way to do this unless it's built into the contract - eg an action requires so many votes for it to be committed

mohjam2004 (Wed, 26 May 2021 05:38:58 GMT):
Hi, Do you mean orion1.passwod and orion2.password files from nodekey?

mohjam2004 (Wed, 26 May 2021 05:45:57 GMT):
In your setup I should set --min-gas-price=0 in only nod1-privacy.yaml and node2-privacy.yaml?

mohjam2004 (Wed, 26 May 2021 05:46:59 GMT):
or I should set it on all statefulsets folder yaml files?

joshuafernandes (Wed, 26 May 2021 05:48:07 GMT):
Its the network ie all nodes

joshuafernandes (Wed, 26 May 2021 05:49:46 GMT):
or set ```--privacy-marker-transaction-signing-key=/opt/besu/data/key``` ie the same value as the `--nodekey` parameter

mohjam2004 (Wed, 26 May 2021 05:51:57 GMT):
this should be set on all yaml files in statefulsets? right? --privacy-marker-transaction-signing-key=/opt/besu/data/key

joshuafernandes (Wed, 26 May 2021 05:52:55 GMT):
https://besu.hyperledger.org/en/stable/HowTo/Use-Privacy/Sign-Privacy-Marker-Transactions/ the parameter requires a key. The orion.password files are passwords used to encrypt the privacy managers keypair files

joshuafernandes (Wed, 26 May 2021 05:58:43 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=hWG4MbnhZe8Qi4fiS) Nope, the privacy marker transaction key deals with privacy and is set on only the nodes that have an orion/tessera pair, ie you are intending to send private transactions fron node1privacy to node2privacy for example. The validators do not have a privacy transaction manager (orion/tessera) and do not need it. When you set the value, you need to provide it with a key - this can be the nodekey itself or something else you'd like to use to identify who signed the marker tx.

mohjam2004 (Wed, 26 May 2021 06:03:06 GMT):
thanx alot. I try them.

mohjam2004 (Wed, 26 May 2021 07:35:51 GMT):
hi @joshuafernandes great. it works now.

mohjam2004 (Wed, 26 May 2021 07:35:55 GMT):

Clipboard - May 26, 2021 12:05 PM

mohjam2004 (Wed, 26 May 2021 07:37:05 GMT):
this option is set in orion1-privacy and orion2-privacy: --privacy-marker-transaction-signing-key-file=/data/key

mohjam2004 (Wed, 26 May 2021 07:37:35 GMT):
now all deployments are up and running

mohjam2004 (Wed, 26 May 2021 07:38:29 GMT):
the correct path in our deployment is: /data/key

madelinemurray (Wed, 26 May 2021 08:30:48 GMT):
hi - are you referring to a specific tutorial?

HiteshSharma (Wed, 26 May 2021 08:59:46 GMT):
RPC calls are independent from the type of node. But in actually, the non-boot nodes are the one's for which the RPC is usually enabled. Eg. infura spawns a node for you that connects to the Ethereum chain. And then you use that infura node to read blockchain data.

Nithronium (Wed, 26 May 2021 09:49:28 GMT):
you can run non-boot nodes without http-rpc-api parameters

Nithronium (Wed, 26 May 2021 09:50:05 GMT):
bin/besu --data-path=data --genesis-file=genesis.json --bootnodes=enode://PATH@IP:PORT --p2p-port=30303

Nithronium (Wed, 26 May 2021 09:50:05 GMT):
`bin/besu --data-path=data --genesis-file=genesis.json --bootnodes=enode://PATH@IP:PORT --p2p-port=30303`

Nithronium (Wed, 26 May 2021 09:50:39 GMT):
Setting correct `bootnodes` parameter will run your second node, it will just be a node and won't reply to any HTTP calls.

Nithronium (Wed, 26 May 2021 09:51:39 GMT):
I generally use; `bin/besu --data-path=data --genesis-file=genesis.json --p2p-port=30303` on the first node, then run the command I shared above on secondary nodes. Only on one of them I enable the http-api so I can perform tasks.

joshuafernandes (Wed, 26 May 2021 12:05:18 GMT):
nice, happy for you to submit a PR with any updates. I do need to update the repo but haven't had the chance to yet

joshuafernandes (Wed, 26 May 2021 12:16:26 GMT):
Hi @EmcLab this can vary depending on conditions. So for example you may want to add/remove peers or make permissioning calls or the like you would do that on all nodes. Hitesh and Nithronium are right, it really depends on how you configure your nodes In a private network a common pattern with separation of concerns is bootnodes (for other nodes to join the network), validators (to just create blocks) and RPC nodes for API calls/transactions etc. All nodes will have the rpc options set, but the bootnodes and validators may be restricted to only trusted CIDR blocks.

shemnon (Wed, 26 May 2021 15:08:46 GMT):
Rocks DB has "write amplification" to speed up reads and writes, so it may store that 1kb several times. Level style DBs are mostly optimized for speed and not storage size, so they will leave junk around and periodically garbage collect it. If you put it in a graph you will see a nice sawtooth.

Nithronium (Wed, 26 May 2021 15:20:52 GMT):
Alright, thanks a lot for the information.

macfarla (Thu, 27 May 2021 01:38:26 GMT):
Check what's in the "data" field - not sure why you need to do `as string` there - it should be the data field as for a normal public tx. Also check if there is anything in Besu logs.

JavierMarchetti (Fri, 28 May 2021 02:22:36 GMT):
Anyone else having problems adding a node to the "node allow list" on an ibft2-with-permissioning network using: perm_addNodesToAllowlist API method? I'm trying to add a node but I'm receiving the following message: Unable to persist changes to allowlist configuration file. Changes reverted

JavierMarchetti (Fri, 28 May 2021 02:22:36 GMT):
Anyone else having problems adding a node to the "allow list" on an ibft2-with-permissioning network using: perm_addNodesToAllowlist API method? I'm trying to add a node but I'm receiving the following message: Unable to persist changes to allowlist configuration file. Changes reverted

JavierMarchetti (Fri, 28 May 2021 02:22:36 GMT):
Anyone else having problems adding a node to the "allow list" on an ibft2-with-permissioning network using: perm_addNodesToAllowlist API method? Example: I'm trying to add a node but I'm receiving the following message: Unable to persist changes to allowlist configuration file. Changes reverted

JavierMarchetti (Fri, 28 May 2021 02:22:36 GMT):
Anyone else having problems adding a node to the "allow list" on an ibft2-with-permissioning network using: perm_addNodesToAllowlist API method? Example: curl -X POST --data '{"jsonrpc":"2.0","method":"perm_addNodesToAllowlist","params":[["enode://7e4ef30e9ec683f26ad76ffca5b5148fa7a6575f4cfad4eb0f52f9c3d8335f4a9b6f9e66fcc73ef95ed7a2a52784d4f372e7750ac8ae0b544309a5b391a23dd7@127.0.0.1:30303"]], "id":1}' http://127.0.0.1:8545 I'm trying to add a node but I'm receiving the following message: Unable to persist changes to allowlist configuration file. Changes reverted

hugueitor (Fri, 28 May 2021 02:41:11 GMT):
Has joined the channel.

hugueitor (Fri, 28 May 2021 02:41:11 GMT):
Hi All, I'm new in besu development and I am trying to create a private network running on k8s. As first step I have to create configuration files so I am running: docker run --rm --volume $PWD/ibftSetup/:/opt/besu/data hyperledger/besu:latest operator generate-blockchain-config --config-file=/opt/besu/data/ibftConfigFile.json --to=/opt/besu/data/networkFiles --private-key-file-name=key as per indicated in: https://github.com/ConsenSys/quorum-kubernetes/tree/master/helm/quorum-besu/ibft2/besu Immediately I got this error (I am showing the whole output) 2021-05-28 02:23:07.763+00:00 | main | ERROR | GenerateBlockchainConfig | An error occurred while trying to generate network configuration. java.nio.file.AccessDeniedException: /opt/besu/data/networkFiles at java.base/sun.nio.fs.UnixException.translateToIOException(Unknown Source) at java.base/sun.nio.fs.UnixException.rethrowAsIOException(Unknown Source) at java.base/sun.nio.fs.UnixException.rethrowAsIOException(Unknown Source) at java.base/sun.nio.fs.UnixFileSystemProvider.createDirectory(Unknown Source) at java.base/java.nio.file.Files.createDirectory(Unknown Source) at org.hyperledger.besu.cli.subcommands.operator.GenerateBlockchainConfig.handleOutputDirectory(GenerateBlockchainConfig.java:319) at org.hyperledger.besu.cli.subcommands.operator.GenerateBlockchainConfig.generateBlockchainConfig(GenerateBlockchainConfig.java:139) at org.hyperledger.besu.cli.subcommands.operator.GenerateBlockchainConfig.run(GenerateBlockchainConfig.java:125) at picocli.CommandLine.executeUserObject(CommandLine.java:1939) at picocli.CommandLine.access$1300(CommandLine.java:145) at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2352) at picocli.CommandLine$RunLast.handle(CommandLine.java:2346) at picocli.CommandLine$RunLast.handle(CommandLine.java:2311) at picocli.CommandLine$AbstractParseResultHandler.handleParseResult(CommandLine.java:2172) at picocli.CommandLine.parseWithHandlers(CommandLine.java:2550) at org.hyperledger.besu.cli.util.ConfigOptionSearchAndRunHandler.handle(ConfigOptionSearchAndRunHandler.java:56) at org.hyperledger.besu.cli.util.ConfigOptionSearchAndRunHandler.handle(ConfigOptionSearchAndRunHandler.java:31) at picocli.CommandLine$AbstractParseResultHandler.handleParseResult(CommandLine.java:2172) at picocli.CommandLine.parseWithHandlers(CommandLine.java:2550) at org.hyperledger.besu.cli.BesuCommand.parse(BesuCommand.java:1344) at org.hyperledger.besu.cli.BesuCommand.parse(BesuCommand.java:1182) at org.hyperledger.besu.Besu.main(Besu.java:50) Does somebody have some idea of what is happening? Your help will be most than appreciated.

rampatra (Fri, 28 May 2021 10:36:18 GMT):
thanks for replying but I am not sure I completely understood you. How can participants in a privacy group vote? Any samples or reference you can point me to?

rampatra (Fri, 28 May 2021 10:36:33 GMT):
@macfarla

RobbeV 1 (Fri, 28 May 2021 10:46:56 GMT):
Hi Vijay, im writing a paper on besu. Ans im interested in all 3. Most importantly TPS, but also how the network is affected when there are more or less nodes. IBFT2 gets slowwer when nodes are added. Im curious how much this is really affecrted

shemnon (Fri, 28 May 2021 14:51:44 GMT):
Docker needs to be able to write to the host `$PWD/ibftSetup` - check your file permissions

macfarla (Sat, 29 May 2021 01:26:25 GMT):
there's no mechanism in privacy groups to vote, I meant it would need to be built into the logic of the smart contract. It would increase the complexity of your contracts so depends on your use case whether this is worth pursuing. https://docs.soliditylang.org/en/v0.4.24/solidity-by-example.html

hugueitor (Sat, 29 May 2021 02:05:47 GMT):
Hi, thanks for reply. Reading the logs is clear that is a permission issue. However, what happened is that I was running the command outside the directory structure of the chart. How I solved, I downloaded the chart and inside the directory I ran the commands.

EmcLab (Mon, 31 May 2021 00:20:57 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=hmzJRq5ZpmZd2AAmk) https://besu.hyperledger.org/en/stable/Tutorials/Private-Network/Create-IBFT-Network/#7-start-node-2

macfarla (Mon, 31 May 2021 06:15:18 GMT):
This signals a problem with reading/writing the allowlist file used by local (file-based) permissioning. Check file permissions.

VijayMichalik (Mon, 31 May 2021 09:57:56 GMT):
@joshuafernandes what would you recommend here?

VijayMichalik (Mon, 31 May 2021 10:01:14 GMT):
Hi all, just a note here for users of the EEA privacy capabilities in Besu: ConsenSys has merged all Orion functionality into Tessera, so Orion is being deprecated. We recommend the use of Tessera as a drop-in replacement private transaction manager in place of Orion. Tessera supports the same endpoints and functionality, nothing needs to be changed in your Besu deployment to migrate. ConsenSys will continue to support Orion users until 30th November 2021. You can find out more here: https://consensys.net/blog/quorum/tessera-the-privacy-manager-of-choice-for-consensys-quorum-networks/

VijayMichalik (Mon, 31 May 2021 10:01:14 GMT):
Hi all, just a note here for users of the EEA privacy capabilities in Besu: ConsenSys has merged all Orion functionality into Tessera, so Orion is being deprecated. We recommend the use of Tessera as a drop-in replacement private transaction manager in place of Orion. Tessera supports the same endpoints and functionality, nothing needs to be changed in your Besu deployment to migrate. ConsenSys will continue to support Orion users until 30th November 2021. You can find out more here: https://consensys.net/blog/quorum/tessera-the-privacy-manager-of-choice-for-consensys-quorum-networks/

parivesh (Mon, 31 May 2021 12:48:51 GMT):
Has joined the channel.

parivesh (Mon, 31 May 2021 12:48:51 GMT):
Hi, I have created 3 besu+orion nodes, I am able to do private transaction also but problem is that how to get all inserted records from ledger by each participated node. I am using web3-eea sendRawTransaction method to created private transaction for node1 and node2, so it's not visibel to node3 here is my code to insert record using contract insertrecord method const functionAbi = contract._jsonInterface.find(e => { return e.name === "insertrecord"; }); const functionArgs = web3.eth.abi .encodeParameters(functionAbi.inputs, [arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11]) .slice(2); const functionCall = { to: address, data: functionAbi.signature + functionArgs, privateFrom: orion.node1.publicKey, privateFor: [orion.node2.publicKey], privateKey: besu.node1.privateKey }; return web3.eea .sendRawTransaction(functionCall) .then(transactionHash => { console.log("Transaction Hash:", transactionHash); return web3.priv.getTransactionReceipt( transactionHash, orion.node1.publicKey ); }) .then(result => { console.log("Event Emitted:", result); return result; }); here is my code to retreive all inserted record using contract allrecords method ---------Problem how to get all inserted records , which method to call and I am transaction id to get transaction details, please tell me the method to get all the records or some sample const functionAbi = contract._jsonInterface.find(e => { return e.name === "allrecords"; }); const functionCall = { to: address, data: functionAbi.signature, privateFrom, privateFor, privateKey }; return web3.eea .sendRawTransaction(functionCall) .then(transactionHash => { return web3.priv.getTransactionReceipt( transactionHash, orion.node1.publicKey ); }) .then(result => { console.log(`Get Value from ${url}:`, result.output); console.log("" + url + " value from deployed contract is: " + Web3.utils.toAscii(result.output)); return result; });

parivesh (Mon, 31 May 2021 12:51:43 GMT):
Hi, I have created 3 besu+orion nodes, I am able to do private transaction also but problem is that how to get all inserted records from ledger by each participated node. I am using web3-eea sendRawTransaction method to created private transaction for node1 and node2, so it's not visibel to node3 here is my code to insert record using contract insertrecord method const functionAbi = contract._jsonInterface.find(e => { return e.name === "insertrecord"; }); const functionArgs = web3.eth.abi .encodeParameters(functionAbi.inputs, [arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11]) .slice(2); const functionCall = { to: address, data: functionAbi.signature + functionArgs, privateFrom: orion.node1.publicKey, privateFor: [orion.node2.publicKey], privateKey: besu.node1.privateKey }; return web3.eea .sendRawTransaction(functionCall) .then(transactionHash => { console.log("Transaction Hash:", transactionHash); return web3.priv.getTransactionReceipt( transactionHash, orion.node1.publicKey ); }) .then(result => { console.log("Event Emitted:", result); return result; }); here is my code to retreive all inserted record using contract allrecords method ---------Problem how to get all inserted records , which method to call and I am transaction id to get transaction details, please tell me the method to get all the records or some sample. If I checked in remix and call allrecords method, it returns all the records which is fine const functionAbi = contract._jsonInterface.find(e => { return e.name === "allrecords"; }); const functionCall = { to: address, data: functionAbi.signature, privateFrom, privateFor, privateKey }; return web3.eea .sendRawTransaction(functionCall) .then(transactionHash => { return web3.priv.getTransactionReceipt( transactionHash, orion.node1.publicKey ); }) .then(result => { console.log(`Get Value from ${url}:`, result.output); console.log("" + url + " value from deployed contract is: " + Web3.utils.toAscii(result.output)); return result; });

NicolasMassart (Mon, 31 May 2021 12:52:13 GMT):

macfarla (Mon, 31 May 2021 23:32:22 GMT):
You should be able to call the same method "allrecords" using web3-eea if that method exists on your smart contract. If it's a read-only method, priv_call works the same as eth_call but for private txs. That might be what you're looking for. https://besu.hyperledger.org/en/stable/Reference/API-Methods/#priv_call

MaxFlowO2 (Tue, 01 Jun 2021 04:43:32 GMT):
Has joined the channel.

MaxFlowO2 (Tue, 01 Jun 2021 04:49:56 GMT):
Hey, I'm writing a blockchain project as a homework assignment and was wondering if I could use besu as my transaction part of the chain. Kind of new to smart contracts, but noticed that EVM was lacking some functionality. Is there a github available?

atoulme (Tue, 01 Jun 2021 06:14:00 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=N2kmyZAiEdkcT2s9b) https://github.com/hyperledger/besu patches welcome!

HiteshSharma (Tue, 01 Jun 2021 12:50:10 GMT):
@VijayMichalik is that the right approach? Please confirm.

parivesh (Tue, 01 Jun 2021 13:21:28 GMT):
Thanks macfarla. It is working but always returns latest record. When I run same smart contract in remix. It returns all the records but here by using below code-const contract = new web3.eth.Contract(abi); // eslint-disable-next-line no-underscore-dangle const functionAbi = contract._jsonInterface.find(e => { return e.name === "allrecords"; }); const functionCall = { to: address, data: functionAbi.signature, privacyGroupId }; return web3.priv.call(functionCall).then(result => { console.log(Get Value from ${url}:, result); return result; });

parivesh (Tue, 01 Jun 2021 13:21:38 GMT):
it returns only the latest record and I want all the records

RayInnoblocktech (Wed, 02 Jun 2021 03:58:08 GMT):
Has joined the channel.

RayInnoblocktech (Wed, 02 Jun 2021 03:58:09 GMT):
test

raychan11111 (Wed, 02 Jun 2021 04:06:56 GMT):
Hi all, I have successfully deployed besu on kubernetes cluster. I would like to add a new validator by curl -X POST --data '{"jsonrpc":"2.0","method":"ibft_proposeValidatorVote","params":["0xFE3B557E8Fb62b89F4916B721be55cEb828dBd73", true], "id":1}' as stated in the besu document. But when i go inside one of the validator pod by kubectl exec -it. It doesn't have curl, and i can't do apk add curl or apt-get curl. I would like to know how to add a new validator with curl inside a kubernete pod?

raychan11111 (Wed, 02 Jun 2021 08:14:11 GMT):
Hi all, I have successfully deployed a besu network with 4 validators in kubernetes network. I would like to try out the add validator rpc function by curl -X POST --data '{"jsonrpc":"2.0","method":"ibft_proposeValidatorVote","params":["0xFE3B557E8Fb62b89F4916B721be55cEb828dBd73", true], "id":1}' http://jsonrpc.besu.svc.cluster.local:8545. Do I need to go inside every validator pod to execute the curl function?

VijayMichalik (Wed, 02 Jun 2021 08:58:29 GMT):
Yes

bradmcbrayer (Wed, 02 Jun 2021 10:56:23 GMT):
Finding peers to sync. Very frustrating. It seems the only way my system can find peers is for me to restart besu alternating with a static file and without. Besu will run for a few hours and stop syncing. So I will restart with 10 or so static nodes and it will find peers and sync for a few hours. Then I restart without the static nodes... How do I debug this?

mohjam2004 (Wed, 02 Jun 2021 11:20:48 GMT):
I have deployed a private besu network and run/migrate "pet shop" dapp on it. I also deployed block explorer and alethio ethstat for my besu network and through witch I could see the transaction on block explorer and alethio ethstat dashboard. Is there any dapp or scenario by which I can check the privacy on besu network?

HiteshSharma (Wed, 02 Jun 2021 11:27:09 GMT):
thanks for the confirmation.

HiteshSharma (Wed, 02 Jun 2021 11:51:05 GMT):
Majority of validators. Look here - https://besu.hyperledger.org/en/stable/HowTo/Configure/Consensus-Protocols/IBFT/#adding-and-removing-validators

HiteshSharma (Wed, 02 Jun 2021 11:51:05 GMT):
You have to do it with majority of validators. Look here - https://besu.hyperledger.org/en/stable/HowTo/Configure/Consensus-Protocols/IBFT/#adding-and-removing-validators

HiteshSharma (Wed, 02 Jun 2021 11:56:30 GMT):
I would like to change the minimum difficulty of `0x20000` set for the PoW network. My network is very small for now and doesn't have any external nodes, neither I'm allowing. For this reason, I was looking for a cost effective machine on AWS. But the problem is the difficulty . So from where can I change this difficulty in the source code?

HiteshSharma (Wed, 02 Jun 2021 11:58:29 GMT):
Secondly, for the same PoW network, I spawned a mining machine with 8 cores. But I saw that only 1 or 2 cores are being used for the computation. Why not all the cores are being used? And is there any way to do so?

shemnon (Wed, 02 Jun 2021 18:58:31 GMT):
Besu CPU mining is unfit for production use (this is the same for all eth clients). You should be using custom GPU mining software managed by Besu's stratum support. Because GPUs outclass CPUs for ethash no serious work has gone into making it multi-core efficient.

shemnon (Wed, 02 Jun 2021 19:00:20 GMT):
And unless you can dominate the hashrate for a particular asic (of which the whole of GPUs is one class of ASIC) I would not recommend PoW in any production setting.

HiteshSharma (Thu, 03 Jun 2021 08:22:19 GMT):
Oh! I got it. Can you suggest me some tutorials and what do you mean by - `managed by Besu's stratum support`. Do you mean a pool? And if it is, are all the miners in same pool?

HiteshSharma (Thu, 03 Jun 2021 08:22:19 GMT):
Oh! I got it. Can you explain what do you mean by - `custom GPU mining software managed by Besu's stratum support`. I don't wuite understood it. Do you mean a pool? And if it is, are all the miners in same pool? And please suggest some tutorials for help.

HiteshSharma (Thu, 03 Jun 2021 08:22:19 GMT):
Oh! I got it. Can you explain what do you mean by - `managed by Besu's stratum support`. I don't fully understand it. Do you mean a pool? And if it is, are all the miners in same pool? And please suggest some tutorials for help.

HiteshSharma (Thu, 03 Jun 2021 08:22:19 GMT):
Oh! I got your point for this one. Can you explain what do you mean by - `managed by Besu's stratum support`. I don't fully understand it. Do you mean a pool? And if it is, are all the miners in same pool? And please suggest some tutorials for help.

HiteshSharma (Thu, 03 Jun 2021 08:22:19 GMT):
Oh! got your point for this one. Can you explain what do you mean by - `managed by Besu's stratum support`. I don't fully understand it. Do you mean a pool? And if it is, are all the miners in same pool? And please suggest some tutorials for help.

HiteshSharma (Thu, 03 Jun 2021 08:24:12 GMT):
And what about changing the minimum difficulty that is hard coded for PoW network? Is it possible to change it by any means?

shemnon (Thu, 03 Jun 2021 14:20:21 GMT):
https://besu.hyperledger.org/en/stable/HowTo/Configure/Configure-Mining/#configure-gpu-mining

jsjs77 (Fri, 04 Jun 2021 10:49:58 GMT):
Has joined the channel.

jsjs77 (Fri, 04 Jun 2021 10:49:58 GMT):
Hi. I'm sorry as I'm quite confused here. I have sort of successfully run the Hyperledger Besu in my Terminal (Mac - Big Sur) but there is this error comes up

jsjs77 (Fri, 04 Jun 2021 10:50:21 GMT):

Screenshot 2021-06-04 at 6.24.34 PM.png

jsjs77 (Fri, 04 Jun 2021 10:51:03 GMT):
If the above screenshot has no effect, then may I know what's next? I mean how to mined a newly created transaction?

jsjs77 (Fri, 04 Jun 2021 10:51:03 GMT):
If the above screenshot has no effect, then may I know what's next? I mean how to mined a newly created transaction? To be open in the localhost? Sorry, I need guidance. Understand that this is a Test but if everything works well, how can I change it to Mainnet?

HiteshSharma (Fri, 04 Jun 2021 11:35:52 GMT):
Does this mean that all the miners are in one pool only?

shemnon (Fri, 04 Jun 2021 14:33:08 GMT):
Based on the logs CoDeFi and Orchestrate are sending the errors, possibly based on configuration mismatches. The ConsenSys discord should have better insight: https://discord.gg/hYpHRjK

shemnon (Fri, 04 Jun 2021 14:34:41 GMT):
Each besu node would run basically one pool. So each new besu node generates it's own proposed block. There's no payout management, just block production.

gortaire (Fri, 04 Jun 2021 20:18:18 GMT):
Hi all, do any of you know any pattern or solution to schedule execution of smart contracts tasks in a private besu network???

jsjs77 (Sat, 05 Jun 2021 06:56:17 GMT):
@shemnon Thanks

Shritesh99 (Sat, 05 Jun 2021 19:56:52 GMT):
Has joined the channel.

bradmcbrayer (Sun, 06 Jun 2021 16:13:51 GMT):
I am thinking that besu is unfit as a client period. Giving up trying to find why Besu stops syncing after a few hours. Existing solution of swapping out a static node file on alternating reboots is a waste of time. Was hoping to find an alternative to geth to promote decentralizing clients.

bradmcbrayer (Sun, 06 Jun 2021 16:13:51 GMT):

SuzanaMaranhao (Mon, 07 Jun 2021 19:12:39 GMT):
When using IBFT2, does Besu generate fixe-length blocks (without considering the number of transactions in it) or a variable one (like PoW)?

SuzanaMaranhao (Mon, 07 Jun 2021 19:12:39 GMT):
When using IBFT2, does Besu generate fixed-length blocks (without considering the number of transactions in it) or a variable one (like PoW)?

shemnon (Tue, 08 Jun 2021 00:20:08 GMT):
Fixed duration blocks typically. All available transactions, subject to block gas limit, are typically included.

raychan11111 (Tue, 08 Jun 2021 02:36:37 GMT):
Hi all, is there any documents about how to upgrade the besu node in kubernetes?

raychan11111 (Tue, 08 Jun 2021 02:36:37 GMT):
Hi all, is there any documents about how to upgrade the private besu node in kubernetes?

raychan11111 (Tue, 08 Jun 2021 02:36:37 GMT):
Hi all, is there any documents about how to upgrade a private besu node (docker image) in kubernetes without losing the blockchain data?

antonydenyer (Tue, 08 Jun 2021 08:06:56 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=qCcv6pxB9h8zTksWZ) Assuming your talking about a private network with multiple participants and enclaves. The node upgrade should 'just work' - but treat it like a db upgrade, take a backup of your volumes etc. As far as the data on the blockchain it shouldn't be an issue it will re-propagate from other nodes. The thing you need to be concerned about is data in orion/tessera data that will not be re-propagated. So definitely take a back up of your enclave data before you upgrade your node. If the node re-syncs then the data must be in your enclave before hand (technically before your node processes that block).

antonydenyer (Tue, 08 Jun 2021 08:06:56 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=qCcv6pxB9h8zTksWZ) Assuming you're talking about a private network with multiple participants and enclaves. The node upgrade should 'just work' - but treat it like a db upgrade, take a backup of your volumes etc. As far as the data on the blockchain it shouldn't be an issue it will re-propagate from other nodes. The thing you need to be concerned about is data in orion/tessera data that will not be re-propagated. So definitely take a back up of your enclave data before you upgrade your node. If the node re-syncs then the data must be in your enclave beforehand (technically before your node processes that block).

antonydenyer (Tue, 08 Jun 2021 08:06:56 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=qCcv6pxB9h8zTksWZ) Assuming you're talking about a private network with multiple participants and enclaves. The node upgrade should 'just work' - but treat it like a db upgrade, take a backup of your volumes etc. As far as the data on the blockchain it shouldn't be an issue it will re-propagate from other nodes. The thing you need to be concerned about is data in your orion/tessera enclave that will not be re-propagated. So definitely take a back up of your enclave data before you upgrade your node. If the node re-syncs then the data must be in your enclave beforehand (technically before your node processes that block).

VijayMichalik (Tue, 08 Jun 2021 10:21:04 GMT):
Hi @bradmcbrayer, I'm sorry you're having a bad experience trying out Besu. Can you share your logs or the errors that are coming up? There are a bunch of mainnet nodes running Besu and are constantly testing against mainnet so I'm confident we can help solve your problem with a bit more guidance on what's going wrong!

VijayMichalik (Tue, 08 Jun 2021 10:21:04 GMT):
Hi @bradmcbrayer, I'm sorry you're having a bad experience trying out Besu. Can you share your logs or the errors that are coming up? There are a bunch of mainnet nodes running Besu and we are constantly testing against mainnet so I'm confident we can help solve your problem with a bit more guidance on what's going wrong!

VijayMichalik (Tue, 08 Jun 2021 10:21:49 GMT):
If you can share your config that would also be great

mohjam2004 (Tue, 08 Jun 2021 11:19:59 GMT):
I have deployed a besu private network (ibft2 with privacy) based on this doc: https://github.com/ConsenSys/quorum-kubernetes/tree/master/kubectl/quorum-besu/ibft2-with-privacy Is there any dapp that I can investigate privacy in this deployed network? or how can I customize "pet shop dapp" to investigate privacy in my deployed network? As my previous investigation, I have deployed a private besu network (ibft2) base on this: https://github.com/ConsenSys/quorum-kubernetes/tree/master/kubectl/quorum-besu/ibft2 and I had deployed "pet shop dapp" through changing truffle-config.js and setting host, port and networkid of my besu node and through which I can buy pets and watch transaction in block explorer.

mohjam2004 (Tue, 08 Jun 2021 11:26:33 GMT):
is this correct that I set json-rpc address and port of my besu-node1privacy in truffle-config.js of pet shop dapp and buy pets to watch transactions in block explorer?

mohjam2004 (Tue, 08 Jun 2021 11:28:31 GMT):
based on this doc: https://github.com/ConsenSys/quorum-kubernetes/tree/master/kubectl/quorum-besu/ibft2 the number of besu nodes are changed through replica. and based on this doc: https://github.com/ConsenSys/quorum-kubernetes/tree/master/kubectl/quorum-besu/ibft2-with-privacy each besu-privacy node has different worklods

mohjam2004 (Tue, 08 Jun 2021 11:29:06 GMT):
I need help in this scenario how can I investigate privacy?

mohjam2004 (Tue, 08 Jun 2021 11:29:06 GMT):
in this scenario, I need help to know how I can investigate privacy?

mohjam2004 (Tue, 08 Jun 2021 11:29:06 GMT):
in this scenario(ibft2 with privacy), I need help to know how I can investigate privacy?

bradmcbrayer (Tue, 08 Jun 2021 11:52:05 GMT):
Hello Vijay. Thank you for looking into my problem. Using Besu-21.1.7. My config is: # node name identity="tinyEth" # The path to the Besu data directory data-path="/media/brad/Ether/mainnet" # The predefined network configuration. The default is mainnet network="mainnet" # Enables or disables P2P discovery. The default is true discovery-enabled=true # when using static nodes disable discovery #discovery-enabled=false #Enables or disables automatic log bloom caching. APIs such as eth_getLogs and eth_getFilterLogs use the cache for improved performance. The default is true. #auto-log-bloom-caching-enabled=false #JSON-RPC is a remote procedure call protocol encoded in JSON. It is similar to the XML-RPC protocol, defining only a few data types and commands. JSON-RPC allows for notifications (data sent to the server that does not require a response) and for multiple calls to be sent to the server which may be answered asynchronously. #rpc-ws-host="127.0.0.1" rpc-http-host="127.0.0.1" rpc-http-port="8545" rpc-http-enabled=true rpc-http-api=["ETH", "NET", "WEB3"] #what is this.. conflict at 8545 and fails #rpc-ws-enabled=false #Listed domains can access the node using JSON-RPC. If your client interacts with Besu using a browser app (such as Remix or a block explorer), add the client domain to the list. #For testing and development purposes, use "all" or "*" to accept requests from any domain. We don’t recommend accepting requests from any domain for production environments. #rpc-http-cors-origins=["all"] #JSON-RPC service on 127.0.0.1 # Enables the GraphQL HTTP service. The default is false. #graphql-http-enabled=false # The synchronization mode. The options are FAST and FULL. sync-mode="FAST" #sync-mode="FULL" fast-sync-min-peers=1 # Network Address Translation (NAT) is the process where a network device, usually a firewall, assigns a public address to a computer (or group of computers) inside a private network. # UPnP support is often disabled by default in networking firmware. If disabled by default, explicitly enable UPnP support. nat-method="UPnP" #nat-method="NONE" #nat-method="AUTO" # To enable communication you must expose Hyperledger Besu ports appropriately. # To enable peer discovery, the P2P UDP port must be open for inbound connections. Specify the P2P port using the --p2p-port option. The default is 30303 # p2p-enabled default is true # p2p-enabled=true #p2p-host default is 0.0.0.0 or all IP p2p-host="0.0.0.0" p2p-port="30303" #p2p-host="127.0.0.1" p2p-interface="0.0.0.0" #p2p-ports 30303 is default # The maximum number of P2P connections you can establish max-peers="40" # Enables pruning to reduce storage required for the world state. #pruning-enabled=false # Enables the metrics exporter. #metrics-enabled=false #metrics-enabled=true #metrics-host="0.0.0.0" #metrics-port=9545 # Use the --logging command line option to specify logging verbosity. The --logging option changes the volume of events displayed in the log. Valid log levels are OFF, FATAL, ERROR, WARN, INFO, DEBUG, TRACE, ALL. The default level is INFO. logging="DEBUG" #logging="info" #logging="TRACE" #privacy-public-key-file= "/media/brad/Ether/goerli/key" #host-allowlist=["*"] #LOG4J_CONFIGURATION_FILE=./debug.xml besu --network=goerli

bradmcbrayer (Tue, 08 Jun 2021 11:59:21 GMT):
No real error messages. Will sync for 60 to 120 minutes then stop finding peers. I will turn on a static node file with 20 nodes and reboot Besu. It will sync for 60 to 120 minutes then stop finding peers. I will turn off the static node file, reboot Besu and it will sync for 60 to 120 minutes. I current thought is my ISP is blocking some of my traffic after some time.

NicolasMassart (Tue, 08 Jun 2021 14:16:29 GMT):
Sync indeed involve some heavy trafic. Who is your ISP? Also make sure your modem/router that you use doesn't have any limits or spam prevention activated.

bradmcbrayer (Tue, 08 Jun 2021 16:42:24 GMT):
ATT Fiber. No enables on router filter but disabled as a test.

bradmcbrayer (Tue, 08 Jun 2021 17:46:10 GMT):
No change. Stopped in less than 45 min.

SuzanaMaranhao (Tue, 08 Jun 2021 21:11:16 GMT):
Thank you. So suppose each block has 2 seconds duration and the same gas limit. Will a block without transaction and a block full of transaction have the same size in bytes?

SuzanaMaranhao (Tue, 08 Jun 2021 21:12:03 GMT):
@shemnon

shemnon (Tue, 08 Jun 2021 21:53:05 GMT):
No, the full block will have more bytes.

macfarla (Tue, 08 Jun 2021 22:03:05 GMT):
Could it be the way you're logging result.output - if your function returns an array you will need to iterate through the results

bradmcbrayer (Wed, 09 Jun 2021 10:39:21 GMT):
Device service description failed: (RemoteDevice) Identity: (RemoteDeviceIdentity)

bradmcbrayer (Wed, 09 Jun 2021 10:52:14 GMT):
2021-06-09 06:50:49.538-04:00 | main | WARN | NatService | Unable to query NAT external IP address. Using the fallback value : 0.0.0.0

VijayMichalik (Wed, 09 Jun 2021 10:55:35 GMT):
Hi Brad, thanks for the updates, we’re looking into this

bradmcbrayer (Wed, 09 Jun 2021 10:56:15 GMT):
thank you!

bradmcbrayer (Wed, 09 Jun 2021 11:06:02 GMT):
2021-06-09 07:04:04.936-04:00 | nioEventLoopGroup-3-2 | WARN | ChannelInitializer | Failed to initialize a channel. Closing: [id: 0xe44bbb69]

matkt (Wed, 09 Jun 2021 11:25:56 GMT):
Hi could you try to start with debug (logging="DEBUG") . and tell me if you have more log (e.g. a log starting with that ' Caught exception while trying to query NAT external IP address`

bradmcbrayer (Wed, 09 Jun 2021 11:52:04 GMT):
ok

bradmcbrayer (Wed, 09 Jun 2021 11:59:47 GMT):
yep: 2021-06-09 07:58:06.873-04:00 | main | DEBUG | NatService | Caught exception while trying to query NAT external IP address (ignoring)

matkt (Wed, 09 Jun 2021 12:34:20 GMT):
do you have have a stacktrace close to this message ?

bradmcbrayer (Wed, 09 Jun 2021 12:55:59 GMT):
will have to restart

NicolasMassart (Wed, 09 Jun 2021 12:59:28 GMT):
The symptoms make me think that perhaps uPNP is not activated on your router and you are using NAT mode auto (default NAT method, see https://besu.hyperledger.org/en/stable/HowTo/Find-and-Connect/Specifying-NAT/#auto) but port is not forwarded on the inbound routing so your node P2P port can't be reached from the outside. Then other peers probably reject the connection after some time because they can’t join the node directly and the advertised ip in the enode is not the right one (P2P host defaults to localhost if NAT fails or host not configured: https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#p2p-host). Just my 2c but checking this could help to eliminate NAT misconfiguration as a cause.

bradmcbrayer (Wed, 09 Jun 2021 13:00:22 GMT):
don't see a stacktrace. here is the debug line prior to Unable to query NAT

bradmcbrayer (Wed, 09 Jun 2021 13:00:25 GMT):
2021-06-09 08:58:20.064-04:00 | main | DEBUG | NatService | Caught exception while trying to query NAT external IP address (ignoring) java.util.concurrent.TimeoutException at java.base/java.util.concurrent.CompletableFuture.timedGet(CompletableFuture.java:1886) at java.base/java.util.concurrent.CompletableFuture.get(CompletableFuture.java:2021) at org.hyperledger.besu.nat.NatService.queryExternalIPAddress(NatService.java:143) at org.hyperledger.besu.ethereum.p2p.discovery.PeerDiscoveryAgent.start(PeerDiscoveryAgent.java:156) at org.hyperledger.besu.ethereum.p2p.network.DefaultP2PNetwork.start(DefaultP2PNetwork.java:233) at org.hyperledger.besu.ethereum.p2p.network.NetworkRunner.start(NetworkRunner.java:80) at org.hyperledger.besu.Runner.start(Runner.java:111) at org.hyperledger.besu.cli.BesuCommand.synchronize(BesuCommand.java:2314) at org.hyperledger.besu.cli.BesuCommand.startSynchronization(BesuCommand.java:1353) at org.hyperledger.besu.cli.BesuCommand.run(BesuCommand.java:1201) at picocli.CommandLine.executeUserObject(CommandLine.java:1939) at picocli.CommandLine.access$1300(CommandLine.java:145) at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2352) at picocli.CommandLine$RunLast.handle(CommandLine.java:2346) at picocli.CommandLine$RunLast.handle(CommandLine.java:2311) at picocli.CommandLine$AbstractParseResultHandler.handleParseResult(CommandLine.java:2172) at picocli.CommandLine.parseWithHandlers(CommandLine.java:2550) at org.hyperledger.besu.cli.util.ConfigOptionSearchAndRunHandler.handle(ConfigOptionSearchAndRunHandler.java:56) at org.hyperledger.besu.cli.util.ConfigOptionSearchAndRunHandler.handle(ConfigOptionSearchAndRunHandler.java:31) at picocli.CommandLine$AbstractParseResultHandler.handleParseResult(CommandLine.java:2172) at picocli.CommandLine.parseWithHandlers(CommandLine.java:2550) at org.hyperledger.besu.cli.BesuCommand.parse(BesuCommand.java:1344) at org.hyperledger.besu.cli.BesuCommand.parse(BesuCommand.java:1182) at org.hyperledger.besu.Besu.main(Besu.java:50)

NicolasMassart (Wed, 09 Jun 2021 13:01:18 GMT):
Yes timeout goes in the same direction as my suggestion. Nat setup times out as no uPNP service is enabled on your network.

bradmcbrayer (Wed, 09 Jun 2021 13:02:26 GMT):
Nicolas in config I have uPNP selected. Here is a few lines from startup: 2021-06-09 08:57:18.673-04:00 | main | DEBUG | BesuPluginContextImpl | Plugin startup complete. 2021-06-09 08:57:18.693-04:00 | main | INFO | RunnerBuilder | Detecting NAT service. 2021-06-09 08:57:19.153-04:00 | main | INFO | Runner | Starting Ethereum main loop ... 2021-06-09 08:57:19.154-04:00 | main | INFO | UpnpNatManager | Starting UPnP Service 2021-06-09 08:57:19.154-04:00 | main | INFO | UpnpServiceImpl | Starting UPnP service...

NicolasMassart (Wed, 09 Jun 2021 13:03:14 GMT):
Yes but is uPNP activated on your router?

bradmcbrayer (Wed, 09 Jun 2021 13:04:09 GMT):
well... likely not. let me check.

bradmcbrayer (Wed, 09 Jun 2021 13:12:23 GMT):
well I do have TCP/UDP: 30303 in NAT/gaming. still looking

NicolasMassart (Wed, 09 Jun 2021 13:14:08 GMT):
In the logs, when starting Besu you should have a line with the enode address of your node. Could you send it to me as a DM?

bradmcbrayer (Wed, 09 Jun 2021 13:20:07 GMT):
2021-06-09 09:19:39.166-04:00 | main | INFO | DefaultP2PNetwork | Enode URL enode://42771978b6b65ee2c30c9c3b1fd4e7c650968b4a6e981a333e60f8c8bf574c3d7aed30359bcdc93aae0bb3bb50101c1b198c4601cf88259b52f7cbd837fecdf1@0.0.0.0:30303

NicolasMassart (Wed, 09 Jun 2021 13:20:34 GMT):
the 0.0.0.0 is the issue. It should be your external IP

bradmcbrayer (Wed, 09 Jun 2021 13:21:33 GMT):
oh ok. cool.

NicolasMassart (Wed, 09 Jun 2021 13:22:22 GMT):
Your setting in config shows `p2p-host="0.0.0.0"` Try not to configure it and let NAT find the right one as you have uPNP activated.

NicolasMassart (Wed, 09 Jun 2021 13:22:57 GMT):
Or if you know you external IP (the one visible to anyone on the internet), try to set this one manually.

NicolasMassart (Wed, 09 Jun 2021 13:23:13 GMT):
And then disable NAT (set to none)

bradmcbrayer (Wed, 09 Jun 2021 13:23:18 GMT):
will do! I have public IP.

bradmcbrayer (Wed, 09 Jun 2021 13:24:23 GMT):
ok wait. i can disable NAT. then change p2p-host = my IP?

NicolasMassart (Wed, 09 Jun 2021 13:24:33 GMT):
yes

bradmcbrayer (Wed, 09 Jun 2021 13:24:36 GMT):
k

bradmcbrayer (Wed, 09 Jun 2021 13:30:06 GMT):
still get: 2021-06-09 09:28:39.449-04:00 | main | WARN | NatService | Unable to query NAT external IP address. Using the fallback value :family_mmgb: MY.IP

bradmcbrayer (Wed, 09 Jun 2021 13:31:17 GMT):
oh I didn't disable NAT!

NicolasMassart (Wed, 09 Jun 2021 13:31:48 GMT):
Did you set `--nat-method=NONE`?

bradmcbrayer (Wed, 09 Jun 2021 13:36:35 GMT):
ok looking good so far. didn't see any NAT related messages. will run for a few hours and see. THANK you Nicolas. I am in Atlanta where are you?

NicolasMassart (Wed, 09 Jun 2021 13:36:55 GMT):
I'm in France :D

bradmcbrayer (Wed, 09 Jun 2021 13:37:44 GMT):
again thank you for helping me. really i have struggled with this off/on for weeks.

NicolasMassart (Wed, 09 Jun 2021 13:38:16 GMT):
I'm sorry you suffered on this. Hopefully it will end well. Let me know!

bradmcbrayer (Wed, 09 Jun 2021 13:40:16 GMT):
has been very flustrating but I am new to this and have learned a lot. will update you!

SuzanaMaranhao (Wed, 09 Jun 2021 17:22:44 GMT):
thank you

grace.hartley (Wed, 09 Jun 2021 18:34:41 GMT):
:besu: Hey everyone! We launched a *free *Hyperledger Besu Essentials Training Course. If you are new to Besu or want to brush up on your skills setting up a private network, this training will help you through getting started. https://training.linuxfoundation.org/training/hyperledger-besu-essentials-creating-a-private-blockchain-network-lfs176x/

SuzanaMaranhao (Wed, 09 Jun 2021 18:48:32 GMT):
Some time ago, I hear that Besu has a way to blacklist some smart contracts. Where can I find information about it?

SuzanaMaranhao (Wed, 09 Jun 2021 18:48:32 GMT):
Some time ago, I heard that Besu has a way to blacklist some smart contracts. Where can I find information about it?

SuzanaMaranhao (Wed, 09 Jun 2021 18:49:57 GMT):
Also, is there any kind of whitelist? I mean a way to have an approval before enable the creation of a smart contract?

SuzanaMaranhao (Wed, 09 Jun 2021 18:49:57 GMT):
Also, is there any kind of whitelist? I mean a way to have an approval before enabling the creation of a smart contract? (perhaps after having the code of the smart contract in order to determine the hash)

NicolasMassart (Wed, 09 Jun 2021 20:16:20 GMT):
Hi @bradmcbrayer, no news from you so I assume did not stop and the issue is solved. Can you confirm?

NicolasMassart (Wed, 09 Jun 2021 20:16:20 GMT):
Hi @bradmcbrayer, no news from you so I assume your node did not stop and the issue is solved. Can you confirm?

bradmcbrayer (Thu, 10 Jun 2021 00:46:16 GMT):
Nicolas I assumed you were asleep. You do get some sleep? No real improvement. I have rebooted Besu all day. Would work for 30 -60 minutes and stop. I would use a static node file one time and not the next. I am a few hours behind mainnet sync.

bradmcbrayer (Thu, 10 Jun 2021 00:46:42 GMT):
getting a lot of these: 2021-06-09 20:35:55.194-04:00 | vert.x-eventloop-thread-1 | DEBUG | VertxPeerDiscoveryAgent | Discarding invalid peer discovery packet: Failed decoding packet of type: PING

bradmcbrayer (Thu, 10 Jun 2021 00:48:53 GMT):
a lot of these: 2021-06-09 20:48:29.610-04:00 | nioEventLoopGroup-3-3 | DEBUG | ApiHandler | Received Wire PONG

bradmcbrayer (Thu, 10 Jun 2021 01:04:52 GMT):
I will let run all night and will not sync a block. In morning I will reboot without a static file and sync for 30 -60 minutes. Reboot with a static file and sync for 30 - 60 minutes... repeat all day. this is not what I had in mind for a production ready ethereum client.

macfarla (Thu, 10 Jun 2021 05:16:09 GMT):
You could alter the dapp to send private transactions instead of public transactions but it won't work by default because the method calls are different. I recommend starting with the web3js-eea examples https://besu.hyperledger.org/en/stable/Tutorials/Privacy/web3js-eea-Multinode-example/

rampatra (Thu, 10 Jun 2021 10:32:11 GMT):
I have been looking into this and I get the voting part, however, I am not able to find the info that explains how a node would get notified somehow that there has been a private transaction and it needs to vote. The web3j doc only shows how to create a privacy group and how to call a method in a private smart contract.

rampatra (Thu, 10 Jun 2021 10:32:11 GMT):
@macfarla I have been looking into this and I get the voting part, however, I am not able to find the info that explains how a node would get notified somehow that there has been a private transaction and it needs to vote. The web3j doc only shows how to create a privacy group and how to call a method in a private smart contract.

bradmcbrayer (Thu, 10 Jun 2021 10:49:52 GMT):
2021-06-10 06:48:45.571-04:00 | nioEventLoopGroup-3-4 | WARN | ChannelInitializer | Failed to initialize a channel. Closing: [id: 0xf4dae093] org.hyperledger.besu.plugin.services.securitymodule.SecurityModuleException: Unexpected error while calculating ECDH Key Agreement: Invalid point coordinates

rampatra (Thu, 10 Jun 2021 10:50:37 GMT):
Or, do I need to add a scheduler or something that would read all the proposals in the contract at regular intervals and vote & execute the ones that got the vote?

rampatra (Thu, 10 Jun 2021 12:26:42 GMT):
Another way would be to fire events but are events 100% reliable? What if a node misses an event or if an event isnt fired by besu? Does besu keep track of missed events and fires them again later?

chileanguy (Thu, 10 Jun 2021 14:51:05 GMT):
Has joined the channel.

chileanguy (Thu, 10 Jun 2021 14:51:06 GMT):
hey hi..would it be possible to intertwingle 3 installs of the besu sample to create a persistent network? if so.. is there somewhere i can understand how the config files work? cheers

chileanguy (Thu, 10 Jun 2021 14:51:06 GMT):
hey hi..would it be possible to intertwingle 3 installs of the besu sample on 3 different machines to create a persistent network? if so.. is there somewhere i can understand how the config files work? cheers

chileanguy (Thu, 10 Jun 2021 14:51:06 GMT):
hey hi..would it be possible to intertwingle 3 installs of the besu sample on 3 different machines to create a persistent network? if so.. is there somewhere i can understand how the config files work and have them pointing to each other? cheers

matkt (Fri, 11 Jun 2021 08:36:21 GMT):
Maybe this documentation can help you ? https://besu.hyperledger.org/en/stable/Tutorials/Examples/Privacy-Example/

matkt (Fri, 11 Jun 2021 08:36:21 GMT):
Maybe this documentation can help you ? https://besu.hyperledger.org/en/stable/Tutorials/Examples/Private-Network-Example/

matkt (Fri, 11 Jun 2021 08:36:21 GMT):
Maybe this documentation can help you ? https://besu.hyperledger.org/en/stable/Tutorials/Private-Network/Create-Private-Clique-Network/

NicolasMassart (Fri, 11 Jun 2021 08:41:07 GMT):
> You do get some sleep? Not enough, thanks for caring :sweat_smile:

NicolasMassart (Fri, 11 Jun 2021 08:43:14 GMT):
I don't really have more ideas on your issue to be very honest. I'm going to try to get more expert devs involved in this thread. There's clearly something specific to your setup here as we have mainnet nodes running for months, but I'm not really able to dig deeper here. Sorry.

matkt (Fri, 11 Jun 2021 08:52:14 GMT):
Could you provide us all the logs (hiding the data you consider sensitive : IP , enode)? This may allow us to investigate

matkt (Fri, 11 Jun 2021 10:00:15 GMT):
Do you have this kind of message in your logs AbstractRetryingPeerTask | Retrying after recoverable failure from peer task CompleteBlocksTask: Timeout after 5000 MILLISECONDS ?

matkt (Fri, 11 Jun 2021 10:00:15 GMT):
Do you have this kind of message in your logs AbstractRetryingPeerTask | Retrying after recoverable failure from peer task CompleteBlocksTask: Timeout after 5000 MILLISECONDS ? (only available in DEBUG)

matkt (Fri, 11 Jun 2021 10:11:40 GMT):
if you have this logs maybe you can try with this parameters `--Xsynchronizer-downloader-chain-segment-size=5 --Xsynchronizer-downloader-header-request-size=5` even if you don't have it can be interesting to test if it can help

matkt (Fri, 11 Jun 2021 10:11:40 GMT):
if you have this logs maybe you can try with this parameters `--Xsynchronizer-downloader-chain-segment-size=5 --Xsynchronizer-downloader-header-request-size=5` even if you don't have it can be interesting to test if you are still loosing peers with this flags

bradmcbrayer (Fri, 11 Jun 2021 11:43:58 GMT):
hello matkt. TY. Don't recall seeing above message. Glad to send logs of sync. I assume your interested when web3.eth.syncing = false. Its running now will wait until stops in another 20 min or so.

bradmcbrayer (Fri, 11 Jun 2021 12:07:30 GMT):
well on second thought. Lets let it run for a few hours. Last night it ran all night adding zero blocks.

matkt (Fri, 11 Jun 2021 12:12:35 GMT):
Why I ask this because one of the reasons that can cause the loss of peers is that you have timeouts (when you communicate with a peer) and the list of peers goes down to 0 after several timeouts . This may come from a connection issue. In general a good way to test if this is the problem is to increase the timeout or decrease the size of the data transmitted between peers "--Xsynchronizer-downloader-chain-segment-size = 1 -- Xsynchronizer-downloader-header-request-size=1". But if you don't have these messages this shouldn't be the reason

bradmcbrayer (Fri, 11 Jun 2021 12:37:55 GMT):
i understand. will look for these timeouts.

bradmcbrayer (Fri, 11 Jun 2021 12:43:49 GMT):
here is a bonding round timeout: 2021-06-11 08:42:48.370-04:00 | vert.x-eventloop-thread-1 | DEBUG | RecursivePeerRefreshState | Bonding round timed out 2021-06-11 08:42:48.370-04:00 | vert.x-eventloop-thread-1 | DEBUG | RecursivePeerRefreshState | Initiating neighbours round with 3 candidates from 570 tracked nodes 2021-06-11 08:42:48.399-04:00 | vert.x-eventloop-thread-1 | DEBUG | RecursivePeerRefreshState | Received neighbours packet with 12 neighbours 2021-06-11 08:42:48.460-04:00 | vert.x-eventloop-thread-1 | DEBUG | RecursivePeerRefreshState | Received neighbours packet with 12 neighbours 2021-06-11 08:42:48.487-04:00 | vert.x-eventloop-thread-1 | DEBUG | RecursivePeerRefreshState | Received neighbours packet with 12 neighbours 2021-06-11 08:42:48.487-04:00 | vert.x-eventloop-thread-1 | DEBUG | RecursivePeerRefreshState | Initiating bonding round with 7 candidates 2021-06-11 08:42:48.716-04:00 | nioEventLoopGroup-3-8 | DEBUG | HandshakeHandlerOutbound | Wrote initial crypto handshake message to /173.249.19.100:30303. 2021-06-11 08:42:48.832-04:00 | nioEventLoopGroup-3-8 | DEBUG | DeFramer | Peer disconnected before sending HELLO. Reason: 0x04 TOO_MANY_PEERS 2021-06-11 08:42:48.832-04:00 | nioEventLoopGroup-3-8 | DEBUG | RlpxAgent | Failed to connect to peer 0x396f982d84a858713c042b8c74d5f1627f4feccd509f70bc27bbd1cdd1bb0cbfb0540cf0411e3eaa06e1b7cd0c97347223a67749d7fe06a4e72d1cf844bf01dc: org.hyperledger.besu.ethereum.p2p.network.exceptions.PeerDisconnectedException: Peer disconnected for reason: 0x04 TOO_MANY_PEERS 2021-06-11 08:42:48.918-04:00 | nioEventLoopGroup-3-6 | DEBUG | HandshakeHandlerOutbound | Wrote initial crypto handshake message to /206.189.150.96:30303. 2021-06-11 08:42:49.152-04:00 | nioEventLoopGroup-3-9 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 08:42:49.265-04:00 | nioEventLoopGroup-3-9 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 08:42:49.886-04:00 | vert.x-eventloop-thread-5 | DEBUG | JsonRpcHttpService | Opened connection from 127.0.0.1:47440. Total of active connections: 1/80 2021-06-11 08:42:49.887-04:00 | vert.x-eventloop-thread-5 | DEBUG | B3PropagatorExtractorMultipleHeaders | Invalid TraceId in B3 header: null'. Returning INVALID span context. 2021-06-11 08:42:49.887-04:00 | vert.x-worker-thread-14 | DEBUG | JsonRpcHttpService | JSON-RPC request -> eth_syncing 2021-06-11 08:42:50.019-04:00 | nioEventLoopGroup-3-5 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 08:42:50.245-04:00 | nioEventLoopGroup-3-9 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 08:42:50.272-04:00 | nioEventLoopGroup-3-9 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 08:42:50.543-04:00 | vert.x-eventloop-thread-5 | DEBUG | JsonRpcHttpService | Opened connection from 127.0.0.1:47442. Total of active connections: 2/80 2021-06-11 08:42:50.543-04:00 | vert.x-eventloop-thread-5 | DEBUG | B3PropagatorExtractorMultipleHeaders | Invalid TraceId in B3 header: null'. Returning INVALID span context. 2021-06-11 08:42:50.544-04:00 | vert.x-worker-thread-2 | DEBUG | JsonRpcHttpService | JSON-RPC request -> net_version 2021-06-11 08:42:50.550-04:00 | vert.x-eventloop-thread-5 | DEBUG | JsonRpcHttpService | Connection closed from 127.0.0.1:47442. Total of active connections: 1/80 2021-06-11 08:42:50.550-04:00 | vert.x-eventloop-thread-5 | DEBUG | JsonRpcHttpService | Opened connection from 127.0.0.1:47444. Total of active connections: 2/80 2021-06-11 08:42:50.550-04:00 | vert.x-eventloop-thread-5 | DEBUG | B3PropagatorExtractorMultipleHeaders | Invalid TraceId in B3 header: null'. Returning INVALID span context. 2021-06-11 08:42:50.550-04:00 | vert.x-worker-thread-10 | DEBUG | JsonRpcHttpService | JSON-RPC request -> net_version 2021-06-11 08:42:50.551-04:00 | vert.x-eventloop-thread-5 | DEBUG | JsonRpcHttpService | Connection closed from 127.0.0.1:47444. Total of active connections: 1/80 2021-06-11 08:42:50.716-04:00 | nioEventLoopGroup-3-9 | DEBUG | HandshakeHandlerOutbound | Wrote initial crypto handshake message to /116.202.51.160:30311. 2021-06-11 08:42:50.828-04:00 | nioEventLoopGroup-3-9 | DEBUG | DeFramer | Peer disconnected before sending HELLO. Reason: 0x04 TOO_MANY_PEERS 2021-06-11 08:42:50.828-04:00 | nioEventLoopGroup-3-9 | DEBUG | RlpxAgent | Failed to connect to peer 0x7682572e8995abf6573b6b8f4de2e91c7641d748484b00c4cda078a078c5b4ddd6279242ce6cf31781e93e6ad06e38bdf038689a08644eaa29021d17e5d5e17f: org.hyperledger.besu.ethereum.p2p.network.exceptions.PeerDisconnectedException: Peer disconnected for reason: 0x04 TOO_MANY_PEERS 2021-06-11 08:42:50.955-04:00 | nioEventLoopGroup-3-10 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 08:42:51.266-04:00 | ni

bradmcbrayer (Fri, 11 Jun 2021 12:46:08 GMT):
Neighbours round time out: 2021-06-11 08:42:58.490-04:00 | vert.x-eventloop-thread-1 | DEBUG | RecursivePeerRefreshState | Neighbours round timed out 2021-06-11 08:42:58.490-04:00 | vert.x-eventloop-thread-1 | DEBUG | RecursivePeerRefreshState | Initiating bonding round with 3 candidates 2021-06-11 08:42:58.515-04:00 | nioEventLoopGroup-3-4 | DEBUG | DeFramer | Received HELLO message: PeerInfo{version=5, clientId='Geth/v1.0.0-stable-db755430/linux-amd64/go1.15.1', capabilities=[eth/63, eth/64, eth/65], port=0, nodeId=0x443b227bcde9623fe9fd0de5ec04651f9cc9129e069b12fc137968c81537ad9befbeceae142d374efa9f696be7c90c175b4f630681447d23b0da67d4baf0648d} 2021-06-11 08:42:58.515-04:00 | nioEventLoopGroup-3-4 | DEBUG | RlpxAgent | Outbound connection established to peer: 0x443b227bcde9623fe9fd0de5ec04651f9cc9129e069b12fc137968c81537ad9befbeceae142d374efa9f696be7c90c175b4f630681447d23b0da67d4baf0648d 2021-06-11 08:42:58.515-04:00 | nioEventLoopGroup-3-4 | DEBUG | EthProtocolManager | Sending status message to Peer 0x443b227bcde9623fe9.... 2021-06-11 08:42:58.688-04:00 | nioEventLoopGroup-3-4 | DEBUG | EthProtocolManager | Peer 0x443b227bcde9623fe9... has mismatched network id: 128 2021-06-11 08:42:58.688-04:00 | nioEventLoopGroup-3-4 | DEBUG | EthProtocolManager | Disconnect - Outbound - 0x10 SUBPROTOCOL_TRIGGERED - PeerInfo{version=5, clientId='Geth/v1.0.0-stable-db755430/linux-amd64/go1.15.1', capabilities=[eth/63, eth/64, eth/65], port=0, nodeId=0x443b227bcde9623fe9fd0de5ec04651f9cc9129e069b12fc137968c81537ad9befbeceae142d374efa9f696be7c90c175b4f630681447d23b0da67d4baf0648d} - 22 peers left 2021-06-11 08:42:59.268-04:00 | nioEventLoopGroup-3-9 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 08:43:00.268-04:00 | nioEventLoopGroup-3-9 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 08:43:00.736-04:00 | nioEventLoopGroup-3-5 | DEBUG | HandshakeHandlerOutbound | Wrote initial crypto handshake message to /159.100.246.191:30303. 2021-06-11 08:43:00.870-04:00 | nioEventLoopGroup-3-5 | DEBUG | DeFramer | Peer disconnected before sending HELLO. Reason: 0x04 TOO_MANY_PEERS 2021-06-11 08:43:00.870-04:00 | nioEventLoopGroup-3-5 | DEBUG | RlpxAgent | Failed to connect to peer 0x47523b8907c70997f1e5eaa210729ab86b4f0bea5cfe97c4cef3c58038f358a5a81d43bea7a8fcc11bd7914c7915bbcc23a421800e4e9f16be38c8a91394c4bb: org.hyperledger.besu.ethereum.p2p.network.exceptions.PeerDisconnectedException: Peer disconnected for reason: 0x04 TOO_MANY_PEERS 2021-06-11 08:43:00.896-04:00 | nioEventLoopGroup-3-6 | DEBUG | HandshakeHandlerOutbound | Wrote initial crypto handshake message to /211.75.159.144:30311. 2021-06-11 08:43:01.096-04:00 | nioEventLoopGroup-3-6 | DEBUG | DeFramer | Received HELLO message: PeerInfo{version=5, clientId='Geth/v1.9.12-stable-b6f1c8dc/linux-amd64/go1.13.8', capabilities=[eth/63, eth/64, eth/65], port=0, nodeId=0x88561c1ab5f107c356c77a6e4a6c76c04fdb9636da997b8857ff80a94f823e95be2b3f942389d948fb94818ad107da8d2062327d2e86b7d0c1a0c78a8e29e0ad} 2021-06-11 08:43:01.096-04:00 | nioEventLoopGroup-3-6 | DEBUG | RlpxAgent | Outbound connection established to peer: 0x88561c1ab5f107c356c77a6e4a6c76c04fdb9636da997b8857ff80a94f823e95be2b3f942389d948fb94818ad107da8d2062327d2e86b7d0c1a0c78a8e29e0ad 2021-06-11 08:43:01.096-04:00 | nioEventLoopGroup-3-6 | DEBUG | EthProtocolManager | Sending status message to Peer 0x88561c1ab5f107c356.... 2021-06-11 08:43:01.268-04:00 | nioEventLoopGroup-3-9 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 08:43:01.305-04:00 | nioEventLoopGroup-3-6 | DEBUG | EthProtocolManager | Disconnect - Inbound - 0x10 SUBPROTOCOL_TRIGGERED - PeerInfo{version=5, clientId='Geth/v1.9.12-stable-b6f1c8dc/linux-amd64/go1.13.8', capabilities=[eth/63, eth/64, eth/65], port=0, nodeId=0x88561c1ab5f107c356c77a6e4a6c76c04fdb9636da997b8857ff80a94f823e95be2b3f942389d948fb94818ad107da8d2062327d2e86b7d0c1a0c78a8e29e0ad} - 22 peers left 2021-06-11 08:43:01.333-04:00 | nioEventLoopGroup-3-3 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 08:43:02.283-04:00 | nioEventLoopGroup-3-9 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 08:43:03.283-04:00 | nioEventLoopGroup-3-9 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 08:43:03.491-04:00 | vert.x-eventloop-thread-1 | DEBUG | RecursivePeerRefreshState | Bonding round timed out

matkt (Fri, 11 Jun 2021 12:51:56 GMT):
No it's not the timeout I'm looking for. let's wait and see if you have any other messages

bradmcbrayer (Fri, 11 Jun 2021 13:23:57 GMT):
k

bradmcbrayer (Fri, 11 Jun 2021 21:11:25 GMT):
Besu synced from 7:30 to 8:30am then no blocks all day. Here are a few logs:

bradmcbrayer (Fri, 11 Jun 2021 21:11:28 GMT):
2021-06-11 17:07:08.778-04:00 | EthScheduler-Services-2 (requestCompleteTask) | INFO | CompleteTaskStep | Downloaded 1400000 world state nodes. At least 13489142 nodes remaining. 2021-06-11 17:07:09.179-04:00 | nioEventLoopGroup-3-4 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:09.414-04:00 | nioEventLoopGroup-3-9 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:09.440-04:00 | nioEventLoopGroup-3-4 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:10.040-04:00 | nioEventLoopGroup-3-7 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:10.334-04:00 | nioEventLoopGroup-3-1 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:10.413-04:00 | nioEventLoopGroup-3-9 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:10.490-04:00 | nioEventLoopGroup-3-9 | DEBUG | WireKeepAlive | Idle connection detected, sending Wire PING to peer. 2021-06-11 17:07:10.492-04:00 | nioEventLoopGroup-3-9 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:10.660-04:00 | nioEventLoopGroup-3-9 | DEBUG | ApiHandler | Received Wire PONG 2021-06-11 17:07:11.243-04:00 | vert.x-eventloop-thread-1 | DEBUG | VertxPeerDiscoveryAgent | Discarding invalid peer discovery packet: Malformed packet of type: PING 2021-06-11 17:07:11.413-04:00 | nioEventLoopGroup-3-9 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:12.415-04:00 | nioEventLoopGroup-3-9 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:12.463-04:00 | nioEventLoopGroup-3-5 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:12.668-04:00 | nioEventLoopGroup-3-9 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:13.409-04:00 | nioEventLoopGroup-3-3 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:13.413-04:00 | nioEventLoopGroup-3-9 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:13.569-04:00 | nioEventLoopGroup-3-10 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:14.094-04:00 | nioEventLoopGroup-3-9 | DEBUG | WireKeepAlive | Idle connection detected, sending Wire PING to peer. 2021-06-11 17:07:14.103-04:00 | nioEventLoopGroup-3-8 | DEBUG | WireKeepAlive | Idle connection detected, sending Wire PING to peer. 2021-06-11 17:07:14.105-04:00 | nioEventLoopGroup-3-8 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:14.141-04:00 | nioEventLoopGroup-3-9 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:14.141-04:00 | nioEventLoopGroup-3-9 | DEBUG | ApiHandler | Received Wire PONG 2021-06-11 17:07:14.210-04:00 | nioEventLoopGroup-3-8 | DEBUG | ApiHandler | Received Wire PONG 2021-06-11 17:07:14.284-04:00 | nioEventLoopGroup-3-8 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:14.415-04:00 | nioEventLoopGroup-3-9 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:14.757-04:00 | nioEventLoopGroup-3-3 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:14.839-04:00 | ni

bradmcbrayer (Fri, 11 Jun 2021 21:12:08 GMT):
2021-06-11 17:07:24.180-04:00 | nioEventLoopGroup-3-4 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:24.284-04:00 | jupnp-2 | DEBUG | MulticastReceiver | UDP datagram received from: 192.168.1.66:38918 on local interface: eno1 and address: 192.168.1.239 2021-06-11 17:07:24.285-04:00 | jupnp-2 | DEBUG | Router | Received asynchronous message: (IncomingDatagramMessage) M-SEARCH 2021-06-11 17:07:24.285-04:00 | jupnp-2 | DEBUG | MulticastReceiver | UDP datagram received from: 192.168.1.66:33543 on local interface: eno1 and address: 192.168.1.239 2021-06-11 17:07:24.285-04:00 | jupnp-2 | DEBUG | Router | Received asynchronous message: (IncomingDatagramMessage) M-SEARCH 2021-06-11 17:07:24.423-04:00 | nioEventLoopGroup-3-9 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:24.444-04:00 | nioEventLoopGroup-3-4 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:25.063-04:00 | nioEventLoopGroup-3-7 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:25.339-04:00 | nioEventLoopGroup-3-1 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:25.422-04:00 | nioEventLoopGroup-3-9 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:25.491-04:00 | nioEventLoopGroup-3-9 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:26.288-04:00 | jupnp-2 | DEBUG | MulticastReceiver | UDP datagram received from: 192.168.1.66:47505 on local interface: eno1 and address: 192.168.1.239 2021-06-11 17:07:26.288-04:00 | jupnp-2 | DEBUG | Router | Received asynchronous message: (IncomingDatagramMessage) M-SEARCH 2021-06-11 17:07:26.288-04:00 | jupnp-2 | DEBUG | MulticastReceiver | UDP datagram received from: 192.168.1.66:49046 on local interface: eno1 and address: 192.168.1.239 2021-06-11 17:07:26.288-04:00 | jupnp-2 | DEBUG | Router | Received asynchronous message: (IncomingDatagramMessage) M-SEARCH 2021-06-11 17:07:26.424-04:00 | nioEventLoopGroup-3-9 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:26.576-04:00 | jupnp-2 | DEBUG | MulticastReceiver | UDP datagram received from: 192.168.1.120:52544 on local interface: eno1 and address: 192.168.1.239 2021-06-11 17:07:26.576-04:00 | jupnp-2 | DEBUG | Router | Received asynchronous message: (IncomingDatagramMessage) M-SEARCH 2021-06-11 17:07:27.424-04:00 | nioEventLoopGroup-3-9 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:27.500-04:00 | nioEventLoopGroup-3-5 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:27.578-04:00 | jupnp-2 | DEBUG | MulticastReceiver | UDP datagram received from: 192.168.1.120:52544 on local interface: eno1 and address: 192.168.1.239 2021-06-11 17:07:27.578-04:00 | jupnp-2 | DEBUG | Router | Received asynchronous message: (IncomingDatagramMessage) M-SEARCH 2021-06-11 17:07:27.890-04:00 | nioEventLoopGroup-3-9 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:28.280-04:00 | jupnp-2 | DEBUG | MulticastReceiver | UDP datagram received from: 192.168.1.66:42301 on local interface: eno1 and address: 192.168.1.239 2021-06-11 17:07:28.280-04:00 | jupnp-2 | DEBUG | Router | Received asynchronous message: (IncomingDatagramMessage) M-SEARCH 2021-06-11 17:07:28.280-04:00 | jupnp-2 | DEBUG | MulticastReceiver | UDP datagram received from: 192.168.1.66:38343 on local interface: eno1 and address: 192.168.1.239 2021-06-11 17:07:28.280-04:00 | jupnp-2 | DEBUG | Router | Received asynchronous message: (IncomingDatagramMessage) M-SEARCH 2021-06-11 17:07:28.409-04:00 | nioEventLoopGroup-3-3 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:28.425-04:00 | nioEventLoopGroup-3-9 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:28.568-04:00 | nioEventLoopGroup-3-10 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:28.579-04:00 | jupnp-2 | DEBUG | MulticastReceiver | UDP datagram received from: 192.168.1.120:52544 on local interface: eno1 and address: 192.168.1.239 2021-06-11 17:07:28.579-04:00 | jupnp-2 | DEBUG | Router | Received asynchronous message: (IncomingDatagramMessage) M-SEARCH

bradmcbrayer (Fri, 11 Jun 2021 21:12:46 GMT):
2021-06-11 17:07:37.957-04:00 | EthScheduler-Services-5 (batchDownloadData) | DEBUG | GetNodeDataFromPeerTask | Requesting 384 node data entries from peer Peer 0x5a02fbaad2b0f58272.... 2021-06-11 17:07:37.958-04:00 | EthScheduler-Services-5 (batchDownloadData) | DEBUG | GetNodeDataFromPeerTask | Requesting 146 node data entries from peer Peer 0x4dc4c753511548ae85.... 2021-06-11 17:07:37.989-04:00 | EthScheduler-Services-5 (batchDownloadData) | DEBUG | GetNodeDataFromPeerTask | Requesting 1 node data entries from peer Peer 0x5b19536bef29e0bc4c.... 2021-06-11 17:07:38.136-04:00 | EthScheduler-Services-5 (batchDownloadData) | DEBUG | GetNodeDataFromPeerTask | Requesting 1 node data entries from peer Peer 0x1a8e61fe928755537a.... 2021-06-11 17:07:38.229-04:00 | EthScheduler-Services-5 (batchDownloadData) | DEBUG | GetNodeDataFromPeerTask | Requesting 1 node data entries from peer Peer 0x3f9fdac4b1963c863c.... 2021-06-11 17:07:38.300-04:00 | EthScheduler-Services-5 (batchDownloadData) | DEBUG | GetNodeDataFromPeerTask | Requesting 1 node data entries from peer Peer 0x4ac7a279cf0787a92a.... 2021-06-11 17:07:38.316-04:00 | EthScheduler-Services-5 (batchDownloadData) | DEBUG | GetNodeDataFromPeerTask | Requesting 1 node data entries from peer Peer 0x5c1afffa934d99d635.... 2021-06-11 17:07:38.357-04:00 | EthScheduler-Services-5 (batchDownloadData) | DEBUG | GetNodeDataFromPeerTask | Requesting 1 node data entries from peer Peer 0x264d342b7c734e907a.... 2021-06-11 17:07:38.428-04:00 | nioEventLoopGroup-3-9 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:38.465-04:00 | nioEventLoopGroup-3-9 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:38.503-04:00 | EthScheduler-Services-5 (batchDownloadData) | DEBUG | GetNodeDataFromPeerTask | Requesting 1 node data entries from peer Peer 0xf2ec77366a50b19acd.... 2021-06-11 17:07:38.553-04:00 | EthScheduler-Services-5 (batchDownloadData) | DEBUG | GetNodeDataFromPeerTask | Requesting 1 node data entries from peer Peer 0x1a5dd165d196646d60.... 2021-06-11 17:07:38.560-04:00 | EthScheduler-Services-5 (batchDownloadData) | DEBUG | GetNodeDataFromPeerTask | Requesting 1 node data entries from peer Peer 0x691419988b6b8832e1.... 2021-06-11 17:07:38.584-04:00 | EthScheduler-Services-5 (batchDownloadData) | DEBUG | GetNodeDataFromPeerTask | Requesting 1 node data entries from peer Peer 0xce6cc07f00a73150bc.... 2021-06-11 17:07:38.603-04:00 | EthScheduler-Services-5 (batchDownloadData) | DEBUG | GetNodeDataFromPeerTask | Requesting 1 node data entries from peer Peer 0x81b6f41d93cf7b9292.... 2021-06-11 17:07:38.645-04:00 | nioEventLoopGroup-3-10 | DEBUG | WireKeepAlive | Idle connection detected, sending Wire PING to peer. 2021-06-11 17:07:38.646-04:00 | nioEventLoopGroup-3-10 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:39.084-04:00 | EthScheduler-Services-5 (batchDownloadData) | DEBUG | GetNodeDataFromPeerTask | Requesting 5 node data entries from peer Peer 0xcc39f01de41da1470c.... 2021-06-11 17:07:39.092-04:00 | nioEventLoopGroup-3-10 | DEBUG | ApiHandler | Received Wire PONG 2021-06-11 17:07:39.126-04:00 | EthScheduler-Services-5 (batchDownloadData) | DEBUG | GetNodeDataFromPeerTask | Requesting 1 node data entries from peer Peer 0x9ac6cc04580881f70a.... 2021-06-11 17:07:39.140-04:00 | EthScheduler-Services-5 (batchDownloadData) | DEBUG | GetNodeDataFromPeerTask | Requesting 1 node data entries from peer Peer 0x07556de1553ff62529.... 2021-06-11 17:07:39.181-04:00 | nioEventLoopGroup-3-4 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:39.212-04:00 | EthScheduler-Services-5 (batchDownloadData) | DEBUG | GetNodeDataFromPeerTask | Requesting 2 node data entries from peer Peer 0x4e8ec21181917158ce.... 2021-06-11 17:07:39.428-04:00 | nioEventLoopGroup-3-9 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:39.558-04:00 | EthScheduler-Services-5 (batchDownloadData) | DEBUG | GetNodeDataFromPeerTask | Requesting 10 node data entries from peer Peer 0x544e2349d783d6db81.... 2021-06-11 17:07:39.572-04:00 | nioEventLoopGroup-3-4 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:39.678-04:00 | Timer-0 | DEBUG | SimpleResolver | Sending all.mainnet.ethdisco.net./TXT, id=27093 to tcp/10.46.0.1:53 2021-06-11 17:07:39.682-04:00 | Timer-0 | DEBUG | DNSResolver | ENR tree root seq enrtree-root:v1 e=2NO7WNEOACPPRAKSTICHTGCE7M l=FDXN3SN67NA5DKA4J2GOK7BVQI seq=2261 sig=QrJt6s0AD1IuEUGT_efp8oaRLjwj-L5D-lV4P8Zqsbo3_nIrYHwuI8tYSRtM9yO5DhQ2dA04ly0U2NekPJjIhgE=.seq is not higher than 2261, aborting

bradmcbrayer (Fri, 11 Jun 2021 21:12:46 GMT):
Warnings: 2021-06-11 17:07:42.662-04:00 | nioEventLoopGroup-3-4 | DEBUG | ApiHandler | Received Wire PONG 2021-06-11 17:07:42.668-04:00 | nioEventLoopGroup-3-9 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:42.891-04:00 | nioEventLoopGroup-3-9 | WARN | ChannelInitializer | Failed to initialize a channel. Closing: [id: 0x47820538] org.hyperledger.besu.plugin.services.securitymodule.SecurityModuleException: Unexpected error while calculating ECDH Key Agreement: Invalid point coordinates at org.hyperledger.besu.crypto.KeyPairSecurityModule.calculateECDHKeyAgreement(KeyPairSecurityModule.java:79) at org.hyperledger.besu.crypto.NodeKey.calculateECDHKeyAgreement(NodeKey.java:44) at org.hyperledger.besu.ethereum.p2p.rlpx.handshake.ecies.ECIESHandshaker.firstMessage(ECIESHandshaker.java:132) at org.hyperledger.besu.ethereum.p2p.rlpx.connections.netty.HandshakeHandlerOutbound.(HandshakeHandlerOutbound.java:59) at org.hyperledger.besu.ethereum.p2p.rlpx.connections.netty.NettyConnectionInitializer$1.initChannel(NettyConnectionInitializer.java:190) at org.hyperledger.besu.ethereum.p2p.rlpx.connections.netty.NettyConnectionInitializer$1.initChannel(NettyConnectionInitializer.java:174) at io.netty.channel.ChannelInitializer.initChannel(ChannelInitializer.java:129) at io.netty.channel.ChannelInitializer.handlerAdded(ChannelInitializer.java:112) at io.netty.channel.AbstractChannelHandlerContext.callHandlerAdded(AbstractChannelHandlerContext.java:938) at io.netty.channel.DefaultChannelPipeline.callHandlerAdded0(DefaultChannelPipeline.java:609) at io.netty.channel.DefaultChannelPipeline.access$100(DefaultChannelPipeline.java:46) at io.netty.channel.DefaultChannelPipeline$PendingHandlerAddedTask.execute(DefaultChannelPipeline.java:1463) at io.netty.channel.DefaultChannelPipeline.callHandlerAddedForAllHandlers(DefaultChannelPipeline.java:1115) at io.netty.channel.DefaultChannelPipeline.invokeHandlerAddedIfNeeded(DefaultChannelPipeline.java:650) at io.netty.channel.AbstractChannel$AbstractUnsafe.register0(AbstractChannel.java:502) at io.netty.channel.AbstractChannel$AbstractUnsafe.access$200(AbstractChannel.java:417) at io.netty.channel.AbstractChannel$AbstractUnsafe$1.run(AbstractChannel.java:474) at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:164) at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:472) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:500) at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989) at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) at java.base/java.lang.Thread.run(Thread.java:829) Caused by: java.lang.IllegalArgumentException: Invalid point coordinates at org.bouncycastle.math.ec.ECCurve.validatePoint(ECCurve.java:125) at org.bouncycastle.math.ec.ECCurve.decodePoint(ECCurve.java:420) at org.hyperledger.besu.crypto.SECPPublicKey.asEcPoint(SECPPublicKey.java:96) at org.hyperledger.besu.crypto.AbstractSECP256.publicKeyAsEcPoint(AbstractSECP256.java:174) at org.hyperledger.besu.crypto.NodeKey.lambda$calculateECDHKeyAgreement$0(NodeKey.java:45) at org.hyperledger.besu.crypto.KeyPairSecurityModule.calculateECDHKeyAgreement(KeyPairSecurityModule.java:73) ... 23 more

bradmcbrayer (Fri, 11 Jun 2021 21:13:32 GMT):
These are warnings: 2021-06-11 17:07:42.662-04:00 | nioEventLoopGroup-3-4 | DEBUG | ApiHandler | Received Wire PONG 2021-06-11 17:07:42.668-04:00 | nioEventLoopGroup-3-9 | DEBUG | ApiHandler | Received Wire PING 2021-06-11 17:07:42.891-04:00 | nioEventLoopGroup-3-9 | WARN | ChannelInitializer | Failed to initialize a channel. Closing: [id: 0x47820538] org.hyperledger.besu.plugin.services.securitymodule.SecurityModuleException: Unexpected error while calculating ECDH Key Agreement: Invalid point coordinates at org.hyperledger.besu.crypto.KeyPairSecurityModule.calculateECDHKeyAgreement(KeyPairSecurityModule.java:79) at org.hyperledger.besu.crypto.NodeKey.calculateECDHKeyAgreement(NodeKey.java:44) at org.hyperledger.besu.ethereum.p2p.rlpx.handshake.ecies.ECIESHandshaker.firstMessage(ECIESHandshaker.java:132) at org.hyperledger.besu.ethereum.p2p.rlpx.connections.netty.HandshakeHandlerOutbound.(HandshakeHandlerOutbound.java:59) at org.hyperledger.besu.ethereum.p2p.rlpx.connections.netty.NettyConnectionInitializer$1.initChannel(NettyConnectionInitializer.java:190) at org.hyperledger.besu.ethereum.p2p.rlpx.connections.netty.NettyConnectionInitializer$1.initChannel(NettyConnectionInitializer.java:174) at io.netty.channel.ChannelInitializer.initChannel(ChannelInitializer.java:129) at io.netty.channel.ChannelInitializer.handlerAdded(ChannelInitializer.java:112) at io.netty.channel.AbstractChannelHandlerContext.callHandlerAdded(AbstractChannelHandlerContext.java:938) at io.netty.channel.DefaultChannelPipeline.callHandlerAdded0(DefaultChannelPipeline.java:609) at io.netty.channel.DefaultChannelPipeline.access$100(DefaultChannelPipeline.java:46) at io.netty.channel.DefaultChannelPipeline$PendingHandlerAddedTask.execute(DefaultChannelPipeline.java:1463) at io.netty.channel.DefaultChannelPipeline.callHandlerAddedForAllHandlers(DefaultChannelPipeline.java:1115) at io.netty.channel.DefaultChannelPipeline.invokeHandlerAddedIfNeeded(DefaultChannelPipeline.java:650) at io.netty.channel.AbstractChannel$AbstractUnsafe.register0(AbstractChannel.java:502) at io.netty.channel.AbstractChannel$AbstractUnsafe.access$200(AbstractChannel.java:417) at io.netty.channel.AbstractChannel$AbstractUnsafe$1.run(AbstractChannel.java:474) at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:164) at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:472) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:500) at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989) at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) at java.base/java.lang.Thread.run(Thread.java:829) Caused by: java.lang.IllegalArgumentException: Invalid point coordinates at org.bouncycastle.math.ec.ECCurve.validatePoint(ECCurve.java:125) at org.bouncycastle.math.ec.ECCurve.decodePoint(ECCurve.java:420) at org.hyperledger.besu.crypto.SECPPublicKey.asEcPoint(SECPPublicKey.java:96) at org.hyperledger.besu.crypto.AbstractSECP256.publicKeyAsEcPoint(AbstractSECP256.java:174) at org.hyperledger.besu.crypto.NodeKey.lambda$calculateECDHKeyAgreement$0(NodeKey.java:45) at org.hyperledger.besu.crypto.KeyPairSecurityModule.calculateECDHKeyAgreement(KeyPairSecurityModule.java:73) ... 23 more

bradmcbrayer (Fri, 11 Jun 2021 21:15:19 GMT):
Caused by: java.lang.IllegalArgumentException: Invalid point coordinates at org.bouncycastle.math.ec.ECCurve.validatePoint(ECCurve.java:125) at org.bouncycastle.math.ec.ECCurve.decodePoint(ECCurve.java:420) at org.hyperledger.besu.crypto.SECPPublicKey.asEcPoint(SECPPublicKey.java:96) at org.hyperledger.besu.crypto.AbstractSECP256.publicKeyAsEcPoint(AbstractSECP256.java:174) at org.hyperledger.besu.crypto.NodeKey.lambda$calculateECDHKeyAgreement$0(NodeKey.java:45) at org.hyperledger.besu.crypto.KeyPairSecurityModule.calculateECDHKeyAgreement(KeyPairSecurityModule.java:73) ... 23 more 2021-06-11 17:07:42.893-04:00 | nioEventLoopGroup-3-3 | DEBUG | RlpxAgent | Failed to connect to peer 0x86b6798ac5c26199d427979c20ee2dd8ac73dede22d610da0af4ee0293c4ec84375737317a7b2ed4552f92144981490fbf0223b6f394d4fc1dae8425dceb3fbb: io.netty.channel.StacklessClosedChannelException 2021-06-11 17:07:42.893-04:00 | nioEventLoopGroup-3-3 | DEBUG | RlpxAgent | Failed to connect to peer 0xc59dba19a3fb904564f319efc279a682b70617eafa56b5b3eee14069981f75b7030ef92c2ca52823d66a59c044ef3694c17624ebca306d9a79acb5bcdf55eda2: io.netty.channel.StacklessClosedChannelException 2021-06-11 17:07:42.893-04:00 | nioEventLoopGroup-3-4 | WARN | ChannelInitializer | Failed to initialize a channel. Closing: [id: 0xe4f480ba] org.hyperledger.besu.plugin.services.securitymodule.SecurityModuleException: Unexpected error while calculating ECDH Key Agreement: Invalid point coordinates at org.hyperledger.besu.crypto.KeyPairSecurityModule.calculateECDHKeyAgreement(KeyPairSecurityModule.java:79) at org.hyperledger.besu.crypto.NodeKey.calculateECDHKeyAgreement(NodeKey.java:44) at org.hyperledger.besu.ethereum.p2p.rlpx.handshake.ecies.ECIESHandshaker.firstMessage(ECIESHandshaker.java:132) at org.hyperledger.besu.ethereum.p2p.rlpx.connections.netty.HandshakeHandlerOutbound.(HandshakeHandlerOutbound.java:59) at org.hyperledger.besu.ethereum.p2p.rlpx.connections.netty.NettyConnectionInitializer$1.initChannel(NettyConnectionInitializer.java:190) at org.hyp

chileanguy (Sat, 12 Jun 2021 01:04:50 GMT):
thank you very much.. I saw that but I wanted to accelerate, I think that the quorum dev should provide clear instructions on how to use own private keys, provide ssl certificate and sync external nodes under the ibft2 consensus.

mohjam2004 (Sat, 12 Jun 2021 08:08:58 GMT):

Clipboard - June 12, 2021 12:38 PM

mohjam2004 (Sat, 12 Jun 2021 08:10:03 GMT):
Thanx, I executed this example in my network and I got the above error. how can set --rpc-http-api?

mohjam2004 (Sat, 12 Jun 2021 08:10:29 GMT):

Clipboard - June 12, 2021 12:40 PM

mohjam2004 (Sat, 12 Jun 2021 08:24:28 GMT):
the chain id in my genesis is 2018. must I change chain id from 1337 in keys.js to 2018?

mohjam2004 (Sat, 12 Jun 2021 08:54:01 GMT):
I use private key by which the transactions are signed. is it corret?

mohjam2004 (Sat, 12 Jun 2021 08:54:11 GMT):
for this part

mohjam2004 (Sat, 12 Jun 2021 08:54:12 GMT):

Clipboard - June 12, 2021 1:24 PM

bradmcbrayer (Sat, 12 Jun 2021 10:41:23 GMT):
Chain download complete but its not complete then starts downloading nodes rather than blocks. 2021-06-11 21:45:37.403-04:00 | EthScheduler-Services-22 (importBlock) | INFO | PipelineChainDownloader | Chain download complete 2021-06-11 21:56:14.837-04:00 | EthScheduler-Services-2 (requestCompleteTask) | INFO | CompleteTaskStep | Downloaded 100000 world state nodes. At least 1496551 nodes remaining. 2021-06-11 22:04:06.995-04:00 | jupnp-1190 | WARN | RetrieveRemoteDescriptors | Service descriptor retrieval failed: http://192.168.1.64:8060/dial/ecp_SCPD.xml, 404 Not Found 2021-06-11 22:04:07.003-04:00 | jupnp-1190 | WARN | RetrieveRemoteDescriptors | Service descriptor retrieval failed: http://192.168.1.64:8060/dial/dial_SCPD.xml, 404 Not Found 2021-06-11 22:04:07.004-04:00 | jupnp-1190 | WARN | RetrieveRemoteDescriptors | Device service description failed: (RemoteDevice) Identity: (RemoteDeviceIdentity) UDN: uuid:296c0004-6004-10ac-8055-7880382a63d7, Descriptor: http://192.168.1.64:8060/dial/dd.xml, Root: true 2021-06-11 22:25:50.804-04:00 | EthScheduler-Services-2 (requestCompleteTask) | INFO | CompleteTaskStep | Downloaded 200000 world state nodes. At least 2996128 nodes remaining.

pkchai (Sat, 12 Jun 2021 11:37:32 GMT):
Hi, I'm using fast sync mode syncing besu for 1 day. It's downloading state nodes and the pending state nodes are varying. The number of blocks behind is increasing. Why is it not syncing the blocks? And is there a max limit to the state nodes it has to download?

shemnon (Sat, 12 Jun 2021 22:07:59 GMT):
Which network? For mainnet 3 days is not unexpected, possibly mode depending on how fast your storage is. While fast syncing the blocks behind will increase because the fast sync pivot block is fixed. Once the fast sync completes the blocks behind will decrease as it catches up.

pkchai (Sat, 12 Jun 2021 23:19:34 GMT):
Ah ok. It's on mainnet yes. Storage is a nvme m2. I'll let it sync then. Thanks for ur repsonse

shemnon (Sat, 12 Jun 2021 23:25:22 GMT):
local or AWS? For AWS the more IOPS the better.

shemnon (Sat, 12 Jun 2021 23:26:23 GMT):
I haven't watched a fast sync in a while, but I expect the state nodes to be in the 700MM range, maybe more. The ConsenSys devs should be able to quote a number from the last two weeks.

mohjam2004 (Sun, 13 Jun 2021 03:29:19 GMT):
@macfarla

mohjam2004 (Sun, 13 Jun 2021 04:34:23 GMT):
I think I have set it correctly

mohjam2004 (Sun, 13 Jun 2021 04:34:25 GMT):

Clipboard - June 13, 2021 9:04 AM

mohjam2004 (Sun, 13 Jun 2021 05:03:58 GMT):
these are my besu privacy nodes and their ralated orion nodes

mohjam2004 (Sun, 13 Jun 2021 05:04:01 GMT):

Clipboard - June 13, 2021 9:34 AM

mohjam2004 (Sun, 13 Jun 2021 05:11:12 GMT):
I used my orion public key instead of tessera public key

mohjam2004 (Sun, 13 Jun 2021 06:03:52 GMT):
I'm just testing based on this doc: https://besu.hyperledger.org/en/21.1.6/Tutorials/Privacy/web3js-eea-Multinode-example/ but I get this error:

mohjam2004 (Sun, 13 Jun 2021 06:04:28 GMT):

Clipboard - June 13, 2021 10:34 AM

mohjam2004 (Sun, 13 Jun 2021 06:05:01 GMT):
I have change chain id in keys.js from 1337 to 2018(my chain id)

mohjam2004 (Sun, 13 Jun 2021 06:05:01 GMT):
I have changed chain id in keys.js from 1337 to 2018(my chain id)

mohjam2004 (Sun, 13 Jun 2021 06:05:35 GMT):
in my privacy node web3 is enabled for rpc and ws

mohjam2004 (Sun, 13 Jun 2021 06:05:44 GMT):

Clipboard - June 13, 2021 10:35 AM

mohjam2004 (Sun, 13 Jun 2021 06:06:01 GMT):
what's wrong in my configuration?

mohjam2004 (Sun, 13 Jun 2021 06:08:29 GMT):

Clipboard - June 13, 2021 10:38 AM

rahul_prasad (Sun, 13 Jun 2021 09:49:35 GMT):
Has joined the channel.

rahul_prasad (Sun, 13 Jun 2021 09:51:01 GMT):
Hello Team

rahul_prasad (Sun, 13 Jun 2021 09:58:45 GMT):
I am working on one POC. My project is on private network .we found the 3 node are provide by besu kit and they are syc with each other . but when i try too connect with different node it's not sycn . please guide me how to sync and also need help to increase the block time or difficulty level.i don't understand i had more than 2 Cr. block in span of 4 months and don't know how to stop it form increasing.

mohjam2004 (Sun, 13 Jun 2021 10:43:24 GMT):
I have found the problem: The rpc-http-api method PRIV was not set on config.toml of privacy nodes. Now I don't get the previous error: rpc-http-api=["DEBUG","ETH", "ADMIN", "WEB3", "IBFT", "NET", "EEA", "PRIV"] rpc-ws-api=["DEBUG","ETH", "ADMIN", "WEB3", "IBFT", "NET", "EEA", "PRIV"] My new issue is that the transaction is got stuck in mining and I get this error: image

mohjam2004 (Sun, 13 Jun 2021 10:43:24 GMT):
I have found the problem: The rpc-http-api method PRIV was not set on config.toml of privacy nodes. Now I don't get the previous error: rpc-http-api=["DEBUG","ETH", "ADMIN", "WEB3", "IBFT", "NET", "EEA", "PRIV"] rpc-ws-api=["DEBUG","ETH", "ADMIN", "WEB3", "IBFT", "NET", "EEA", "PRIV"] My new issue is that the transaction is got stuck in mining and I get this error:

mohjam2004 (Sun, 13 Jun 2021 10:43:54 GMT):

Clipboard - June 13, 2021 3:13 PM

mohjam2004 (Sun, 13 Jun 2021 11:31:49 GMT):
the problem has been resolved

mohjam2004 (Sun, 13 Jun 2021 11:32:06 GMT):
https://github.com/ConsenSys/web3js-eea/issues/164

tusharbansal (Sun, 13 Jun 2021 18:31:48 GMT):
Has joined the channel.

macfarla (Sun, 13 Jun 2021 23:10:16 GMT):
glad you found the issue with the privacy mode

macfarla (Sun, 13 Jun 2021 23:11:14 GMT):
Was your other problem solved by setting min-gas-price=0 ?

macfarla (Sun, 13 Jun 2021 23:14:41 GMT):
Exploring privacy with the web3js-eea examples is a good place to start https://github.com/ConsenSys/web3js-eea

macfarla (Sun, 13 Jun 2021 23:18:46 GMT):
You could do this with your own custom permissioning solution. There is no built-in way to do this.

macfarla (Sun, 13 Jun 2021 23:19:40 GMT):
good to hear!

macfarla (Sun, 13 Jun 2021 23:23:13 GMT):
Did you get your setup to work with the above?

macfarla (Sun, 13 Jun 2021 23:28:05 GMT):
Re events the consumer can query or subscribe to events. You're right in that if your node is offline it could miss events (but in this case you would lose your subscription and have to reconnect, so you would know) but sending a query will give the complete history.

mohjam2004 (Mon, 14 Jun 2021 05:26:48 GMT):
yes. the problem is resolved

mohjam2004 (Mon, 14 Jun 2021 05:27:56 GMT):
yes. exactly. but I don't know why?

EmcLab (Mon, 14 Jun 2021 06:34:32 GMT):
Just upgraded to 21.1.7 from 21.1.5. But there is no sync. What can be wrong with the network? Here is the log file

EmcLab (Mon, 14 Jun 2021 06:35:23 GMT):
2021-06-14 14:30:52.525+08:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2021-06-14 14:30:52.525+08:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2021-06-14 14:30:57.526+08:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2021-06-14 14:30:57.526+08:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2021-06-14 14:31:02.527+08:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2021-06-14 14:31:02.527+08:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2021-06-14 14:31:07.528+08:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2021-06-14 14:31:07.528+08:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2021-06-14 14:31:12.446+08:00 | vert.x-eventloop-thread-1 | DEBUG | PeerDiscoveryController | Peer table refresh triggered by insufficient peers 2021-06-14 14:31:12.447+08:00 | vert.x-eventloop-thread-1 | DEBUG | RecursivePeerRefreshState | Start peer search. 2021-06-14 14:31:12.447+08:00 | vert.x-eventloop-thread-1 | DEBUG | RecursivePeerRefreshState | Skipping bonding round because no candidates are available 2021-06-14 14:31:12.447+08:00 | vert.x-eventloop-thread-1 | DEBUG | RecursivePeerRefreshState | Iterative peer search complete. 0 peers processed over 1 rounds. 2021-06-14 14:31:12.528+08:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2021-06-14 14:31:12.528+08:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2021-06-14 14:31:17.529+08:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2021-06-14 14:31:17.529+08:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2021-06-14 14:31:22.529+08:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2021-06-14 14:31:22.529+08:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2021-06-14 14:31:27.530+08:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2021-06-14 14:31:27.530+08:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2021-06-14 14:31:32.531+08:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2021-06-14 14:31:32.531+08:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2021-06-14 14:31:37.532+08:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2021-06-14 14:31:37.532+08:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2021-06-14 14:31:42.448+08:00 | vert.x-eventloop-thread-1 | DEBUG | PeerDiscoveryController | Peer table refresh triggered by insufficient peers 2021-06-14 14:31:42.449+08:00 | vert.x-eventloop-thread-1 | DEBUG | RecursivePeerRefreshState | Start peer search. 2021-06-14 14:31:42.449+08:00 | vert.x-eventloop-thread-1 | DEBUG | RecursivePeerRefreshState | Skipping bonding round because no candidates are available 2021-06-14 14:31:42.449+08:00 | vert.x-eventloop-thread-1 | DEBUG | RecursivePeerRefreshState | Iterative peer search complete. 0 peers processed over 1 rounds. 2021-06-14 14:31:42.533+08:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2021-06-14 14:31:42.533+08:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2021-06-14 14:31:47.533+08:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2021-06-14 14:31:47.533+08:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2021-06-14 14:31:52.534+08:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2021-06-14 14:31:52.534+08:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected. 2021-06-14 14:31:57.535+08:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 2021-06-14 14:31:57.535+08:00 | EthScheduler-Timer-0 | DEBUG | WaitForPeerTask | Waiting for new peer connection. 0 peers currently connected.

matkt (Mon, 14 Jun 2021 08:13:50 GMT):
you need to wait for the end of this step before the node starts downloading the new blocks

VijayMichalik (Mon, 14 Jun 2021 13:14:19 GMT):
Hi @chileanguy, thanks for the feedback. The quickstart is really only for private network demonstration and testing purposes, follow-on information about using your own private keys, SSL/TLS and connecting to other nodes is contained elsewhere in the docs. e.g.https://besu.hyperledger.org/en/stable/HowTo/Configure/Configure-TLS/

VijayMichalik (Mon, 14 Jun 2021 13:14:19 GMT):
Hi @chileanguy, thanks for the feedback. The quickstart is really only for private network demonstration and testing purposes, follow-on information about using your own private keys, SSL/TLS and connecting to other nodes is contained elsewhere in the docs. e.g. https://besu.hyperledger.org/en/stable/HowTo/Configure/Configure-TLS/

VijayMichalik (Mon, 14 Jun 2021 13:15:15 GMT):
please let us know if you have a question that isn't clear or covered in the documentation!

VijayMichalik (Mon, 14 Jun 2021 13:16:24 GMT):
this page walks you through all the files which you need to configure when starting Besu or a Besu network https://besu.hyperledger.org/en/stable/Tutorials/Private-Network/Create-IBFT-Network/

VijayMichalik (Mon, 14 Jun 2021 13:18:28 GMT):
I believe it's because private marker transactions are sent at 0 gas price, but I will check this for you

VijayMichalik (Mon, 14 Jun 2021 13:24:10 GMT):
Hey, if you wouldn't mind threading your long posts that would be super useful!

VijayMichalik (Mon, 14 Jun 2021 13:24:32 GMT):
In this case it looks like you don't have any peers - how many are you expecting? Are they all running as far as you're aware?

VijayMichalik (Mon, 14 Jun 2021 13:25:59 GMT):
this is something I'm interested to understand more about - what kinds of things are you looking for in a demo solution for privacy?

VijayMichalik (Mon, 14 Jun 2021 13:28:24 GMT):
hello, could you share your logs and config files? Information on configuring block time is here https://besu.hyperledger.org/en/stable/HowTo/Configure/Consensus-Protocols/IBFT/#block-time although difficulty is not relevant in the case of proof-of-authority

VijayMichalik (Mon, 14 Jun 2021 13:28:58 GMT):
Blocks will continue to be produced even without transactions in IBFT

VijayMichalik (Mon, 14 Jun 2021 13:28:58 GMT):
Blocks will continue to be produced even without transactions in IBFT though we're looking into some possible options for this

rampatra (Mon, 14 Jun 2021 17:20:08 GMT):
Do I need to do something extra (like enable some flags when starting besu nodes) in order to subscribe to events? I am getting a connection timeout when I try to subscribe to an event.

rampatra (Mon, 14 Jun 2021 17:22:10 GMT):
Code snippet looks like: ``` EthFilter ethFilter = new EthFilter(DefaultBlockParameterName.EARLIEST, DefaultBlockParameterName.LATEST, contract.getContractAddress()); ethFilter.addSingleTopic(EventEncoder.encode(TransactionDemo3Contract.TRANSFERREQUEST_EVENT)); node.privLogFlowable(privacyGroupId, ethFilter) .map((eventLog) -> { final EventValues eventValues = Contract.staticExtractEventParameters(TransactionDemo3Contract.TRANSFERREQUEST_EVENT, eventLog); TransferRequestEventResponse response = new TransferRequestEventResponse(); response.log = eventLog; response.id = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); response.amount = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); response.sender = (String) eventValues.getNonIndexedValues().get(2).getValue(); response.receiver = (String) eventValues.getNonIndexedValues().get(3).getValue(); return response; }) .doOnError(Throwable::printStackTrace) .subscribe(r -> { contract.confirmTransfer(r.id).send(); System.out.println("Transfer completed."); }); ```

rampatra (Mon, 14 Jun 2021 17:22:10 GMT):
Code snippet looks like: ``` EthFilter ethFilter = new EthFilter(DefaultBlockParameterName.EARLIEST, DefaultBlockParameterName.LATEST, contract.getContractAddress()); ethFilter.addSingleTopic(EventEncoder.encode(TransactionDemo3Contract.TRANSFERREQUEST_EVENT)); node.privLogFlowable(privacyGroupId, ethFilter) .map((eventLog) -> { final EventValues eventValues = Contract.staticExtractEventParameters(TransactionDemo3Contract.TRANSFERREQUEST_EVENT, eventLog); TransferRequestEventResponse response = new TransferRequestEventResponse(); response.log = eventLog; response.id = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); return response; }) .doOnError(Throwable::printStackTrace) .subscribe(r -> { contract.confirmTransfer(r.id).send(); System.out.println("Transfer completed."); }); ```

EmcLab (Mon, 14 Jun 2021 20:55:35 GMT):
@VijayMichalik, this is 4 nodes network and shall have 3 peers. I just check the log and they all synced up. It seems that it took sometime for all 4 nodes get synced. Usually how long it takes for 4 nodes network to be synced?

mohjam2004 (Tue, 15 Jun 2021 03:54:27 GMT):
I think so, But it needs more investigation as you mention.

mohjam2004 (Tue, 15 Jun 2021 03:57:55 GMT):
What I need was exactly provided in this example. But I'm also looking for a DAPP like pet shop example and a scenario based on this DAPPto examine privacy.

mohjam2004 (Tue, 15 Jun 2021 03:57:55 GMT):
What I need was exactly provided in this example. But I'm also looking for a DAPP like pet shop example and a scenario based on this DAPP to examine privacy.

mohjam2004 (Tue, 15 Jun 2021 04:21:04 GMT):
What I was looking for 1st demo was a smart contract that shows privacy in besu private network, for example we have 3 besu nodes and we only want only node 1 and node 2 be aware of transaction payload and this is what I exactly need.

rampatra (Tue, 15 Jun 2021 08:40:07 GMT):
I am using the besu quick start guide and I start the nodes like: ``` besu --data-path=data --genesis-file=../genesis.json --rpc-http-enabled --rpc-http-api=ETH,NET,IBFT,WEB3,EEA,PRIV,PERM --host-allowlist="*" --rpc-http-cors-origins="all" --min-gas-price=0 --privacy-enabled --privacy-url=http://127.0.0.1:8888 --privacy-public-key-file=Orion/nodeKey.pub ```

HiteshSharma (Tue, 15 Jun 2021 19:36:02 GMT):
I want to use a GPU for a PoW network. For this I'm using AWS `g4dn.xlarge` instance. I also installed the required driver using this link - `https://docs.amazonaws.cn/en_us/AWSEC2/latest/UserGuide/install-nvidia-driver.html#nvidia-GRID-driver`. And it's installed properly. Now, when I'm starting the node using the following command, it's not mining - ``` tiluf/bin/tiluf --config-file=config.toml --node-private-key-file=network-files/node/keys/key --miner-enabled --miner-stratum-enabled --miner-coinbase=627306090abaB3A6e1400e9345bC60c78a8BEf57 --rpc-http-enabled=true --rpc-ws-enabled=true ```. What should I do?

HiteshSharma (Tue, 15 Jun 2021 19:36:02 GMT):
I want to use a GPU for a PoW network. For this I'm using AWS `g4dn.xlarge` instance. I also installed the required driver using this link - `https://docs.amazonaws.cn/en_us/AWSEC2/latest/UserGuide/install-nvidia-driver.html#nvidia-GRID-driver`. And it's installed properly. Now, when I'm starting the node using the following command, it's not mining - ``` tiluf/bin/tiluf --config-file=config.toml --node-private-key-file=network-files/node/keys/key --miner-enabled --miner-stratum-enabled --miner-coinbase=627306090abaB3A6e1400e9345bC60c78a8BEf57 --rpc-http-enabled=true --rpc-ws-enabled=true ```. What should I do or what am I doing wrong?

HiteshSharma (Tue, 15 Jun 2021 19:36:02 GMT):
I want to use a GPU for a PoW network. For this I'm using AWS `g4dn.xlarge` instance. I also installed the required driver using this link - `https://docs.amazonaws.cn/en_us/AWSEC2/latest/UserGuide/install-nvidia-driver.html#nvidia-GRID-driver`. And it's installed properly. Now, when I'm starting the node using the following command, it's not mining - ``` tiluf/bin/tiluf --config-file=config.toml --node-private-key-file=network-files/node/keys/key --miner-enabled --miner-stratum-enabled --miner-coinbase=627306090abaB3A6e1400e9345bC60c78a8BEf57 --rpc-http-enabled=true --rpc-ws-enabled=true ```. What should I do or what am I doing wrong?

HiteshSharma (Tue, 15 Jun 2021 19:36:02 GMT):
I want to use a GPU for a PoW network. For this I'm using AWS `g4dn.xlarge` instance. I also installed the required driver using this link - `https://docs.amazonaws.cn/en_us/AWSEC2/latest/UserGuide/install-nvidia-driver.html#nvidia-GRID-driver`. And it's installed properly. Now, when I'm starting the node using the following command, it's not mining - ``` tiluf/bin/tiluf --config-file=config.toml --node-private-key-file=network-files/node/keys/key --miner-enabled --miner-stratum-enabled --miner-coinbase=627306090abaB3A6e1400e9345bC60c78a8BEf57 --rpc-http-enabled=true --rpc-ws-enabled=true ``` What should I do or what am I doing wrong?

HiteshSharma (Tue, 15 Jun 2021 19:36:02 GMT):
I want to use a GPU for a PoW network. For this I'm using AWS `g4dn.xlarge` instance with Ubuntu 20. I also installed the required driver using this link - `https://docs.amazonaws.cn/en_us/AWSEC2/latest/UserGuide/install-nvidia-driver.html#nvidia-GRID-driver`. And it's installed properly. Now, when I'm starting the node using the following command, it's not mining - ``` tiluf/bin/tiluf --config-file=config.toml --node-private-key-file=network-files/node/keys/key --miner-enabled --miner-stratum-enabled --miner-coinbase=627306090abaB3A6e1400e9345bC60c78a8BEf57 --rpc-http-enabled=true --rpc-ws-enabled=true ``` What should I do or what am I doing wrong?

HiteshSharma (Tue, 15 Jun 2021 19:36:02 GMT):
I want to use a GPU for a PoW network. For this I'm using AWS `g4dn.xlarge` instance with Ubuntu 20. I also installed the required driver using this link - https://docs.amazonaws.cn/en_us/AWSEC2/latest/UserGuide/install-nvidia-driver.html#nvidia-GRID-driver. And it's installed properly. Now, when I'm starting the node using the following command, it's not mining - ``` tiluf/bin/tiluf --config-file=config.toml --node-private-key-file=network-files/node/keys/key --miner-enabled --miner-stratum-enabled --miner-coinbase=627306090abaB3A6e1400e9345bC60c78a8BEf57 --rpc-http-enabled=true --rpc-ws-enabled=true ``` What should I do or what am I doing wrong?

HiteshSharma (Tue, 15 Jun 2021 19:36:02 GMT):
I want to use a GPU for a PoW network. For this I'm using AWS `g4dn.xlarge` instance with Ubuntu 20. I also installed the required driver using this link - https://docs.amazonaws.cn/en_us/AWSEC2/latest/UserGuide/install-nvidia-driver.html#nvidia-GRID-driverAnd it's installed properly. Now, when I'm starting the node using the following command, it's not mining - ``` tiluf/bin/tiluf --config-file=config.toml --node-private-key-file=network-files/node/keys/key --miner-enabled --miner-stratum-enabled --miner-coinbase=627306090abaB3A6e1400e9345bC60c78a8BEf57 --rpc-http-enabled=true --rpc-ws-enabled=true ``` What should I do or what am I doing wrong?

HiteshSharma (Tue, 15 Jun 2021 19:36:02 GMT):
I want to use a GPU for a PoW network. For this I'm using AWS `g4dn.xlarge` instance with Ubuntu 20. I also installed the required driver using this link - https://docs.amazonaws.cn/en_us/AWSEC2/latest/UserGuide/install-nvidia-driver.html#nvidia-GRID-driver And it's installed properly. Now, when I'm starting the node using the following command, it's not mining - ``` tiluf/bin/tiluf --config-file=config.toml --node-private-key-file=network-files/node/keys/key --miner-enabled --miner-stratum-enabled --miner-coinbase=627306090abaB3A6e1400e9345bC60c78a8BEf57 --rpc-http-enabled=true --rpc-ws-enabled=true ``` What should I do or what am I doing wrong?

ahmedMokadem (Wed, 16 Jun 2021 09:38:57 GMT):

Clipboard - June 16, 2021 11:38 AM

ahmedMokadem (Wed, 16 Jun 2021 09:40:27 GMT):

Clipboard - June 16, 2021 11:39 AM

ahmedMokadem (Wed, 16 Jun 2021 09:40:27 GMT):

Clipboard - June 16, 2021 11:39 AM

ahmedMokadem (Wed, 16 Jun 2021 09:40:27 GMT):

Clipboard - June 16, 2021 11:39 AM

HiteshSharma (Wed, 16 Jun 2021 13:14:28 GMT):
So, I got a AWS `G4dn` instance, that has `NVIDIA T4 Tensor Core` GPUs. I installed the GRID driver using this guide - https://docs.amazonaws.cn/en_us/AWSEC2/latest/UserGuide/install-nvidia-driver.html#nvidia-GRID-driver But the mining is not happening. Should I install the `Gaming driver` or install `Ethminer`? Will this work and would there by anything to do after this?

HiteshSharma (Wed, 16 Jun 2021 13:14:28 GMT):
So, I got a AWS `G4dn` instance with Ubuntu 20 OS and has `NVIDIA T4 Tensor Core` GPUs. I installed the GRID driver using this guide - https://docs.amazonaws.cn/en_us/AWSEC2/latest/UserGuide/install-nvidia-driver.html#nvidia-GRID-driver But the mining is not happening. Should I install the `Gaming driver` or install `Ethminer`? Will this work and would there by anything to do after this?

HiteshSharma (Wed, 16 Jun 2021 13:14:28 GMT):
So, I got a AWS `G4dn` instance with Ubuntu 20 OS and has `NVIDIA T4 Tensor Core` GPUs. I installed the GRID driver using this guide - https://docs.amazonaws.cn/en_us/AWSEC2/latest/UserGuide/install-nvidia-driver.html#nvidia-GRID-driver But the mining is not happening. Should I install the `Gaming driver` instead or install `Ethminer`? Will this work and would there by anything to do after this?

rampatra (Wed, 16 Jun 2021 15:44:45 GMT):
Any thoughts or ideas regarding this would be really helpful.

HiteshSharma (Wed, 16 Jun 2021 16:22:31 GMT):
I think that the GPU mining is not well described in the documentation. It only says how it was tested, but not how we can use it. It arises the question whether we need to do it the way it's tested or not. https://besu.hyperledger.org/en/stable/HowTo/Configure/Conafigure-Mining/#configure-gpu-mining

HiteshSharma (Wed, 16 Jun 2021 16:31:47 GMT):
Should there not be something like this - https://github.com/hyperledger/besu/blob/c8ad41945ed1f59abbe3fc23cf52b312492ba774/GPU-MINING.md

brunomc 1 (Wed, 16 Jun 2021 23:23:11 GMT):
Has joined the channel.

brunomc 1 (Wed, 16 Jun 2021 23:23:12 GMT):
Hi guys.. how to run caliper on besu? I'm have a error: Worker [1] encountered an error during prepare test phase for round 0: Error: You must provide the json interface of the contract when instantiating a contract object.

brunomc 1 (Wed, 16 Jun 2021 23:24:09 GMT):

Clipboard - 16 de Junho de 2021 às 20:24

nonameb3 (Thu, 17 Jun 2021 03:45:41 GMT):
Has joined the channel.

nonameb3 (Thu, 17 Jun 2021 03:45:43 GMT):
Hello every one, I start private hyperledger besu (v21.1.7) and try to call to smart contract with remix it got rpc error but on web3.js or ethers.js call from nodeJS nothing error. I use remix to deploy my contract too. My besu use config same as Tutorials. Error { "jsonrpc": "2.0", "id": 897754889, "error": { "code": -32602, "message": "Invalid params" } }

azmi (Thu, 17 Jun 2021 06:11:42 GMT):
Has joined the channel.

azmi (Thu, 17 Jun 2021 06:11:42 GMT):
Hello All, Can someone please highlight me major differences between Sawtooth and Besu? Also mention which kind of project are these platforms used for.

VijayMichalik (Thu, 17 Jun 2021 08:09:23 GMT):
Yep, understood - we're looking into building this but a general PSA that we'd love contributions on this too!

VijayMichalik (Thu, 17 Jun 2021 08:15:37 GMT):
PSA: The EEA are looking for companies to help describe use cases that require privacy https://entethalliance.github.io/client-spec/usecases.html if you would like to contribute to it, let me know!

VijayMichalik (Thu, 17 Jun 2021 09:26:19 GMT):
https://besu.hyperledger.org/en/stable/HowTo/Use-Privacy/Sign-Privacy-Marker-Transactions/ has the answers I was looking for

HiteshSharma (Thu, 17 Jun 2021 12:10:34 GMT):
Hey, do anyone know if there a way to limit GPU(Nvidia Tesla T4) hashrate? I'm using Ethminer.

VijayKrishnan (Fri, 18 Jun 2021 00:46:24 GMT):
Has joined the channel.

macfarla (Fri, 18 Jun 2021 01:25:00 GMT):
invalid params indicates that something is incorrect or missing in your rpc request. Check carefully - sometimes it can be hard to spot! or provide your rpc here for public review :)

macfarla (Fri, 18 Jun 2021 01:31:23 GMT):
If you want to use websockets you need to enable that separately but over http nothing extra is required. Does everything else work - is it just the subscribe() bit that times out?

macfarla (Fri, 18 Jun 2021 01:31:52 GMT):
For private Logs, you need to use the priv equivalent methods https://besu.hyperledger.org/en/stable/HowTo/Interact/Filters/Accessing-Logs-Using-JSON-RPC/#filters-for-private-contracts

HiteshSharma (Sat, 19 Jun 2021 07:37:26 GMT):
Well using Ethminer and starting it with pointing to the RPC URL of the node worked.

HiteshSharma (Sat, 19 Jun 2021 07:38:50 GMT):
``` ./ethminer -U --cu-block-size 32 --cu-grid-size 1 --cu-streams 1 -M 1 ``` Using the above command I successfully decreased the hash rate.

HiteshSharma (Sat, 19 Jun 2021 07:39:29 GMT):
From the original 25 MH/s, it limited to a min. of 220 KH/s.

dragnet (Sat, 19 Jun 2021 16:12:53 GMT):
Has joined the channel.

dragnet (Sat, 19 Jun 2021 16:12:54 GMT):
Hello everyone! I found this page on the interwebs: https://besu.hyperledger.org/en/stable/HowTo/Interact/APIs/RPC-PubSub/ And it contains something amazing: ``` {"id": 1, "method": "eth_subscribe", "params": ["newPendingTransactions", {"includeTransactions":false}]} ``` It's that `includeTransactions` toggle. It's a terrible omission from the websocket provider I'm using to inspect realtime swaps on PanCakeSwap. Is it possible to use your tech for a PanCakeSwap feed? i.e. on BSC blockchain...

dragnet (Sat, 19 Jun 2021 16:13:27 GMT):
I'm very new to this, so I'm aware this may be a dumb question.

dragnet (Sat, 19 Jun 2021 16:14:02 GMT):
I can't see if your technology is providing an alternative way to interact with an existing Ethereum-based blockchain, or if you're making a CUSTOM blockchain that supports such streams.

NicolasMassart (Sat, 19 Jun 2021 16:15:09 GMT):
Besu is a fully Ethereum compatible client but also allows to create private chains. If the chain you want to connect to follows Ethereum specs, it will work.

dragnet (Sat, 19 Jun 2021 16:15:36 GMT):
Wow!

dragnet (Sat, 19 Jun 2021 16:16:11 GMT):
What are the moves I need to make? Is there a wss endpoint I can use? Do I have to pay a subscription fee?

dragnet (Sat, 19 Jun 2021 16:17:15 GMT):
What are the moves I need to make? Is there a wss endpoint I can use? Do I have to pay a subscription fee?

NicolasMassart (Sat, 19 Jun 2021 16:17:16 GMT):
Hyperledger Besu is totally free and it's open source (Apache 2.0 lisence) so feel free to do whatever you want with it ;)

dragnet (Sat, 19 Jun 2021 16:17:31 GMT):
Sorry, just realized it's better to reply in-thread

dragnet (Sat, 19 Jun 2021 16:18:09 GMT):
Can you help me find my feet here?

dragnet (Sat, 19 Jun 2021 16:18:14 GMT):
What do I need to setup?

dragnet (Sat, 19 Jun 2021 16:18:29 GMT):
Is there a wss URL I can conect to?

dragnet (Sat, 19 Jun 2021 16:19:09 GMT):
Not wanting to help-vampire, but most grateful if you can help me align focus.

dragnet (Sat, 19 Jun 2021 16:20:28 GMT):
Or do I have to create my own local node?

dragnet (Sat, 19 Jun 2021 16:20:48 GMT):
Or do there exist providers?

NicolasMassart (Sat, 19 Jun 2021 16:21:30 GMT):
You have to run the node first. Have a look at the tutorials on the doc you already found. Then connect to the websocket endpoint provided by the node you will run.

dragnet (Sat, 19 Jun 2021 16:22:45 GMT):
Are you aware of any node providers, that would save me having to run my own node?

NicolasMassart (Sat, 19 Jun 2021 16:23:28 GMT):
For Ethereum mainnet and testnets yes, you have https://infura.io/ for instance.

NicolasMassart (Sat, 19 Jun 2021 16:24:07 GMT):
I can't tell for other networks using Ethereum technology that are not official mainnet and testneta.

dragnet (Sat, 19 Jun 2021 16:24:09 GMT):
I'm using QuikNode to stream PanCakeSwap swaps realtime.

dragnet (Sat, 19 Jun 2021 16:24:20 GMT):
But it doesn't support that `includeTransactions` flag.

dragnet (Sat, 19 Jun 2021 16:24:29 GMT):
I suspect Infura won't either, it's do makes no mention of it.

dragnet (Sat, 19 Jun 2021 16:24:37 GMT):
How come Besu is providing this?

dragnet (Sat, 19 Jun 2021 16:24:58 GMT):
It seems to offer a superset of the standard Etherrum websockets I see everywhere.

dragnet (Sat, 19 Jun 2021 16:25:30 GMT):
I'd need to find a provider running Besu nodes for BSC chain.

dragnet (Sat, 19 Jun 2021 16:25:51 GMT):
And Infura doesn't support BSC chain, I don't think...

dragnet (Sat, 19 Jun 2021 16:26:05 GMT):
For some reason I can't use Infura to do what I want.

NicolasMassart (Sat, 19 Jun 2021 16:26:49 GMT):
includeTransaction is part of the JSON-RPC Pub/Sub spec https://geth.ethereum.org/docs/rpc/pubsub so it should be included in all clients and api providers.

dragnet (Sat, 19 Jun 2021 16:32:39 GMT):
I already tried: ``` await self.streamer.send( json.dumps({ 'id': WS_BSC.ID_PENDING_TX, 'method': 'eth_subscribe', 'params': [ 'newPendingTransactions', { 'includeTransactions': True } ] }) ) ``` But it has no effect

dragnet (Sat, 19 Jun 2021 16:32:39 GMT):
I already tried: ``` await self.streamer.send( json.dumps({ 'id': WS_BSC.ID_PENDING_TX, 'method': 'eth_subscribe', 'params': [ 'newPendingTransactions', { 'includeTransactions': True } ] }) ) ``` But it has no effect

NicolasMassart (Sat, 19 Jun 2021 16:33:50 GMT):
You are right, maybe it's not implemented on all clients. I see some conversations about this in https://github.com/ethereum/go-ethereum/issues/15804

dragnet (Sat, 19 Jun 2021 16:34:33 GMT):
By 'client' do you mean wss-provider? Or would this be generic to all PanCakeSwap wss providers?

dragnet (Sat, 19 Jun 2021 16:36:26 GMT):
Ah yes, I found that issue yesterday.

dragnet (Sat, 19 Jun 2021 16:37:01 GMT):
The best I can do is monitor logs: ``` 'jsonrpc': '2.0', 'id': WS_BSC.ID_LOGS, 'method': 'eth_subscribe', 'params': [ 'logs', { 'address': [ self.pair_token, ], 'topics': [ HASH_FOR_SWAP, ] # HASH_FOR_SYNC } ] }) ```

NicolasMassart (Sat, 19 Jun 2021 16:37:02 GMT):
I don't even know was a pancakesawp provider is, it's application level and I'm not working on this, but only at L1 protocol level. I can only tell you that Besu as an Ethereum client probably implement this option. Then you can use it to connect to an Ethereum network. Sorry, that's all I know.

dragnet (Sat, 19 Jun 2021 16:38:17 GMT):
I'm probably using the wrong words. Trying to fit a lot of new technology into an old brain.

dragnet (Sat, 19 Jun 2021 16:38:35 GMT):
Thanks so much for your help!

NicolasMassart (Sat, 19 Jun 2021 16:38:55 GMT):
No worries, I hope you will fond what you are looking for.

fachamarchetti (Mon, 21 Jun 2021 03:06:15 GMT):
Has joined the channel.

Soul_man (Mon, 21 Jun 2021 11:19:19 GMT):
Has joined the channel.

Soul_man (Mon, 21 Jun 2021 11:19:20 GMT):
Hi all, We are using Hyperledger Besu (1.5.5) in out project and we tried to specify configuration file via `BESU_CONFIG_FILE` environment variable, but to no avail. Specifying same file via command line parameter (`--config-file`) works well. Does anyone had same issue?

Soul_man (Mon, 21 Jun 2021 11:26:45 GMT):
Judging by the code, `BESU_CONFIG_FILE` env variable is not taken into consideration when parsing at all. https://github.com/hyperledger/besu/blob/1.5.5/besu/src/main/java/org/hyperledger/besu/cli/util/ConfigOptionSearchAndRunHandler.java#L64 But it should be, if I read the docs. https://besu.hyperledger.org/en/1.5.5/Reference/CLI/CLI-Syntax/#config-file

Soul_man (Mon, 21 Jun 2021 11:27:06 GMT):
Am I doing something wrong?

Soul_man (Mon, 21 Jun 2021 11:58:04 GMT):
Created issue https://github.com/hyperledger/besu/issues/2455

rampatra (Mon, 21 Jun 2021 14:16:38 GMT):
When I load a private smart contract in web3j via `SmartContract.load()` method supplying the node and its private transaction manager, won't the `msg.sender` (for later interactions with the contract) have the address of node that I supplied initially in the load() method?

rampatra (Mon, 21 Jun 2021 14:26:31 GMT):
I am using web3j library (and have a smart contract named Contract) and was wondering whether the node supplied to the `Contract.deploy()` method should match the `msg.sender`? I understand that the msg.sender resembles the caller of the contract but in web3j, I deploy passing the node and then load the contract by passing the same node. So, I assumed the `msg.sender` should be the same as the node that I passed. But it doesn't look it. Can anyone pl tell me what I am missing here? Also, how do you get the address of the node using web3j? Is the `getAddress()` method in `Credentials` the right way?

rampatra (Mon, 21 Jun 2021 14:26:31 GMT):
I am using web3j library (and have a smart contract named Contract) and was wondering whether the node supplied to the `Contract.deploy()` method should match the `msg.sender`? I understand that the msg.sender resembles the caller of the contract but in web3j, I deploy passing the node and then load the contract by passing the same node. So, I assumed the `msg.sender` should be the same as the node that I passed. But it doesn't look like it. Can anyone pl tell me what I am missing here? Also, how do you get the address of the node using web3j? Is the `getAddress()` method in `Credentials` the right way?

NicolasMassart (Mon, 21 Jun 2021 14:28:43 GMT):
Hi, you may have more chances asking on Web3j community https://community.web3labs.com/c/web3j/6

rampatra (Mon, 21 Jun 2021 14:32:27 GMT):
Thanks Nicolas. I didn't know about this. Last I saw was a bitter chat which wasn't very active. I hope this new community is as active as this besu channel.

rampatra (Mon, 21 Jun 2021 14:32:27 GMT):
Thanks Nicolas. I didn't know about this. Last I saw was a gitter chat which wasn't very active. I hope this new community is as active as this besu channel.

mdwright88 (Mon, 21 Jun 2021 18:58:51 GMT):
Join our Besu contributor call today @ 6pm PST! *Here's the updated Wiki* https://wiki.hyperledger.org/display/BESU/2021-06-21+Besu+Contributor+Call We're going to cover: - QBFT Update - PKI Update - London Hard Fork + Besu Release Update Does anyone have anything to add?

SuzanaMaranhao (Mon, 21 Jun 2021 20:59:04 GMT):
I remember to read that Besu support the action of blacklist some smart contracts. Where can I read more about it? Is it a governance to support that?

SuzanaMaranhao (Mon, 21 Jun 2021 20:59:04 GMT):
I remember reading that Besu supports the action of blacklist some smart contracts. Where can I read more about it? Is it governance to support that?

lucassaldanha (Mon, 21 Jun 2021 21:41:09 GMT):
I believe this information is wrong. Let me know if you found this info in our offical documentation so we can make it clearer.

knagware9 (Tue, 22 Jun 2021 07:24:33 GMT):
Hi All, there is requirement for Besu corporate training for 4 weeks India time zone. Its customer requirement ,here anybody can provide corporate training on Hyperledger Besu ? Please DM me.

crispcosine (Tue, 22 Jun 2021 09:53:59 GMT):
Has joined the channel.

crispcosine (Tue, 22 Jun 2021 09:54:00 GMT):
Hey, Guys, please help me out, i'm stuck on an issue where, I want to run a besu node on rinkeby testnet using docker. I'm entering up this command as mentioned in the official doc `sudo docker run -p 30303:30303 --mount type=bind,source=/home/ubuntu/rinkbeyvol/besu/rinkeby,target=/var/lib/besu \ hyperledger/besu:latest \ --network=rinkeby \ --data-path=/var/lib/besu` On running this, I'm getting this error

crispcosine (Tue, 22 Jun 2021 09:55:05 GMT):

Clipboard - June 22, 2021 3:24 PM

crispcosine (Tue, 22 Jun 2021 09:55:17 GMT):
crispcosine 3:24 PM Hey, Guys, please help me out, i'm stuck on an issue where, I want to run a besu node on rinkeby testnet using docker. I'm entering up this command as mentioned in the official doc `sudo docker run -p 30303:30303 --mount type=bind,source=/home/ubuntu/rinkbeyvol/besu/rinkeby,target=/var/lib/besu \ hyperledger/besu:latest \ --network=rinkeby \ --data-path=/var/lib/besu` On running this, I'm getting this error

crispcosine (Tue, 22 Jun 2021 09:55:26 GMT):

Clipboard - June 22, 2021 3:25 PM

crispcosine (Tue, 22 Jun 2021 09:55:43 GMT):
Please someone help me resolve it

SuzanaMaranhao (Tue, 22 Jun 2021 14:03:43 GMT):

Clipboard - 22 de Junho de 2021 às 11:03

SuzanaMaranhao (Tue, 22 Jun 2021 14:03:46 GMT):
I was looking where I saw that. It was in the presentation.

SuzanaMaranhao (Tue, 22 Jun 2021 14:04:40 GMT):
I understand that I can code the permissioning contract to keep a CRUD of blacklist contracts and check for that. But I imagined there was a native support for that.

iamsdas (Tue, 22 Jun 2021 17:41:44 GMT):
Has joined the channel.

SuzanaMaranhao (Tue, 22 Jun 2021 19:11:15 GMT):
What happens when one machine needs to change the IP in a Besu network? I imagined that: - All institutions need to review firewall rules - It is necessary to update the permissioning config Condering that the IP is part of the e-node, is there any impact on the nodes peers? I imagined that they automatically connect with the new enode and ignore the old one. Is it the case?

SuzanaMaranhao (Tue, 22 Jun 2021 19:11:15 GMT):
What happens when one machine needs to change the IP in a Besu network? I imagined that: - All institutions need to review firewall rules - It is necessary to update the permissioning config Considering that the IP is part of the e-node, is there any impact on the nodes peers? I imagined that they automatically connect with the new enode and ignore the old one. Is it the case?

lucassaldanha (Wed, 23 Jun 2021 01:45:12 GMT):
Ah I'm sorry. Now I understand what you meant with your question. With account permissioning, you can have rules around what addresses (EOA or contracts) are allowed to perform some actions. The rules are implemented in smart contracts, so they can be customized. Our standard implementation does the opposite, a whitelist of addresses allowed to create transactions.

lucassaldanha (Wed, 23 Jun 2021 01:45:37 GMT):
Here is the link to the docs page: https://besu.hyperledger.org/en/latest/Concepts/Permissioning/Onchain-Permissioning/

lucassaldanha (Wed, 23 Jun 2021 01:45:58 GMT):
And here is where you can find our reference implementation of the permissioning smart contract: https://github.com/ConsenSys/permissioning-smart-contracts

lucassaldanha (Wed, 23 Jun 2021 01:46:32 GMT):
Let me know if you have more questions!

andic (Wed, 23 Jun 2021 06:23:30 GMT):
Has joined the channel.

andic (Wed, 23 Jun 2021 06:32:58 GMT):
I had a problem creating a private transaction.

andic (Wed, 23 Jun 2021 06:34:35 GMT):

Clipboard - 2021年6月23日下午2点34分

andic (Wed, 23 Jun 2021 06:36:20 GMT):
Here's the code I ran:

andic (Wed, 23 Jun 2021 06:36:49 GMT):

Clipboard - 2021年6月23日下午2点36分

SuzanaMaranhao (Wed, 23 Jun 2021 20:24:25 GMT):
Great, thank you, @lucassaldanha

raychan11111 (Thu, 24 Jun 2021 02:06:12 GMT):
Hi all. I have deployed a besu private network. I would like to enable the revert reason flag inside config.toml. May i know is it possible to edit this config file after the network is started?

raychan11111 (Thu, 24 Jun 2021 03:38:32 GMT):
Hi guys, I deployed a besu private network. I am wondering how do you guys handle smart contract revert reason? My use case is to log down the reason of a failed transaction e.g. you are not the owner, not enough token balance.... It seems that the offical document said that it is not recommend to set the revert-reason flag to true due to memory issue. https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#revert-reason-enabled . I found a way to handle it (https://blog.8bitzen.com/posts/12-12-2019-hyperledger-besu-web3j-where-is-my-revert-reason), i would like to know is it the only and the best way to handle the revert reason from smart contract?

macfarla (Fri, 25 Jun 2021 03:51:33 GMT):
If using discovery, the nodes should find each other. If using static nodes, you would have to update the static nodes file.

zandercreations (Fri, 25 Jun 2021 04:49:43 GMT):
Hi does the Blockchain Automation Framework Besu clique consensus available yet

zandercreations (Fri, 25 Jun 2021 04:49:43 GMT):
Hi is the Blockchain Automation Framework Besu clique consensus available yet??

saif_32 (Fri, 25 Jun 2021 06:09:45 GMT):
Has joined the channel.

sownak (Fri, 25 Jun 2021 08:15:26 GMT):
hello guys, is there any example of Besu with tessera TLS enabled? I have checked the Besu-kubernetes repo and the examples are only without TLS.

matkt (Fri, 25 Jun 2021 08:57:30 GMT):
there is no other way to handle the revert reasons as far as I know. this is for me the best solution

SuzanaMaranhao (Fri, 25 Jun 2021 20:08:18 GMT):
If one VALIDATOR needs to change the IP in a Besu network and - there is no static nodes - the private/public key/node account is not changed What need to be done? I imagined that I need to regenerate the e-node using the new IP. Since the validator account is not going to change, I imagined that there is no need to start a voting session, right?

recarelee (Sat, 26 Jun 2021 02:29:43 GMT):
Hi All, are there any bug reporting programs for Besu Ethereum client?

shemnon (Sat, 26 Jun 2021 14:59:03 GMT):
For normal issues there is GithubIssues - https://github.com/hyperledger/besu/issues For issues with a security impact here's the protocol - https://github.com/hyperledger/besu/blob/master/SECURITY.md I don't think anyone has a bug bounty that has Besu in scope.

shemnon (Sat, 26 Jun 2021 14:59:03 GMT):
For normal issues there is Github Issues - https://github.com/hyperledger/besu/issues For issues with a security impact here's the protocol - https://github.com/hyperledger/besu/blob/master/SECURITY.md I don't think anyone has a bug bounty that has Besu in scope.

macfarla (Mon, 28 Jun 2021 01:55:23 GMT):
Can you share the besu config you're using?

macfarla (Mon, 28 Jun 2021 01:57:33 GMT):
Are you talking IBFT2?

raychan11111 (Mon, 28 Jun 2021 06:41:11 GMT):
Hi guys, did anyone have set a persistent volume on private besu network on kubernetes? I encounter some problem on it. Below are some screenshots.

raychan11111 (Mon, 28 Jun 2021 06:41:58 GMT):

Clipboard - June 28, 2021 2:41 PM

raychan11111 (Mon, 28 Jun 2021 06:43:09 GMT):

Clipboard - June 28, 2021 2:42 PM

raychan11111 (Mon, 28 Jun 2021 08:41:42 GMT):
It seems to be fixed by adding securitycontext magically, but dunno what has happened lol https://github.com/prometheus-operator/prometheus-operator/issues/541

VijayMichalik (Mon, 28 Jun 2021 12:08:48 GMT):
Hi @raychan11111, I'll defer to someone with expertise in this to look deeper for you, but have you tried following our the templates here https://github.com/ConsenSys/quorum-kubernetes?

VijayMichalik (Mon, 28 Jun 2021 12:08:48 GMT):
Hi @raychan11111, I'll defer to someone with expertise in this to look deeper for you, but have you tried following the templates here? https://github.com/ConsenSys/quorum-kubernetes

sownak (Mon, 28 Jun 2021 14:36:16 GMT):
nevermind, figured it out. Let me know if anyone else needs to understand it.

sownak (Mon, 28 Jun 2021 14:38:23 GMT):
Because adding the securitycontext correctly updated the user which is running the container and that user now has access to the volume which was mounted at /data

SuzanaMaranhao (Mon, 28 Jun 2021 19:23:37 GMT):
Yes

raychan11111 (Tue, 29 Jun 2021 04:23:31 GMT):
@VijayMichalik Yes my kubernetes cluster use their templates. @sownak Thanks The problem is solved. I can use the pv for my cluster

machadovilaca (Tue, 29 Jun 2021 14:25:04 GMT):
Hello, I'm setting up a private network, using RocksDB as the key-value storage. Right now, RocksDB is creating a lot of log files. Is there any way I can configure their "DBOptions", namely the "keep_log_file_num" parameter?

jframe (Wed, 30 Jun 2021 05:46:59 GMT):
If your ip address changes then your enode address will also change. Any node connected to the old node will loose the peer connection when the ip changes, this might take awhile though. Node discovery will also the new node to added as peer again with the new ip to the existing nodes. IBFT2 only considers the address derived from the node account or public key in determining which nodes are validators. It doesn't care about the enode or ip address. So if the node key hasn't changed then IBFT2 will treat node with new ip same as the old node as far as being a validator. There is no need to vote in the new validator if the ip address has changed. For IBFT2 to function correctly it is important that the old peer is not still a peer for the other validator nodes after the ip changes and that the new nodes have a new peer connection with your validator with the new ip. The reason for this is that we will gossip IBFT2 messages to the peers that match validator addresses and if there is more than one peer with the same validator address we will choose the first one, which might not be node you expect. You can use the https://besu.hyperledger.org/en/latest/Reference/API-Methods/#admin_peers to see what peers the nodes have.

jframe (Wed, 30 Jun 2021 05:46:59 GMT):
If your ip address changes then your enode address will also change. Any node connected to the old node will loose the peer connection when the ip changes, this might take awhile though. Node discovery will also add the new node as peer again with the new ip for the existing nodes. IBFT2 only considers the address derived from the node account or public key in determining which nodes are validators. It doesn't care about the enode or ip address. So if the node key hasn't changed then IBFT2 will treat node with new ip same as the old node as far as being a validator. There is no need to vote in the new validator if the ip address has changed. For IBFT2 to function correctly it is important that the old peer is not still a peer for the other validator nodes after the ip changes and that the new nodes have a new peer connection with your validator with the new ip. The reason for this is that we will gossip IBFT2 messages to the peers that match validator addresses and if there is more than one peer with the same validator address we will choose the first one, which might not be node you expect. You can use the https://besu.hyperledger.org/en/latest/Reference/API-Methods/#admin_peers to see what peers the nodes have.

jframe (Wed, 30 Jun 2021 05:46:59 GMT):
If your ip address changes then your enode address will also change. Any node connected to the old node will loose the peer connection when the ip changes, this might take awhile though. Node discovery will also add the new node as peer again with the new ip for the existing nodes. IBFT2 only considers the address derived from the node account or public key in determining which nodes are validators. It doesn't care about the enode or ip address. So if the node key hasn't changed then IBFT2 will treat node with new ip same as the old node as far as being a validator. There is no need to vote in the validator again if the ip address has changed. For IBFT2 to function correctly it is important that the old peer is not still a peer for the other validator nodes after the ip changes and that the new nodes have a new peer connection with your validator with the new ip. The reason for this is that we will gossip IBFT2 messages to the peers that match validator addresses and if there is more than one peer with the same validator address we will choose the first one, which might not be node you expect. You can use the https://besu.hyperledger.org/en/latest/Reference/API-Methods/#admin_peers to see what peers the nodes have.

VijayMichalik (Wed, 30 Jun 2021 10:42:00 GMT):
Copying from a previous answer here: That's the write-ahead-log, so you shouldn't delete them, RocksDB should delete them when they are merged in. Generally speaking deleting or editing anything in .../database could cause data corruption.

VijayMichalik (Wed, 30 Jun 2021 10:55:37 GMT):
Let me know how you get on with the rest of your setup, always interested in feedback!

VijayMichalik (Fri, 02 Jul 2021 10:52:53 GMT):
always interested in feedback! was the documentation unclear? do you have any other suggestions?

sownak (Fri, 02 Jul 2021 10:57:58 GMT):
There are no examples for TLS (besu-kubernetes only has examples of TLS OFF). Incidentally, I found more details in one of your open issues https://github.com/hyperledger/besu/issues/2045

VijayMichalik (Fri, 02 Jul 2021 11:19:25 GMT):
ah yes, you're absolutely right. we have some docs improvements in progress over here, hopefully they'll get looked at soon: https://github.com/ConsenSys/doc.tessera/issues/88

rjones (Fri, 02 Jul 2021 23:09:54 GMT):

rjones (Fri, 02 Jul 2021 23:09:54 GMT):

rjones (Fri, 02 Jul 2021 23:09:54 GMT):

pmn2090 (Sat, 03 Jul 2021 01:08:19 GMT):
Has joined the channel.

vakster (Sat, 03 Jul 2021 07:01:03 GMT):
Has joined the channel.

BravoNatalie (Sat, 03 Jul 2021 10:55:01 GMT):
Has joined the channel.

BravoNatalie (Sat, 03 Jul 2021 10:56:55 GMT):

Screenshot from 2021-07-03 07-40-15.png

AsifMesbah (Sun, 04 Jul 2021 01:00:45 GMT):
Has joined the channel.

EmcLab (Sun, 04 Jul 2021 04:52:14 GMT):
Hi All, I would like to retrieve transactions for an address during period of time. I was told that the transactions need to be indexed first Is there any example or document for such type of application? Many thanks.

IoanSlavu (Sun, 04 Jul 2021 17:21:29 GMT):
Has joined the channel.

sg1408 (Sun, 04 Jul 2021 19:01:33 GMT):
Has joined the channel.

Kenneth-Luster (Sun, 04 Jul 2021 23:21:49 GMT):
Has joined the channel.

raychan11111 (Mon, 05 Jul 2021 03:07:27 GMT):
Hi all, I have a kubernetes private network. I am trying to add validator. I ssh to the node, go inside the besu docker container, install curl, then run curl -X POST --data '{"jsonrpc":"2.0","method":"ibft_proposeValidatorVote","params":["0xf9d1b75f43193fc237b6f0a09167ef9407fc1c82", true], "id":1}' http://jsonrpc.besu.svc.cluster.local:8545 to propose adding a validator I repeated the above steps for all 4 validators which are separated in different nodes and docker containers. But, it seems that the proposed validator is not added when i run curl -X POST --data '{"jsonrpc":"2.0","method":"ibft_getValidatorsByBlockNumber","params":["latest"], "id":1}' http://jsonrpc.besu.svc.cluster.local:8545 which just returns the original 4 validators.

raychan11111 (Mon, 05 Jul 2021 03:07:47 GMT):

add validatorproblem2.PNG

raychan11111 (Mon, 05 Jul 2021 03:09:43 GMT):
I am wondering did i do something wrong? Is there any way to debug this problem?

bphan (Mon, 05 Jul 2021 05:00:24 GMT):
Has joined the channel.

gokulraj17687 (Mon, 05 Jul 2021 05:14:14 GMT):
Has joined the channel.

gokulraj17687 (Mon, 05 Jul 2021 05:19:43 GMT):
Can we get Enterprise Support for Hyperledger Besu and its RocksDB

gokulraj17687 (Mon, 05 Jul 2021 05:20:16 GMT):
Can we use any other Enterprise DB instead of RocksDB for Hyperledger Besu

antonydenyer (Mon, 05 Jul 2021 05:37:22 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=Kiu7ZncRWqFgM7E6u) You can write a plugin to wire it up to whatever db you want. e.g https://github.com/abdelhamidbakhta/besu-storage-redis it's just a key value store. I guess it depends why you want to use something else.

BravoNatalie (Mon, 05 Jul 2021 09:15:24 GMT):
Hey there! I was following the quickstart tutorial and I found out the docker-compose file is broken. I create a question on StackOverflow. Can someone help me? https://stackoverflow.com/q/68235488/11411571

mturetchi (Mon, 05 Jul 2021 10:53:36 GMT):
Has joined the channel.

VijayMichalik (Mon, 05 Jul 2021 11:01:25 GMT):
Thanks Natalie! I'll get someone to check this out for you- not sure we've seen this issue before. What sort of machine are you running on?

sharkrit (Mon, 05 Jul 2021 18:20:50 GMT):
Has joined the channel.

QuasiStellar (Mon, 05 Jul 2021 19:00:35 GMT):
Has joined the channel.

LikithS (Mon, 05 Jul 2021 19:51:40 GMT):
Has joined the channel.

sakthi.raju (Tue, 06 Jul 2021 04:39:14 GMT):
Has joined the channel.

mahendraswain (Tue, 06 Jul 2021 05:15:07 GMT):
Has joined the channel.

shanest (Tue, 06 Jul 2021 05:25:59 GMT):
Has joined the channel.

yujinpark (Tue, 06 Jul 2021 05:50:18 GMT):
Has joined the channel.

yujinpark (Tue, 06 Jul 2021 05:54:59 GMT):
I've got a same problem. I use macOs(catalina).

vshawn (Tue, 06 Jul 2021 07:06:54 GMT):
Has joined the channel.

ahmedMokadem (Tue, 06 Jul 2021 08:59:01 GMT):
hello, I have deployed yesterday a besu node with the version 21.7.0-RC2 with syncing mode FAST and the network is MAINNET but since yesterday the node is stuck at this error 2021-07-05 16:54:48.447+00:00 | Timer-0 | ERROR | Besu | Uncaught exception in thread "Timer-0" java.nio.channels.ClosedChannelException at java.base/java.nio.channels.spi.AbstractSelectableChannel.register(Unknown Source) at org.xbill.DNS.NioTcpClient.processPendingRegistrations(NioTcpClient.java:42) at java.base/java.util.concurrent.CopyOnWriteArrayList.forEach(Unknown Source) at org.xbill.DNS.Client.runSelector(Client.java:68) at java.base/java.lang.Thread.run(Unknown Source) Could someone help pliz it's urgent and i must resolved ASAP.

chhokra (Tue, 06 Jul 2021 09:38:57 GMT):
Has joined the channel.

cpsatav (Tue, 06 Jul 2021 10:14:16 GMT):
Has joined the channel.

vasile135 (Tue, 06 Jul 2021 15:36:45 GMT):
Has joined the channel.

VijayMichalik (Tue, 06 Jul 2021 19:47:36 GMT):
Hey @yujinpark are you using an M1 Mac by any chance?

CalebLiu (Wed, 07 Jul 2021 02:48:52 GMT):
Has joined the channel.

drewmattic (Wed, 07 Jul 2021 04:58:03 GMT):
Has joined the channel.

gt88 (Wed, 07 Jul 2021 11:40:04 GMT):
Has joined the channel.

tychobrailleur (Wed, 07 Jul 2021 12:26:05 GMT):
Has joined the channel.

alanveloso (Wed, 07 Jul 2021 12:52:14 GMT):
Has joined the channel.

ReufRujevic (Wed, 07 Jul 2021 14:08:44 GMT):
Has joined the channel.

yujinpark (Thu, 08 Jul 2021 07:10:17 GMT):
no I'm using intel chip. and Catalina 10.15.7

yujinpark (Thu, 08 Jul 2021 07:41:31 GMT):
i fixed the problem, using quorum-dev-quickstart@0.0.27.

AndreEsteves (Thu, 08 Jul 2021 10:56:17 GMT):
Has joined the channel.

matkt (Thu, 08 Jul 2021 11:20:04 GMT):
Hi, please could you tell me on what environment launched you besu and with what parameters

mkm 14 (Thu, 08 Jul 2021 14:00:03 GMT):
Has joined the channel.

mkm 14 (Thu, 08 Jul 2021 14:02:08 GMT):
how do I read the log file created by besu code ?

VijayMichalik (Thu, 08 Jul 2021 14:23:32 GMT):
thanks yeah, we found the problem and resolved it in the latest version!

VijayMichalik (Thu, 08 Jul 2021 14:26:47 GMT):
https://github.com/ConsenSys/quorum-dev-quickstart/pull/82 for reference

VijayMichalik (Thu, 08 Jul 2021 14:27:55 GMT):
Hi @mkm 14, we recommend use of Elastic Stack (ELK) https://besu.hyperledger.org/en/stable/HowTo/Monitor/Elastic-Stack/

mkm 14 (Thu, 08 Jul 2021 15:45:18 GMT):
https://markets.businessinsider.com/currencies/news/ethereum-upgrade-ether-eth-destory-coins-eip1559-eth2-developers-2021-7 - is this code available for download ?

shemnon (Thu, 08 Jul 2021 15:48:36 GMT):
Yes, it's the current main branch. A formal release (v21.7.0) is happening later this week or next.

mkm 14 (Thu, 08 Jul 2021 15:51:54 GMT):
but I do not see that change on latest besu code I have which is "version=21.7.0-SNAPSHOT"

shemnon (Thu, 08 Jul 2021 15:58:22 GMT):
The flag was flipped here: https://github.com/hyperledger/besu/pull/2504

Cryptohash (Thu, 08 Jul 2021 16:11:07 GMT):
Has joined the channel.

Cryptohash (Thu, 08 Jul 2021 16:11:21 GMT):
hello

Cryptohash (Thu, 08 Jul 2021 16:12:23 GMT):
Quick question, so I installed Dev quick-start & I can't seem to send any transactions via the web 3 wallet.

Cryptohash (Thu, 08 Jul 2021 16:13:09 GMT):
and idea on why my transactions aren't going through?

Cryptohash (Thu, 08 Jul 2021 16:17:34 GMT):
Im connected to localhost properly; the transaction stalls at pending.

ahmedMokadem (Thu, 08 Jul 2021 16:22:06 GMT):
in was lunched on Preprod with : - network : ropsten - deployed from backup - version : 21.7.0-RC2 - sync-mode="FAST" - rpc-http-host="0.0.0.0" - rpc-http-enabled=true - data-path="/var/lib/besu"

Cryptohash (Thu, 08 Jul 2021 16:39:51 GMT):

quorum-test-network_—_-zsh_—_152×39_and_Besu_Overview_-_Grafana.png

mkm 14 (Thu, 08 Jul 2021 17:35:25 GMT):
I am trying to implement some logic for burning coins for transfer. I am trying to understand the in-built logic for this. can you point me to the correct place ? I am running besu

mkm 14 (Thu, 08 Jul 2021 18:01:50 GMT):
is the log written anywhere on a file? Where do I parametrize this ?

shemnon (Thu, 08 Jul 2021 18:57:03 GMT):
1559 only burns eth. It doesn't burn tokens. And it only burns it per the basefee as part of the transaction fees. And by burns the deducted amounts "burnt" are not sent to the miner. So I'm not sure what you are looking for. @matkt and @abdelhamidbakhta are the experts on that section of code.

Najetbh83 (Thu, 08 Jul 2021 19:33:56 GMT):
Has joined the channel.

mkm 14 (Thu, 08 Jul 2021 19:42:14 GMT):
nvm, I got it. Thanks

mkm 14 (Thu, 08 Jul 2021 20:28:54 GMT):
I deployed a besu network with gasprice:0 in the truffle-config.js file. when the user make a transfer thru metamask, will there be any gas fee charged?

hoang-innomizetech (Fri, 09 Jul 2021 03:56:49 GMT):
Has joined the channel.

msarres (Fri, 09 Jul 2021 11:33:51 GMT):
Has joined the channel.

VijayMichalik (Fri, 09 Jul 2021 15:03:29 GMT):
hi, you also need to configure the genesis.json as in this documentation https://besu.hyperledger.org/en/stable/HowTo/Configure/FreeGas/

VijayMichalik (Fri, 09 Jul 2021 15:03:39 GMT):
let us know if you run into issues

VijayMichalik (Fri, 09 Jul 2021 15:04:43 GMT):
Hey, which version are you using?

Cryptohash (Fri, 09 Jul 2021 15:27:21 GMT):
MetaMask Version 9.7.1

mkm 14 (Fri, 09 Jul 2021 15:40:06 GMT):
Thanks. Actually we did not deploy using truffle. Deployed a besu privte network using https://besu.hyperledger.org/en/1.3.0/Tutorials/Private-Network/Create-Private-Network/ and use --min-gas-price=0 in the command line. Is that enough to keep the gas price to zero in all cases ? What happens if a user adds gas price greater than zero while doing a transfer thru metamask ? will the gas fee still be zero ?

VijayMichalik (Fri, 09 Jul 2021 16:20:43 GMT):
sorry! I mean which version of the quorum developer quickstart. also what operating system and docker version are you using? thanks!

VijayMichalik (Fri, 09 Jul 2021 16:36:42 GMT):
ok yeah, I believe the user must also ensure gas price is 0 in their transaction. I'll confirm this one

AndrewStarling (Sat, 10 Jul 2021 03:58:53 GMT):
Has joined the channel.

cbfh (Sat, 10 Jul 2021 08:12:21 GMT):
Hi everyone, how many transactions per second can a PoA/Clique Besu network achieve?

ritikbhandari (Sat, 10 Jul 2021 09:48:21 GMT):
Has joined the channel.

atirikt (Sat, 10 Jul 2021 09:54:10 GMT):
Has joined the channel.

CopyBilla (Sat, 10 Jul 2021 14:18:07 GMT):
Has joined the channel.

shemnon (Sat, 10 Jul 2021 18:18:30 GMT):
Topology is the main limiter at the moment. 300tps has been done with caliper with 4 signers and 1 large RPC node with IBFT2. RPC and test harness overhead was the bottleneck (No need to query every receipt individally 1s after completion).

shemnon (Sat, 10 Jul 2021 18:18:42 GMT):
I expect lower numbers with clique because of the non-deterministic setup.

shemnon (Sat, 10 Jul 2021 18:18:42 GMT):
I expect lower numbers with clique because of the non-deterministic protocol and lack of finalization.

danielszego (Sat, 10 Jul 2021 18:47:00 GMT):
Has joined the channel.

AkshatCy2012sn (Sat, 10 Jul 2021 21:14:31 GMT):
Has joined the channel.

tim-trutech (Sat, 10 Jul 2021 21:27:39 GMT):
Has joined the channel.

ritvij14 (Sun, 11 Jul 2021 03:37:53 GMT):
Has joined the channel.

TomRobertson1 (Sun, 11 Jul 2021 17:11:48 GMT):
Has joined the channel.

eharris128 (Sun, 11 Jul 2021 23:03:06 GMT):
Has joined the channel.

davidviejopomata (Mon, 12 Jul 2021 14:20:50 GMT):
Has joined the channel.

mkm 14 (Mon, 12 Jul 2021 15:00:54 GMT):
@matkt , is this basefee configurable thru genesis file ? can you please point me to documentation/example ?

IV12 (Mon, 12 Jul 2021 15:09:54 GMT):
Has joined the channel.

jmaric (Mon, 12 Jul 2021 15:47:58 GMT):
Has joined the channel.

mkm 14 (Mon, 12 Jul 2021 16:08:24 GMT):
@shemnon , can you show me an example how to set this base fee ?

piyushap (Mon, 12 Jul 2021 16:21:48 GMT):
Has joined the channel.

shemnon (Mon, 12 Jul 2021 16:37:02 GMT):
You don't set the basefee. It floats as a function of the block size.

mkm 14 (Mon, 12 Jul 2021 16:40:55 GMT):
I see a param "baseFeePerGas" in GenesisConfigFile.java . so I assumed it is a configurable thru genesid file

mkm 14 (Mon, 12 Jul 2021 16:40:55 GMT):
I see a param "baseFeePerGas" in GenesisConfigFile.java . so I assumed it is a configurable thru genesis file

mkm 14 (Mon, 12 Jul 2021 16:41:44 GMT):
if not, can you get me the documentation on this ?

mkm 14 (Mon, 12 Jul 2021 18:04:34 GMT):
@shemnon , Is there any documentation on how this base fee is implemented ?

mkm 14 (Mon, 12 Jul 2021 18:59:29 GMT):
@VijayMichalik , do you know whether I can add a base fee in genesis file like "baseFeePerGas":"2", ?

shemnon (Mon, 12 Jul 2021 19:13:08 GMT):
https://eips.ethereum.org/EIPS/eip-1559

Aurelio 8 (Mon, 12 Jul 2021 20:21:13 GMT):
Has joined the channel.

NancyL 4 (Mon, 12 Jul 2021 20:24:03 GMT):
Has joined the channel.

mfrodriguezc (Mon, 12 Jul 2021 23:36:18 GMT):
Has joined the channel.

hkiridera (Tue, 13 Jul 2021 07:08:10 GMT):
Has joined the channel.

bt333 (Tue, 13 Jul 2021 11:42:30 GMT):
Has joined the channel.

VijayMichalik (Tue, 13 Jul 2021 16:34:07 GMT):
let me look into this

grace.hartley (Tue, 13 Jul 2021 16:40:09 GMT):
:wave: Just want to say welcome to all the recent new joiners in this channel! We are excited to have you here! We're here to answer questions you have. Feel free to check out our contributor guide or check out good first issues on Besu. :besu: https://wiki.hyperledger.org/display/BESU/How+to+Contribute https://github.com/hyperledger/besu/labels/good%20first%20issue

lfrattini (Tue, 13 Jul 2021 19:26:12 GMT):
Has joined the channel.

alebaffa (Wed, 14 Jul 2021 05:15:47 GMT):
Has joined the channel.

TuureLainen (Wed, 14 Jul 2021 06:25:32 GMT):
Has joined the channel.

MartinAulich (Wed, 14 Jul 2021 07:14:56 GMT):
Has joined the channel.

PatrickHerbke-TUBerlin (Wed, 14 Jul 2021 08:22:49 GMT):
Has joined the channel.

umeraqeel (Wed, 14 Jul 2021 10:36:01 GMT):
Has joined the channel.

jkbpvsc (Wed, 14 Jul 2021 12:41:08 GMT):
Has joined the channel.

tonybka (Wed, 14 Jul 2021 14:03:54 GMT):
Has joined the channel.

XINGYUZHU (Wed, 14 Jul 2021 14:37:01 GMT):
Has joined the channel.

janrockdev (Wed, 14 Jul 2021 15:53:07 GMT):
Has joined the channel.

janrockdev (Wed, 14 Jul 2021 15:55:43 GMT):
Has left the channel.

KOttoni (Wed, 14 Jul 2021 17:53:17 GMT):
Has joined the channel.

mkm 14 (Wed, 14 Jul 2021 19:53:39 GMT):
@shemnon , Cant we set an an initial base fee?. If yes, I would like to know how

rcraswell (Wed, 14 Jul 2021 23:13:00 GMT):
Has joined the channel.

TIMO_ReDWit (Thu, 15 Jul 2021 05:42:03 GMT):
Has joined the channel.

bharathkumar_m (Thu, 15 Jul 2021 14:13:58 GMT):
Has joined the channel.

alextrafimau (Thu, 15 Jul 2021 14:24:46 GMT):
Has joined the channel.

sgpokala (Thu, 15 Jul 2021 16:44:24 GMT):
Has joined the channel.

mkm 14 (Thu, 15 Jul 2021 16:52:27 GMT):
it looks like if you add a non-zero gasPrice in the metamask, it charges a gasFee.

mkm 14 (Thu, 15 Jul 2021 16:54:40 GMT):
Does anyone know how to test new 1599 ETH burn? does it be triggered if I do a transfer between accounts ? Can I add a base fee in genesis file like "baseFeePerGas":"2", ?

VijayMichalik (Thu, 15 Jul 2021 17:16:15 GMT):
yep, I think the requirement is still there for the user to correctly specify 0 gas in their transaction

brett7297 (Thu, 15 Jul 2021 17:35:49 GMT):
Has joined the channel.

pranjal23 (Thu, 15 Jul 2021 19:04:08 GMT):
Has joined the channel.

gokulraj17687 (Fri, 16 Jul 2021 05:47:53 GMT):
Hi Team, How can i see rocksdb .sst files contents? I tried with sst_dump tool. But not able to see the payloads. Any suggestions ?

richarde 7 (Fri, 16 Jul 2021 06:51:34 GMT):
Has joined the channel.

dominichawton (Fri, 16 Jul 2021 10:20:33 GMT):
Has joined the channel.

Sowjanya_Segu (Fri, 16 Jul 2021 10:45:50 GMT):
Has joined the channel.

DmitryHalahayeu (Fri, 16 Jul 2021 13:23:57 GMT):
Has joined the channel.

mdhasan (Fri, 16 Jul 2021 13:48:06 GMT):
Has joined the channel.

Lupusalix (Fri, 16 Jul 2021 13:57:20 GMT):
Has joined the channel.

Laichonious (Fri, 16 Jul 2021 16:20:03 GMT):
Has joined the channel.

pSchlarb (Fri, 16 Jul 2021 16:43:32 GMT):
Has joined the channel.

ChandramouliMaduri (Fri, 16 Jul 2021 20:58:23 GMT):
Has joined the channel.

mostafafares (Fri, 16 Jul 2021 21:46:55 GMT):
Has joined the channel.

hackerunet (Sat, 17 Jul 2021 01:51:08 GMT):
Has joined the channel.

phamhung (Sat, 17 Jul 2021 02:00:11 GMT):
Has joined the channel.

ederro (Sat, 17 Jul 2021 02:08:49 GMT):
Has joined the channel.

noe305 (Sat, 17 Jul 2021 02:10:53 GMT):
Has joined the channel.

itsbalamurali (Sat, 17 Jul 2021 08:45:48 GMT):
Has joined the channel.

Sowjanya_Segu (Sat, 17 Jul 2021 10:25:21 GMT):
How to deploy DAML smart contract on Besu?

piratesmile (Sat, 17 Jul 2021 12:28:05 GMT):
Has joined the channel.

RajanHarshit (Sat, 17 Jul 2021 15:37:36 GMT):
Has joined the channel.

otfreetime (Sun, 18 Jul 2021 06:37:28 GMT):
Has joined the channel.

kaushambi (Sun, 18 Jul 2021 06:40:33 GMT):
Has joined the channel.

igorkrupczynski (Sun, 18 Jul 2021 08:31:50 GMT):
Has joined the channel.

fghiasy (Mon, 19 Jul 2021 00:59:58 GMT):
Has joined the channel.

bhavesh.c (Mon, 19 Jul 2021 04:58:02 GMT):
Has joined the channel.

grim 37 (Mon, 19 Jul 2021 08:27:10 GMT):
Has joined the channel.

grim 37 (Mon, 19 Jul 2021 08:30:16 GMT):
Hi any more information on which transaction was used for this test? How much gas did the tx use?

grim 37 (Mon, 19 Jul 2021 08:30:45 GMT):
Hi, anyone here that can help with creating a qbft network with both quorum and besu nodes on it?

Steit (Mon, 19 Jul 2021 09:59:16 GMT):
Has joined the channel.

GuntherWalden (Mon, 19 Jul 2021 13:13:15 GMT):
Has joined the channel.

shemnon (Mon, 19 Jul 2021 14:24:17 GMT):
This repo using caliper: https://github.com/ConsenSys/quorum-benchmarks with mostly this contract one run for register one run for verify - https://github.com/ConsenSys/quorum-benchmarks/blob/main/besu/terraform/aws/ibftScale/files/caliperProject/src/besu/covid/CovidCredentialRegistry.sol

MatthiasGeihs.Perun (Mon, 19 Jul 2021 15:07:59 GMT):
Has joined the channel.

AtulPandeySaw (Tue, 20 Jul 2021 05:31:44 GMT):
Has joined the channel.

Prerana72 (Tue, 20 Jul 2021 05:43:25 GMT):
Has joined the channel.

JohnWick2704 (Tue, 20 Jul 2021 06:16:59 GMT):
Has joined the channel.

RositsaKrasteva (Tue, 20 Jul 2021 08:34:03 GMT):
Has joined the channel.

MaternaDev (Tue, 20 Jul 2021 08:48:12 GMT):
Has joined the channel.

RyanEckersfield (Tue, 20 Jul 2021 08:52:57 GMT):
Has joined the channel.

indisateesh (Tue, 20 Jul 2021 11:05:21 GMT):
Has joined the channel.

DeepaliGupta (Tue, 20 Jul 2021 12:54:28 GMT):
Has joined the channel.

gautamarora24 (Tue, 20 Jul 2021 16:14:53 GMT):
Has joined the channel.

dhoffman32 (Tue, 20 Jul 2021 18:11:38 GMT):
Has joined the channel.

romenon2703 (Wed, 21 Jul 2021 05:43:58 GMT):
Has joined the channel.

nehajain20683 (Wed, 21 Jul 2021 07:19:54 GMT):
Has joined the channel.

yaozhaoyuan (Wed, 21 Jul 2021 07:57:05 GMT):
Has joined the channel.

bhaaratkhatri (Wed, 21 Jul 2021 08:22:16 GMT):
Has joined the channel.

Maginaro (Wed, 21 Jul 2021 10:02:23 GMT):
Has joined the channel.

grim 37 (Wed, 21 Jul 2021 13:08:36 GMT):
Thanks for the info! Can caliper hit different RPC nodes to simulate typical blockchain network usage? Or would one need to put a load balancer before multiple RPC nodes to be able to do that?

shemnon (Wed, 21 Jul 2021 14:01:14 GMT):
Caliper supports that, although we didn't configure it for that test. Add more RPC nodes and more caliper workers and point each worker to a different node. Once the bottleneck becomes block production you've scaled rpc enough.

shemnon (Wed, 21 Jul 2021 14:01:37 GMT):
Block production being the bottleneck will manifest as block time increasing.

VijayMichalik (Wed, 21 Jul 2021 15:49:13 GMT):
Welcome new chat members! You can find our documentation here https://besu.hyperledger.org/en/stable/ and our updated roadmap here https://wiki.hyperledger.org/display/BESU/Roadmap

mkm 14 (Wed, 21 Jul 2021 16:18:28 GMT):
@VijayMichalik, is there any documentation available on how to set up the base fee?

yo-va-ni (Wed, 21 Jul 2021 18:06:55 GMT):
Has joined the channel.

ideree (Thu, 22 Jul 2021 11:41:43 GMT):
Has joined the channel.

septcinquante (Thu, 22 Jul 2021 15:21:41 GMT):
Has joined the channel.

mianko (Thu, 22 Jul 2021 15:52:29 GMT):
Has joined the channel.

faizulbari (Thu, 22 Jul 2021 16:00:29 GMT):
Has joined the channel.

AmarSrivastava1 (Thu, 22 Jul 2021 16:16:52 GMT):
Has joined the channel.

GarySchulte (Thu, 22 Jul 2021 17:30:33 GMT):
if you want to 'test drive' 1559, I would suggest setting up a local besu clique network with a london fork block in the genesis file. If you do not specify an initial base fee, it will default to 1 gwei

GarySchulte (Thu, 22 Jul 2021 17:33:35 GMT):
here is an example genesis I have been using for a local clique testnet, with the london transition block set to block 10: https://gist.github.com/garyschulte/fab7ff07cfcff78eefdf3f1b1b75ee94

cpux07 (Thu, 22 Jul 2021 18:49:09 GMT):
Has joined the channel.

playswithblocks (Thu, 22 Jul 2021 19:06:31 GMT):
Has joined the channel.

allysonugarte (Thu, 22 Jul 2021 19:21:05 GMT):
Has joined the channel.

jframe (Thu, 22 Jul 2021 23:02:44 GMT):
This won't be possible until the 21.7.0 release of quorum that has qbft support. You get started with a Besu qbft network though using Besu qbft docs https://besu.hyperledger.org/en/latest/HowTo/Configure/Consensus-Protocols/QBFT/

LucyLow (Fri, 23 Jul 2021 01:10:07 GMT):
Has joined the channel.

ManojTaleka (Fri, 23 Jul 2021 06:29:27 GMT):
Has joined the channel.

drinkcoffee (Fri, 23 Jul 2021 07:44:38 GMT):
Is the Private Network Example current? A warning is reported in start-up of one of the besu nodes and the blockchain does not appear to generate any blocks. The example is here: https://besu.hyperledger.org/en/stable/Tutorials/Examples/Private-Network-Example/ The error message is: {"timestamp":"2021-07-23T07:04:22,084","container":"87fe09767ea2","level":"WARN","thread":"main","class":"Besu","message":"--min-gas-price ignored because none of --miner-enabled or isQuorum (in genesis file) was defined.","throwable":""}

GrahamLeach (Fri, 23 Jul 2021 08:17:28 GMT):
Has joined the channel.

Shania-xian (Fri, 23 Jul 2021 10:28:15 GMT):
Has joined the channel.

Jess_Hurwitz (Fri, 23 Jul 2021 22:42:49 GMT):
Has joined the channel.

Alameenb (Sat, 24 Jul 2021 00:15:36 GMT):
Has joined the channel.

merq (Sat, 24 Jul 2021 01:12:20 GMT):
Has joined the channel.

ashutoshsharma01 (Sat, 24 Jul 2021 07:02:26 GMT):
Has joined the channel.

ashutosh1 (Sat, 24 Jul 2021 12:35:39 GMT):
Has joined the channel.

db2127 (Sat, 24 Jul 2021 15:04:14 GMT):
Has joined the channel.

slsanc (Sat, 24 Jul 2021 16:32:12 GMT):
Has joined the channel.

mirshahzad (Sat, 24 Jul 2021 16:33:57 GMT):
Has joined the channel.

mengxi123 (Sun, 25 Jul 2021 05:17:02 GMT):
Has joined the channel.

qiqo (Sun, 25 Jul 2021 05:17:10 GMT):
Has joined the channel.

NajetBENHAMOUDA (Sun, 25 Jul 2021 11:15:46 GMT):
Has joined the channel.

lavaicer (Sun, 25 Jul 2021 12:04:59 GMT):
Has joined the channel.

shumpeishimizu (Mon, 26 Jul 2021 04:21:04 GMT):
Has joined the channel.

amarnadh (Mon, 26 Jul 2021 10:53:22 GMT):
Has joined the channel.

aspannag (Mon, 26 Jul 2021 11:41:04 GMT):
Has joined the channel.

HelliHell (Mon, 26 Jul 2021 14:56:24 GMT):
Has joined the channel.

sukrutsathaye (Mon, 26 Jul 2021 16:24:15 GMT):
Has joined the channel.

cel (Mon, 26 Jul 2021 19:37:54 GMT):
Has joined the channel.

EmcLab (Mon, 26 Jul 2021 21:37:21 GMT):
Hello all, how to clean besu database? that is to wipe out all the data and start from clean again.

drinkcoffee (Tue, 27 Jul 2021 03:45:17 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=efg2XRc5CeiCzk2cw) The not generating blocks was my fault: a networking issue on my laptop. The misleading error message has been reported as an issue: https://github.com/hyperledger/besu/issues/2579

aymankhan (Tue, 27 Jul 2021 10:36:19 GMT):
Has joined the channel.

matkt (Tue, 27 Jul 2021 12:00:19 GMT):
hey you can use this flag to set a initial baseFee -Xeip1559-initial-base-fee

matkt (Tue, 27 Jul 2021 12:00:19 GMT):
hey sorry for the delay you can use this flag to set a initial baseFee -Xeip1559-initial-base-fee

ueesha (Tue, 27 Jul 2021 14:15:30 GMT):
Has joined the channel.

ShashankKulkarni1 (Tue, 27 Jul 2021 14:41:48 GMT):
Has joined the channel.

DecentralLabs (Tue, 27 Jul 2021 19:41:05 GMT):
Has joined the channel.

robnik911 (Tue, 27 Jul 2021 21:10:20 GMT):
Has joined the channel.

knagware (Wed, 28 Jul 2021 04:38:44 GMT):
Has joined the channel.

ChristosPaschalidis (Wed, 28 Jul 2021 14:48:58 GMT):
Has joined the channel.

SuzanaMaranhao (Wed, 28 Jul 2021 21:00:49 GMT):
Hi @jframe. I was on vacation and that is why I took so long to than you for the so complete answer! Great!!

zenilvaghasiya (Wed, 28 Jul 2021 22:40:55 GMT):
Has joined the channel.

nedaa2020 (Thu, 29 Jul 2021 07:19:48 GMT):
Has joined the channel.

LeslytH (Thu, 29 Jul 2021 08:01:25 GMT):
Has joined the channel.

joarder97 (Thu, 29 Jul 2021 09:14:14 GMT):
Has joined the channel.

Drilmo (Thu, 29 Jul 2021 11:58:15 GMT):
Has joined the channel.

thongtran (Thu, 29 Jul 2021 15:57:18 GMT):
Has joined the channel.

agentcooper75 (Thu, 29 Jul 2021 18:31:00 GMT):
Has joined the channel.

AnuragChauhan (Fri, 30 Jul 2021 03:29:17 GMT):
Has joined the channel.

JuanEstrada (Fri, 30 Jul 2021 03:36:38 GMT):
Has joined the channel.

rsharmajp (Fri, 30 Jul 2021 07:59:53 GMT):
Has joined the channel.

pp371 (Fri, 30 Jul 2021 09:42:26 GMT):
Has joined the channel.

krgko (Fri, 30 Jul 2021 10:06:43 GMT):
Has joined the channel.

janathraveendra (Fri, 30 Jul 2021 15:07:50 GMT):
Has joined the channel.

SuzanaMaranhao (Fri, 30 Jul 2021 15:15:36 GMT):
What is the updating frequency of the node discovery? I mean if a new node enter in the network or if a old node is removed, how long does it take to this info start to be spread?

SelvamaniGovindaraj (Fri, 30 Jul 2021 16:01:55 GMT):
Has joined the channel.

proberge (Fri, 30 Jul 2021 19:34:05 GMT):
Has joined the channel.

Minnu (Fri, 30 Jul 2021 20:15:38 GMT):
Has joined the channel.

adineshreddy1 (Sun, 01 Aug 2021 10:09:31 GMT):
Has joined the channel.

akash242891 (Sun, 01 Aug 2021 12:35:50 GMT):
Has joined the channel.

smfk (Sun, 01 Aug 2021 18:52:58 GMT):
Has joined the channel.

fboris (Sun, 01 Aug 2021 19:07:49 GMT):
Has joined the channel.

fboris (Sun, 01 Aug 2021 19:14:13 GMT):
Hi everyone! I'm experimenting a bit with BESU and I'm encountering an issue when trying to follow the "deploy smart contract" guide (https://besu.hyperledger.org/en/stable/Tutorials/Contracts/Deploying-Contracts/). When sending the transaction with `sendSignedTransaction`, the following error is raised: `var err = new Error('Returned error: ' + message); ^ Error: Returned error: Wrong chainId` I've searched where that `chainId` could/should be specified and tried to add it within the Tx, unsuccessfully so far. Interesting point though, when deploying the contract with Truffle it seems to work well. Did anyone experience a similar issue and could help me with it? Thanks in advance :)

fboris (Sun, 01 Aug 2021 19:14:13 GMT):
Hi everyone! I'm experimenting a bit with BESU and I'm encountering an issue when trying to follow the "deploy smart contract" guide (https://besu.hyperledger.org/en/stable/Tutorials/Contracts/Deploying-Contracts/). When sending the transaction with `sendSignedTransaction`, the following error is raised: `Error: Returned error: Wrong chainId` I've searched where that `chainId` could/should be specified and tried to add it within the Tx, unsuccessfully so far. Interesting point though, when deploying the contract with Truffle it seems to work well. Did anyone experience a similar issue and could help me with it? Thanks in advance :)

fboris (Sun, 01 Aug 2021 19:14:13 GMT):
Hi everyone! I'm experimenting a bit with BESU and I'm encountering an issue when trying to follow the "deploy smart contract" guide (https://besu.hyperledger.org/en/stable/Tutorials/Contracts/Deploying-Contracts/). When sending the transaction containing the contract to deploy with `sendSignedTransaction`, the following error is raised: `Error: Returned error: Wrong chainId` I've searched where that `chainId` could/should be specified and tried to add it within the Tx, unsuccessfully so far. Interesting point though, when deploying the contract with Truffle it seems to work well. Did anyone experience a similar issue and could help me with it? Thanks in advance :)

shemnon (Sun, 01 Aug 2021 20:39:51 GMT):
ChainId is set when signing the transaction. It is the sigining library that set it. Look in the log for `Invalid transaction` and it should tell you what the proper chainid should be and what the provided chainid was.

fboris (Sun, 01 Aug 2021 21:14:15 GMT):
Yep I actually figured that out and started reading through @ethereumjs/tx package as ethereumjs-tx mentioned in Besu's guide seems deprecated 😅 At this stage I can specify my chainId within the transaction signature process like:`const common = Common.custom({ chainId: 1337 });` `const tx = new Tx(rawTxOptions, { common });`

fboris (Sun, 01 Aug 2021 21:14:15 GMT):
Yep I actually figured that out and started reading through @ethereumjs/tx package as ethereumjs-tx mentioned in Besu's guide seems deprecated 😅 At this stage I can specify my chainId within the transaction signature process like: `const common = Common.custom({ chainId: 1337 });` `const tx = new Tx(rawTxOptions, { common });` `tx.sign(Buffer.from(account.privateKey.substring(2), "hex"));` `...``

fboris (Sun, 01 Aug 2021 21:14:15 GMT):
Yep I actually figured that out and started reading through @ethereumjs/tx package as ethereumjs-tx mentioned in Besu's guide seems deprecated 😅 At this stage I can specify my chainId within the transaction signature process like: `const common = Common.custom({ chainId: 1337 });` `const tx = new Tx(rawTxOptions, { common });` `tx.sign(Buffer.from(account.privateKey.substring(2), "hex"));` `...`

fboris (Sun, 01 Aug 2021 21:16:16 GMT):
I'm know facing an Internal Error of the JSON-RPC API that I'm trying to resolve: `Error processing JSON-RPC requestBody - java.lang.RuntimeException: An unsupported encoded `v` value of 0 was found`

fboris (Sun, 01 Aug 2021 21:16:16 GMT):
I'm know facing an Internal Error of the JSON-RPC API that I'm trying to resolve: `Error processing JSON-RPC requestBody - java.lang.RuntimeException: An unsupported encoded 'v' value of 0 was found`

fboris (Sun, 01 Aug 2021 21:16:53 GMT):
Definitely related to the request body that's created by @ethereumjs/tx

shemnon (Sun, 01 Aug 2021 21:19:13 GMT):
EthreumJS is outside of my body of knowledge. I don't know where they have chat rooms or email

udaya.rkrish (Sun, 01 Aug 2021 21:44:55 GMT):
Has joined the channel.

KentBull (Mon, 02 Aug 2021 01:54:03 GMT):
Has joined the channel.

NgugsJohn (Mon, 02 Aug 2021 02:32:03 GMT):
Has joined the channel.

NgugsJohn (Mon, 02 Aug 2021 02:33:03 GMT):
Hallo following the Quorum quick start tutorial. However my machine cannot run all the nodes at the same time. How can I start one node at a time ?

atoulme (Mon, 02 Aug 2021 03:57:06 GMT):
you need to run all nodes to achieve consensus. You cannot just run one node at a time.

maurolionp (Mon, 02 Aug 2021 06:39:07 GMT):
Has joined the channel.

wcc19840827 (Mon, 02 Aug 2021 07:55:33 GMT):
Has joined the channel.

TanguyLaucournet (Mon, 02 Aug 2021 10:39:40 GMT):
Has joined the channel.

TanguyLaucournet (Mon, 02 Aug 2021 10:39:40 GMT):
Hi when trying to launch the dev quickstart I got thi error : yaml.composer.ComposerError: found undefined alias 'docker-logging' in "./docker-compose.yml", line 302. Does anyine know what could be the reason of this error ?

NgugsJohn (Mon, 02 Aug 2021 12:11:12 GMT):
Question here: Step 1. Create a private network using the IBFT 2.0 consensus protocol.

NgugsJohn (Mon, 02 Aug 2021 12:11:12 GMT):
Am a little lost trying to deploy my smart contract using Web3js-quorum following this tutorial: https://besu.hyperledger.org/en/stable/Tutorials/Contracts/Deploying-Contracts/ So I create a file named compile.js, save the first code block on that page then run npm compile.js . Where do I save the second code block starting with const web3 = new Web3(host); ? I cannot see the connection between the se 2 'files' ?

NgugsJohn (Mon, 02 Aug 2021 12:11:12 GMT):
Am a little lost trying to deploy my smart contract using Web3js-quorum following this tutorial: https://besu.hyperledger.org/en/stable/Tutorials/Contracts/Deploying-Contracts/ So I create a file named compile.js, save the first code block on that page then run npm compile.js . Where do I save the second code block starting with const web3 = new Web3(host); ? I cannot see the connection between these 2 'files' and web3js-quorum ?

DanielHaren (Mon, 02 Aug 2021 14:20:47 GMT):
Has joined the channel.

AlessandraC (Mon, 02 Aug 2021 14:33:10 GMT):
Has joined the channel.

GabrieleVitae (Mon, 02 Aug 2021 14:53:19 GMT):
Has joined the channel.

GabrieleVitae (Mon, 02 Aug 2021 15:03:43 GMT):
Hello everyone, I do ask to you, reader of this question a bit of patience, but I need your help and knwoledge. Here It is my simple question, I need to update the configuration of the cliqueGenesis.json (changeing the blockperiodSeconds, from 15 to 3) in my Hyperledger Besu BlockChain (private and gas free). My BlockChain is already up and running with few block in it, so to make use of those new configurations should I delete everything (blocks, nodes, vloumes etc...) and start rebuilding all over again? Or simply update the file and restart??? Thank for the help :D :)

AlessandraC (Mon, 02 Aug 2021 15:14:11 GMT):
same story here... I used Hyperledger Fabric for a while (just for studying purposes), on Fabric if I had the need to do it I used to simply stop and erase all the containers and running the new images... but didn't have any transaction on. Do not know in this case what should be the proper thing to do...

GabrieleVitae (Mon, 02 Aug 2021 15:20:56 GMT):
Thanks @AlessandraC I don't know if It is the same procedure here on Besu, but I whould like to be sure before delete evrything and not beacuse I don't want to, but beacuse i would like to know what is the correct path to follow in this scenario.

GabrieleVitae (Mon, 02 Aug 2021 15:20:56 GMT):
Thanks @AlessandraC I don't know if It is the same procedure here on Besu, but I whould like to be sure before delete evrything and not beacuse I don't want to, but because i would like to know what is the correct path to follow in this scenario.

cod3rfabric (Mon, 02 Aug 2021 16:35:01 GMT):
Has joined the channel.

unnati (Mon, 02 Aug 2021 17:32:16 GMT):
Has joined the channel.

praveenkpandu (Mon, 02 Aug 2021 22:40:58 GMT):
Has joined the channel.

macfarla (Tue, 03 Aug 2021 00:05:20 GMT):
some genesis file changes require you to do this - if so you would get this error when restarting https://besu.hyperledger.org/en/stable/HowTo/Troubleshoot/Troubleshooting/#supplied-genesis-block-does-not-match-stored-chain-data

macfarla (Tue, 03 Aug 2021 00:06:04 GMT):
That change for clique block period though - I think you can change that without having to delete everything.

macfarla (Tue, 03 Aug 2021 00:23:42 GMT):
Thanks for raising this @NgugsJohn - that tutorial is missing some info. I've raised a docs ticket to update it. https://github.com/hyperledger/besu-docs/issues/760

macfarla (Tue, 03 Aug 2021 00:24:40 GMT):
As for your questions: 1. you can save the second code block as a new .js file and name it anything you like eg deploy.js and run it the same way as the first `node deploy.js`

macfarla (Tue, 03 Aug 2021 00:25:23 GMT):
2. the first few examples on that page (public contract deployment) don't use web3js-quorum, that's only required for private contracts https://besu.hyperledger.org/en/latest/Tutorials/Contracts/Deploying-Contracts/#using-eea_sendrawtransaction-for-private-contracts

macfarla (Tue, 03 Aug 2021 00:27:12 GMT):
Also note that we are in a period of transition from web3js-eea (deprecated) to web3js-quorum. So some of the examples in the docs still point to web3js-eea - but advise using web3js-quorum if you're starting out.

macfarla (Tue, 03 Aug 2021 00:34:22 GMT):
I believe this is fixed in the latest version of the quickstart >= 0.0.26. - can you update and try again?

rubix982 (Tue, 03 Aug 2021 02:30:46 GMT):
Has joined the channel.

areyal (Tue, 03 Aug 2021 05:06:06 GMT):
Has joined the channel.

pavithra8895 (Tue, 03 Aug 2021 05:49:09 GMT):
Has joined the channel.

pavithra8895 (Tue, 03 Aug 2021 06:06:36 GMT):
someone please help me I am getting this error on windows 10 and the command I am using is "./network.sh deployCC -ccn basic -ccp ../asset-transfer-basic/chaincode-javascript/ -ccl javascript" and the error I am getting is : Error: chaincode install failed with status: 500 - failed to invoke backing implementation of 'InstallChaincode': could not build chaincode: docker build failed: docker image inspection failed: cannot connect to Docker endpoint Chaincode installation on peer0.org1 has failed Deploying chaincode failed Docker version 20.10.7, build f0df350 docker-compose version 1.29.2, build 5becea4c I am new to hyledger-fabric

AboliShinde (Tue, 03 Aug 2021 08:34:03 GMT):
Has joined the channel.

Bandana 1 (Tue, 03 Aug 2021 13:08:30 GMT):
Has joined the channel.

BrunoMartins3 (Tue, 03 Aug 2021 13:48:04 GMT):
Has joined the channel.

shemnon (Tue, 03 Aug 2021 14:26:18 GMT):
Try #fabric-questions, this room is for Hyplerledger Besu.

BrunoMartins3 (Tue, 03 Aug 2021 15:42:34 GMT):
Hey guys, recent mainnet transactions through besu are flagged as private txs? https://github.com/hyperledger/besu/commit/fa2d53859c45c26e40a9265092308bcdba5b7b8f#diff-8f3af0f8da1b352c31d41501c14cf92a66947bc3dc2a2f0d617c1691c380c70fR500 ECDSA (r,s,v) ; shouldn't v == 37 or 38 for regular mainnet txs are defined here? https://eips.ethereum.org/EIPS/eip-155 ( v = CHAIN_ID * 2 + 35 or v = CHAIN_ID * 2 + 36 )

PedroBranco (Tue, 03 Aug 2021 16:44:32 GMT):
Has joined the channel.

BrunoMartins3 (Tue, 03 Aug 2021 16:58:55 GMT):
Note; 21.1.7 version was working fine

LAYLeangsros (Tue, 03 Aug 2021 17:01:18 GMT):
Has joined the channel.

NgugsJohn (Tue, 03 Aug 2021 19:10:18 GMT):
Hi. Am trying to understand the concept of private transactions in Besu. When you send a private transaction is it directed to a specific user identified with a public key or a node eg besu1 ?

NgugsJohn (Tue, 03 Aug 2021 19:10:18 GMT):
Hi. Am trying to understand the concept of private transactions in Besu. When you send a private transaction is it directed to a specific user identified with a public key or a node eg besu1 ? Similarly is a public transaction visible to the open world like cryptocurrency transactions ?

rud9321 (Tue, 03 Aug 2021 19:32:31 GMT):
Has joined the channel.

shemnon (Tue, 03 Aug 2021 19:34:30 GMT):
The `besu`, `besu-docs`, and `besu-native` repos have all flipped from using the `master` branch as the default branch to using the `main` branch as the default branch. To keep up with these changes (a) rename the default branch in your forked repositories to `main`. Github will provide reminders when you navigate to your repos. (b) update your working copies to use `main`. This script will work for remotes named `origin` ``` git branch -m master main git fetch origin git branch -u origin/main main git remote set-head origin -a ```

shemnon (Tue, 03 Aug 2021 19:38:02 GMT):
If you have a homebrew installation simply run `brew tap --repair`

alexandratran (Tue, 03 Aug 2021 21:26:48 GMT):
Has joined the channel.

lucassaldanha (Tue, 03 Aug 2021 21:32:03 GMT):
Hi! I suggest your read the documentation about how private transactions work in Besu. It should help you understand how to use them. To answer your questions: 1. To send a private tx, you define a list of ids that correspond to other participants. This list is set on the `privateFor` field. These IDs are public keys corresponding to the participants' Tessera nodes. 2. A public tx is visible to any node in the network. If you network is public, everyone has access to the public tx. If you network is private, all nodes connected to the network will have access to the txs.

lucassaldanha (Tue, 03 Aug 2021 21:33:02 GMT):
I forgot to post the link to the docs: https://besu.hyperledger.org/en/latest/Concepts/Privacy/Privacy-Overview/

lucassaldanha (Tue, 03 Aug 2021 21:40:45 GMT):
Thanks for raising this. We will take a look at it.

shemnon (Tue, 03 Aug 2021 21:53:19 GMT):
Can you elaborate on how you observed this breakage? Was it on mainnet, a private tx? Was it using a running instance or using the code as a library?

JfloConsensys (Tue, 03 Aug 2021 23:02:28 GMT):
Has joined the channel.

JfloConsensys (Tue, 03 Aug 2021 23:02:29 GMT):
When a new node enters a network, it should be discovered immediately assuming UDP is working even close to correctly. UDP isn't a guarantee though, but in reality this always works. Leaving is a little different- if a peer hasn't heard from another peer in 12 hours it will check on it to see if it is there. If it doesn't respond, it's dropped as a peer.

JfloConsensys (Tue, 03 Aug 2021 23:02:52 GMT):
You can read more about it here: https://github.com/ethereum/devp2p/blob/master/discv4.md

JfloConsensys (Tue, 03 Aug 2021 23:03:33 GMT):
and if you're feeling ambitious, I found this paper very useful:

JfloConsensys (Tue, 03 Aug 2021 23:03:35 GMT):
https://joshm.web.engr.illinois.edu/imc18_ethereum.pdf

macfarla (Tue, 03 Aug 2021 23:21:13 GMT):
This error message has been changed to make it clearer https://github.com/hyperledger/besu/pull/2582

macfarla (Tue, 03 Aug 2021 23:22:14 GMT):
@drinkcoffee I believe you resolved this issue, right?

macfarla (Wed, 04 Aug 2021 00:32:19 GMT):
Hi @BrunoMartins3 thanks for raising this. We've raised a PR which should be merged shortly https://github.com/hyperledger/besu/pull/2609 and a release will be forthcoming.

macfarla (Wed, 04 Aug 2021 00:32:36 GMT):
More details in this issue https://github.com/hyperledger/besu/issues/2606

drinkcoffee (Wed, 04 Aug 2021 00:44:31 GMT):
It looks like it probably does. I use Besu via the Docker container. I will be able to see the change once it is in the "latest" container .

LuisaB 2 (Wed, 04 Aug 2021 05:19:24 GMT):
Has joined the channel.

mcourtin (Wed, 04 Aug 2021 07:41:46 GMT):
Has joined the channel.

jlochman (Wed, 04 Aug 2021 09:03:13 GMT):
Has joined the channel.

pavithra8895 (Wed, 04 Aug 2021 10:42:20 GMT):
ok

amitpadmani-awts (Wed, 04 Aug 2021 12:39:19 GMT):
Has joined the channel.

SuzanaMaranhao (Wed, 04 Aug 2021 14:32:08 GMT):
Since Besu keeps private key in plain text, we need to be very concerned about "perimeter security". In a paid version of Besu, is it possible to not using the private key as plain text but only cryptographic file?

SuzanaMaranhao (Wed, 04 Aug 2021 14:33:37 GMT):
Also, if we delete the file containing the plain text key, will the node work with this info only in memory? I mean, is the file necessary only to start the node or during its operation too?

GarySchulte (Wed, 04 Aug 2021 15:43:42 GMT):
FYI, late yesterday we discovered a defect in besu which affected value transfer transactions. It isn't a consensus critical bug, but we are highly recommending folks to upgrade to 21.7.2 to fix this issue that is present in the prior 21.7.x release line: https://github.com/hyperledger/besu/issues/2606

GarySchulte (Wed, 04 Aug 2021 15:43:56 GMT):
https://github.com/hyperledger/besu/releases/tag/21.7.2

atoulme (Wed, 04 Aug 2021 18:26:28 GMT):
this needs to be heavily qualified. You are referring to this option, correct? https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#node-private-key-file This file stores the node private key which is used to identify the node on the network. This identity is not important on mainnet and public networks, but has special importance in private networks.

atoulme (Wed, 04 Aug 2021 18:27:50 GMT):
There is no such thing as a paid version of Besu. Hyperledger Besu is an open source project trademarked by the Hyperledger Foundation, a commercial product would be named differently and would require you to address the vendor. Just clarifying this bit.

atoulme (Wed, 04 Aug 2021 18:28:26 GMT):
The file is read at startup and can be unmounted, discarded afterwards.

atoulme (Wed, 04 Aug 2021 18:29:47 GMT):
Now on to your actual concerns: * Ideally, you'd store the file in an encrypted volume. If you'd like the file itself to be encrypted and unlocked via a password, then we didn't achieve enough since the password needs to be provided. * It could be possible to provide the private key via an env var that can then be provided as a secret. If this interests you, I recommend you file an issue on the repository asking for this functionality.

atoulme (Wed, 04 Aug 2021 18:30:36 GMT):
I'm not familiar with this CLI flag but it might address your concerns nicely: https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#security-module

amunoz (Wed, 04 Aug 2021 19:53:23 GMT):
Has joined the channel.

macfarla (Thu, 05 Aug 2021 00:44:59 GMT):
ok let us know if you have any further problems!

cmstonecse (Thu, 05 Aug 2021 03:29:31 GMT):
Has joined the channel.

joshuafernandes (Thu, 05 Aug 2021 05:46:40 GMT):
Hello @NgugsJohn the first section shows you how to compile a solidity contract - in this case the contract is https://github.com/ConsenSys/quorum-dev-quickstart/blob/master/files/common/smart_contracts/contracts/SimpleStorage.sol and to compile that contract we use https://github.com/ConsenSys/quorum-dev-quickstart/blob/master/files/common/smart_contracts/scripts/compile.js. The part that is in the docs is a simplifed version of the compile.js file above ^

joshuafernandes (Thu, 05 Aug 2021 05:46:40 GMT):
Hello @NgugsJohn thanks for raising that :) The first section shows you how to compile a solidity contract - in this case the contract is https://github.com/ConsenSys/quorum-dev-quickstart/blob/master/files/common/smart_contracts/contracts/SimpleStorage.sol and to compile that contract we use https://github.com/ConsenSys/quorum-dev-quickstart/blob/master/files/common/smart_contracts/scripts/compile.js. The part that is in the docs is a simplifed version of the compile.js file above ^

joshuafernandes (Thu, 05 Aug 2021 05:50:02 GMT):
Once you have your compiled artifacts you use the ABI and the bytecode of the compile step (which we've precompiled and saved here https://github.com/ConsenSys/quorum-dev-quickstart/tree/master/files/common/smart_contracts/contracts ) and then deploy that as a transaction which is the second section of code. An example of this is https://github.com/ConsenSys/quorum-dev-quickstart/blob/master/files/besu/smart_contracts/scripts/public_tx.js

joshuafernandes (Thu, 05 Aug 2021 05:50:37 GMT):
All of the examples and snippets in this section have the code, contracts etc in the quickstart in the smart_contracts folder

joshuafernandes (Thu, 05 Aug 2021 05:50:37 GMT):
All of the examples and snippets in this section have the code, contracts etc in the quickstart in the smart_contracts folder. As @macfarla has mentioned above they use web3eea atm and we're transitioning to web3js-quorum and we'll update both soon!

woodymk (Thu, 05 Aug 2021 09:33:03 GMT):
Has joined the channel.

sagaracharya (Thu, 05 Aug 2021 10:28:18 GMT):
Has joined the channel.

bd (Thu, 05 Aug 2021 10:50:25 GMT):
Has joined the channel.

bd (Thu, 05 Aug 2021 10:57:17 GMT):
hello, i want to sync besu with ropsten network in fast sync mode and starting from x block number is possible ?

bd (Thu, 05 Aug 2021 10:57:20 GMT):
https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#sync-mode

bd (Thu, 05 Aug 2021 10:57:52 GMT):
for sync mode fast i found the command but not for starting sync in X block number

bd (Thu, 05 Aug 2021 10:58:16 GMT):
anyone can help me with this question ?

abraxasccs (Thu, 05 Aug 2021 11:02:57 GMT):
Has joined the channel.

rsebastiany (Thu, 05 Aug 2021 11:27:48 GMT):
Has joined the channel.

hilyds (Thu, 05 Aug 2021 11:45:37 GMT):
Hi everyone. I want to ask about TPS in besu. Right now I am using a genesis file with blockperiodseconds is 2. And when I try to send transaction using loopback explorer API, it will give response every 2 seconds. Does this related because it wait (asynchronously) for the block to be created? I wonder how to make the TPS go higher. In that case, my questions are : 1. How do I config number of transactions per block? 2. How do I config the transaction to be submitted synchronously? 3. Is there any drawback with what I'm approaching above? Thank you!

bd (Thu, 05 Aug 2021 12:05:19 GMT):
maybe @shemnon can help with this ?

MithunH 3 (Thu, 05 Aug 2021 12:17:28 GMT):
Has joined the channel.

shemnon (Thu, 05 Aug 2021 12:25:15 GMT):
We don't have flags to set the pivot block for fast sync outside of what the protocol settles on.

bd (Thu, 05 Aug 2021 12:26:30 GMT):
hm... ok maybe i will try GETH with light mode

bd (Thu, 05 Aug 2021 12:26:36 GMT):
thank you

jlochman (Thu, 05 Aug 2021 12:49:48 GMT):
number of transactions per block should be determined mainly by block Gas Limit. We've tested Besu with gasLimit=20e6 and blockTime=2s - Besu processed 952 tx per block without any problem (txs were sent by web3.js)

BrunoMartins3 (Thu, 05 Aug 2021 15:46:23 GMT):
Is eth_gasPrice meant to be returning a constant value block after block?

SuzanaMaranhao (Thu, 05 Aug 2021 16:17:28 GMT):
Great @JfloConsensys, thanks

SuzanaMaranhao (Thu, 05 Aug 2021 16:26:32 GMT):
@atoulme, first thank you very much for your answer.

SuzanaMaranhao (Thu, 05 Aug 2021 16:28:22 GMT):
Yes, I was refering to the private key file and I am really creating a permissioned network. This is the node key and is used in IBFT and in our metatransactions.

SuzanaMaranhao (Thu, 05 Aug 2021 16:29:17 GMT):
I knew Besu is a Hyperledger project. I was trying to refer to other paid version of Besu. Isn't Pagasys offering a premium solution with some additional features?

SuzanaMaranhao (Thu, 05 Aug 2021 16:29:48 GMT):
The file is read at startup and can be unmounted, discarded afterwards. -- I didn't know this. Thank you for clarifying.

SuzanaMaranhao (Thu, 05 Aug 2021 16:33:42 GMT):
I actually looked at this CLI flag some time ago. I was told that I need to set up a security module to deal with that and it does not seem a simple thing to implement. That is actually I asked if there is a paid version including this.

merakh (Thu, 05 Aug 2021 17:39:31 GMT):
Has joined the channel.

oussema.gharsallaoui (Thu, 05 Aug 2021 17:48:40 GMT):
Has joined the channel.

patricioibarrag (Thu, 05 Aug 2021 18:56:28 GMT):
Has joined the channel.

atoulme (Fri, 06 Aug 2021 04:53:30 GMT):
That would be a good question for the PegaSys/ConsenSys folks. @grace.hartley is a good resource to start that conversation, please understand that is separate from this open source project.

DanteCullari (Sat, 07 Aug 2021 07:09:31 GMT):
Has joined the channel.

wifimarketingsolutions (Sat, 07 Aug 2021 09:34:54 GMT):
Has joined the channel.

JesusMG (Sat, 07 Aug 2021 15:42:02 GMT):
Has joined the channel.

vova777 (Sat, 07 Aug 2021 18:57:30 GMT):
Has joined the channel.

IshanChowdhury (Sun, 08 Aug 2021 10:04:34 GMT):
Has joined the channel.

luisabrunhosa (Sun, 08 Aug 2021 21:55:45 GMT):
Has joined the channel.

ahmedalsalih (Mon, 09 Aug 2021 03:32:47 GMT):
Has joined the channel.

nskishore1993 (Mon, 09 Aug 2021 07:13:15 GMT):
Has joined the channel.

anhduck (Mon, 09 Aug 2021 08:41:24 GMT):
Has joined the channel.

jlochman (Mon, 09 Aug 2021 09:08:01 GMT):
What explorer do you use for Besu? I see Alethio Lite Explorer is the only explorer mentioned in Besu documentation. We've tried Blockscout, which added Besu support app. one year ago https://github.com/blockscout/blockscout/pull/3154. Unfortunately, there were no Besu-related changes to Blockscout since then and we are facing some issues when connecting Blockscout to the up-to-date version of Besu. A communication with the Blockscout team is a far cry from what we need for our production purposes.

jlochman (Mon, 09 Aug 2021 09:08:01 GMT):
What explorer do you use for Besu? I see Alethio Lite Explorer is the only explorer mentioned in Besu documentation. We've tried Blockscout, which added Besu support app. one year ago https://github.com/blockscout/blockscout/pull/3154. Unfortunately, there were no Besu-related changes to Blockscout since then and we are facing some issues when connecting Blockscout to the up-to-date version of Besu. Communication with the Blockscout team is a far cry from what we need for our production purposes.

Mr.S (Mon, 09 Aug 2021 09:43:29 GMT):
Has joined the channel.

shemnon (Mon, 09 Aug 2021 13:47:07 GMT):
Ethereum Classic has worked a lot with BlockScout. @atoulme can probably point you to whoever stood up their explorers.

lucassaldanha (Tue, 10 Aug 2021 02:13:01 GMT):
Hi, I believe the value can vary.

lucassaldanha (Tue, 10 Aug 2021 02:13:02 GMT):
https://besu.hyperledger.org/en/latest/Reference/API-Methods/#eth_gasprice

atoulme (Tue, 10 Aug 2021 04:12:02 GMT):
hey, there was another block explorer that was mentioned https://www.quicknode.com/guides/infrastructure/how-to-run-expedition-block-explorer

Amit18 (Tue, 10 Aug 2021 07:00:59 GMT):
Has joined the channel.

jlochman (Tue, 10 Aug 2021 08:25:45 GMT):
thank you for the infromation. It seems to me it could help Besu a lot, if Blockscout would be kept compatible with Besu.

PuneetSivananda (Tue, 10 Aug 2021 11:36:50 GMT):
Has joined the channel.

VijayMichalik (Tue, 10 Aug 2021 13:16:17 GMT):
Hey @jlochman, are there missing features or bugs when using the Alethio light explorer?

VijayMichalik (Tue, 10 Aug 2021 13:16:17 GMT):
If you could write a github issue with the problems you're seeing using Blockscout too, I'd be interested to take a look!

VijayMichalik (Tue, 10 Aug 2021 13:19:18 GMT):
were there any missing features or bugs when trying to use the lite explorer?

rampatra (Tue, 10 Aug 2021 15:11:36 GMT):
We were thinking to use offchain privacy groups extensively and were wondering if there would be any scalability issues with it. Any documentation or research done on this topic? For example, let's say we have 1000+ besu nodes and we create 2^1000 privacy groups (i.e., for all combinations). Would this be a problem?

nmoskaleva (Tue, 10 Aug 2021 18:56:53 GMT):
Has joined the channel.

roshan.joseph (Tue, 10 Aug 2021 22:00:31 GMT):
Has joined the channel.

fernandobender (Tue, 10 Aug 2021 22:48:10 GMT):
Has joined the channel.

kkaur01 (Tue, 10 Aug 2021 23:48:31 GMT):
Has joined the channel.

VikiAnand (Wed, 11 Aug 2021 04:14:57 GMT):
Has joined the channel.

pkchai (Wed, 11 Aug 2021 07:44:17 GMT):
Hi, got this error suddenly from besu, does anyone know where this error might come from? Im running version 21.7.1 ``` besu[1577959]: 2021-08-11 09:39:42.585+02:00 | Timer-0 | ERROR | Besu | Uncaught exception in thread "Timer-0" besu[1577959]: java.net.SocketTimeoutException besu[1577959]: at org.xbill.DNS.Resolver.send(Resolver.java:157) besu[1577959]: at org.apache.tuweni.discovery.DNSResolver.resolveRecordRaw(DNSResolver.kt:149) besu[1577959]: at org.apache.tuweni.discovery.DNSResolver.resolveRecord(DNSResolver.kt:72) besu[1577959]: at org.apache.tuweni.discovery.DNSResolver.internalVisit(DNSResolver.kt:166) besu[1577959]: at org.apache.tuweni.discovery.DNSResolver.internalVisit(DNSResolver.kt:175) besu[1577959]: at org.apache.tuweni.discovery.DNSResolver.internalVisit(DNSResolver.kt:175) besu[1577959]: at org.apache.tuweni.discovery.DNSResolver.internalVisit(DNSResolver.kt:175) besu[1577959]: at org.apache.tuweni.discovery.DNSResolver.visitTree(DNSResolver.kt:129) besu[1577959]: at org.apache.tuweni.discovery.DNSResolver.visitTree(DNSResolver.kt:105) besu[1577959]: at org.apache.tuweni.discovery.DNSResolver.collectAll(DNSResolver.kt:94) besu[1577959]: at org.apache.tuweni.discovery.DNSTimerTask.run(DNSDaemon.kt:70) besu[1577959]: at java.base/java.util.TimerThread.mainLoop(Timer.java:556) besu[1577959]: at java.base/java.util.TimerThread.run(Timer.java:506) ```

pkchai (Wed, 11 Aug 2021 07:50:14 GMT):
Restarted the service and it's importing blocks again.

jlochman (Wed, 11 Aug 2021 08:31:32 GMT):
I've opened a github issue several days ago https://github.com/blockscout/blockscout/issues/4474 lite explorer - do you mean Alethio? I've tried this explorer months ago but compared to Blockscout, it offers very little :( maybe I'm wrong, but I haven't found any integration of smart contracts in Alethio, nor any display for ERC20 tokens, which both are the crux of the matter for us.

cyrilnaves (Wed, 11 Aug 2021 10:04:48 GMT):
Hi All I would like to know how to generate extradata for IBFT1.0 version? I tried same extradata as IBFT2 but it didnt work

AndreyShevchenko (Wed, 11 Aug 2021 11:35:09 GMT):
Has joined the channel.

rampatra (Wed, 11 Aug 2021 11:44:09 GMT):
Any help or tips on this would be really helpful.

SandeepVankala (Wed, 11 Aug 2021 12:30:45 GMT):
Has joined the channel.

SandeepVankala (Wed, 11 Aug 2021 12:33:57 GMT):
Hey guys, I have a MacBook M1 and Im trying to try out quorum and when I followed the tutorial(documentation) for *npx quorum-dev-quickstart* eveything is fine, but it happens to be that a few containers keep exiting on their own. Is it some M1 chip specific or anything else? How can I solve this issue?

SandeepVankala (Wed, 11 Aug 2021 12:41:53 GMT):
Oh sorry, I see that M1 is not supported yet.

shemnon (Wed, 11 Aug 2021 14:04:13 GMT):
The exception is from a non-critical part of code, the DNS resolution for initial peer discovery. If this is occurring after the node has been running a while, I'd consider it a symptom that the whole process lost network connectivity and hence all peers. Which is why a restart fixed things.

shemnon (Wed, 11 Aug 2021 14:07:34 GMT):
run the tasks it with `arch -x86_64` to enable rosetta. There are also some general docker issues with resolutions here https://docs.docker.com/docker-for-mac/apple-silicon/

shemnon (Wed, 11 Aug 2021 14:07:34 GMT):
run the non-docker tasks with `arch -x86_64` to enable rosetta. There are also some general docker issues with resolutions here https://docs.docker.com/docker-for-mac/apple-silicon/

atoulme (Wed, 11 Aug 2021 19:05:13 GMT):
just thought this one exists too https://www.web3labs.com/epirus-explorer

BrianRani (Wed, 11 Aug 2021 19:13:50 GMT):
Has joined the channel.

charlie.dev (Wed, 11 Aug 2021 20:08:09 GMT):
Has joined the channel.

charlie.dev (Wed, 11 Aug 2021 20:08:09 GMT):
we have deployed besu in ec2 instance, we are able to deploy the smart contract from our local machine. Problem statement - we are able to deploy contract only if we are whitelisting ips as * --- eg: host-whitelist=["*"]; rpc-http-host="0.0.0.0"; rpc-http-cors-origins = ["*"] . But this is open to public, we want to restrict only to our locals ips. Appreciate any help :)

charlie.dev (Wed, 11 Aug 2021 20:08:09 GMT):
we have deployed besu in ec2 instance, we are able to deploy the smart contract from our local machine. Problem statement - we are able to deploy contract only if we are whitelisting ips as * --- eg: host-whitelist=["*"] ; rpc-http-host="0.0.0.0"; rpc-http-cors-origins = ["*"] . But this is open to public, we want to restrict only to our locals ips. Appreciate any help :)

charlie.dev (Wed, 11 Aug 2021 20:08:09 GMT):
we have deployed besu in ec2 instance, we are able to deploy the smart contract from our local machine. Problem statement - we are able to deploy contract only if we are whitelisting ips as * --- eg: host-whitelist= ["*"] ; rpc-http-host="0.0.0.0"; rpc-http-cors-origins = ["*"] . But this is open to public, we want to restrict only to our locals ips. Appreciate any help :)

charlie.dev (Wed, 11 Aug 2021 20:08:09 GMT):
we have deployed besu in ec2 instance, we are able to deploy the smart contract from our local machine. Problem statement - we are able to deploy contract only if we are whitelisting ips as --- eg: host-whitelist= ["*"] ; rpc-http-host="0.0.0.0"; rpc-http-cors-origins = ["*"] . But this is open to public, we want to restrict only to our locals ips. Appreciate any help :)

charlie.dev (Wed, 11 Aug 2021 20:08:09 GMT):
we have deployed besu in ec2 instance, we are able to deploy the smart contract from our local machine. Problem statement - we are able to deploy contract only if we are whitelisting ips as --**- eg: host-whitelist= ["*"] ; rpc-http-host="0.0.0.0"; rpc-http-cors-origins = ["*"] . But this is open to public, we want to restrict only to our locals ips. Appreciate any help :)

charlie.dev (Wed, 11 Aug 2021 20:08:09 GMT):
we have deployed besu in ec2 instance, we are able to deploy the smart contract from our local machine. Problem statement - we are able to deploy contract only if we are whitelisting ips as --* *- eg: host-whitelist= ["*"] ; rpc-http-host="0.0.0.0"; rpc-http-cors-origins = ["*"] . But this is open to public, we want to restrict only to our locals ips. Appreciate any help :)

charlie.dev (Wed, 11 Aug 2021 20:08:09 GMT):
we have deployed besu in ec2 instance, we are able to deploy the smart contract from our local machine. Problem statement - we are able to deploy contract only if we are whitelisting ips as --* *- eg: host-whitelist= ["*star"] ; rpc-http-host="0.0.0.0"; rpc-http-cors-origins = ["*"] . But this is open to public, we want to restrict only to our locals ips. Appreciate any help :)

charlie.dev (Wed, 11 Aug 2021 20:08:09 GMT):
we have deployed besu in ec2 instance, we are able to deploy the smart contract from our local machine. Problem statement - we are able to deploy contract only if we are whitelisting ips as --*/ *- eg: host-whitelist= ["*"] ; rpc-http-host="0.0.0.0"; rpc-http-cors-origins = ["*"] . But this is open to public, we want to restrict only to our locals ips. Appreciate any help :)

charlie.dev (Wed, 11 Aug 2021 20:08:09 GMT):
we have deployed besu in ec2 instance, we are able to deploy the smart contract from our local machine. Problem statement - we are able to deploy contract only if we are whitelisting ips as --*- eg: host-whitelist= ["*"] ; rpc-http-host="0.0.0.0"; rpc-http-cors-origins = ["*"] . But this is open to public, we want to restrict only to our locals ips. Appreciate any help :)

charlie.dev (Wed, 11 Aug 2021 20:08:09 GMT):
we have deployed besu in ec2 instance, we are able to deploy the smart contract from our local machine. Problem statement - we are able to deploy contract only if we are whitelisting ips as --*- eg: host-whitelist= ["*"] ; rpc-http-host="0.0.0.0"; rpc-http-cors-origins = ["*"] . But this is open to public, we want to restrict only to our locals ips. Appreciate any help :) Note: In the square brackets we have given star * --> as start is not printing in this chat, making this note point for understanding.

charlie.dev (Wed, 11 Aug 2021 20:08:09 GMT):
we have deployed besu in ec2 instance, we are able to deploy the smart contract from our local machine. Problem statement - we are able to deploy contract only if we are whitelisting ips as --*- eg: host-whitelist= ["*"] ; rpc-http-host="0.0.0.0"; rpc-http-cors-origins = ["*"] . But this is open to public, we want to restrict only to our locals ips. Appreciate any help :) Note: In the square brackets we have given star --> as start is not printing in this chat, making this note point for understanding.

charlie.dev (Wed, 11 Aug 2021 20:08:09 GMT):
we have deployed besu in ec2 instance, we are able to deploy the smart contract from our local machine. Problem statement - we are able to deploy contract only if we are whitelisting ips as --*- eg: host-whitelist= ["*"] ; rpc-http-host="0.0.0.0"; rpc-http-cors-origins = ["*"] . But this is open to public, we want to restrict only to our ocals ips. Appreciate any help :) Note: In the square brackets we have given star --> as start is not printing in this chat, making this note point for understanding.

charlie.dev (Wed, 11 Aug 2021 20:08:09 GMT):
we have deployed besu in ec2 instance, we are able to deploy the smart contract from our local machine. Problem statement - we are able to deploy contract only if we are whitelisting ips as --*- eg: host-whitelist= ["*"] ; rpc-http-host="0.0.0.0"; rpc-http-cors-origins = ["*"] . But this is open to public, we want to restrict only to our ocals ips. Appreciate any help :) Note: In the square brackets we have given star --> as star is not printing in this chat, making this note point for understanding.

bentoumia (Wed, 11 Aug 2021 21:53:59 GMT):
Has joined the channel.

GarySchulte (Thu, 12 Aug 2021 02:07:17 GMT):
Hey Charlie, the pattern we often follow is we open up an ssh tunnel for the rpc port, that way we do not have to expose rpc to the wider internet, e.g.: ```ssh ec2-user@host -L 8545:localhost:8545``` and then when interacting with RPC from our local machines we just use localhost:8545 Another option is to try to whitelist just the IP address or subnet that you are planning to deploy from

macfarla (Thu, 12 Aug 2021 02:47:18 GMT):
Besu nodes can participate in an IBFT 1 network but can't be validators. So I think you would be connecting to an IBFT 1.0 network of GoQuorum nodes. I believe you want to use the istanbul commands in GoQuorum. Does this tutorial help? https://docs.goquorum.consensys.net/en/stable/Tutorials/Create-IBFT-Network/

manfredmeyer (Thu, 12 Aug 2021 09:21:25 GMT):
Has joined the channel.

marcocomo (Thu, 12 Aug 2021 11:16:31 GMT):
Has joined the channel.

andreolf1 (Thu, 12 Aug 2021 16:49:11 GMT):
Has joined the channel.

SuzanaMaranhao (Thu, 12 Aug 2021 17:03:03 GMT):
Dears, we have a Besu permissioned network where all nodes are using the node https://dl.bintray.com/hyperledger-org/besu-repo/besu-1.5.2.zip. A new node will enter in the network. However, this link is now unavailable. I know we need to upgrade Besu, but we are minimizing these activities since we are still on testnet. What can I do? * Is there any other link to download this version? * are there issues to this new node be the only one in a much advanced version?

phalves (Thu, 12 Aug 2021 17:08:11 GMT):
Has joined the channel.

shemnon (Thu, 12 Aug 2021 17:45:13 GMT):
Bintray went out of service, we had to migrate off of bintray. Look here: https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/ and for that version it is here: https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/1.5.2/besu-1.5.2.zip

shemnon (Thu, 12 Aug 2021 17:46:45 GMT):
This artifactory service is paid for by Hyperledger (your company's membership fees at work!) so I expect this location to be more permanent that the last permanent home.

SuzanaMaranhao (Thu, 12 Aug 2021 19:05:03 GMT):
Thank you, by the way, I think it is important to understand how close different versions should be. Is there a site where you list the non-backward compatible versions of besu nodes? For example, is besu-1.5.2 compatible with the current version?

shemnon (Thu, 12 Aug 2021 19:24:26 GMT):
We've moved to a calendar versioning basis. The ethereum mainnet hard-forks we follow make semver particularly problematic. I would recommend using the most recent major release as they come out. As far as chain defeinitions they will remain backwards compatible, you may see CLI changes and new features with each major release.

macfarla (Thu, 12 Aug 2021 23:32:48 GMT):
Hi @rampatra we don't have data on your specific scenario. Our testing and that of community members does show there is some processing and memory overhead with using privacy but it's still on our list to do benchmarking with the different types of privacy and different sized networks. You would need to consider the CPU and memory requirements for the nodes. We would definitely be interested to know what you find out, if you're willing to share. Make sure you use latest Besu because we did fix a memory related bug in privacy recently https://github.com/hyperledger/besu/issues/2387

phearaeun (Fri, 13 Aug 2021 02:26:03 GMT):
Has joined the channel.

ahmetcakmak606 (Fri, 13 Aug 2021 08:19:02 GMT):
Has joined the channel.

ataberkozek (Fri, 13 Aug 2021 08:30:39 GMT):
Has joined the channel.

schlagtim (Fri, 13 Aug 2021 10:28:48 GMT):
Has joined the channel.

OzodbekXomidbekov (Fri, 13 Aug 2021 12:02:21 GMT):
Has joined the channel.

sebaleoperez (Fri, 13 Aug 2021 14:59:08 GMT):
Has joined the channel.

sebaleoperez (Fri, 13 Aug 2021 15:07:57 GMT):
Hi there, I'm using a Quickstart installation from Azure Marketplace. The peers were running well but they suddenly stopped. I suppose that could be an out of memory issue and resized the VM RAM. Now is working, but when looking at the node status I see "Up (unhealthy)", what does "unhealthy" means ? Can I repair them ? Thanks in advance

surya7 (Sat, 14 Aug 2021 14:17:58 GMT):
Has joined the channel.

nishantchandla (Sat, 14 Aug 2021 15:02:30 GMT):
Has joined the channel.

nits2k (Sun, 15 Aug 2021 02:44:41 GMT):
Has joined the channel.

ApoorvSingal (Sun, 15 Aug 2021 17:08:03 GMT):
Has joined the channel.

jeaninejue1 (Sun, 15 Aug 2021 21:54:05 GMT):
Has joined the channel.

joshuafernandes (Sun, 15 Aug 2021 23:21:29 GMT):
Hello @sebaleoperez yes I expect the OOM issue is due to size of the VM. What VM size did you pick and what options did you select for the quickstart please? They should all be healthy, did they go unhealthy after the restart? If so what do the logs report back? The logs are located in the `logs/besu/` dir of the quickstart

sebaleoperez (Sun, 15 Aug 2021 23:36:35 GMT):
Thanks for answering. I was using 4 Gb and expanded to 8 Gb. The nodes are currently running and for the moment is going well. If I run the list.sh script all the nodes still are "unhealthy" but working

sebaleoperez (Sun, 15 Aug 2021 23:37:09 GMT):
I don't have any "logs" folder, 'm using the quickstart from the azure marketplace

joshuafernandes (Sun, 15 Aug 2021 23:42:59 GMT):
Alright, there are a couple of them - the one that you run has 4 nodes? bootnode, rpcnode, node3 & node4?

joshuafernandes (Sun, 15 Aug 2021 23:44:29 GMT):
If so that appears to be logging to console. So to get those logs run: ```docker ps | grep rpcnode```

joshuafernandes (Sun, 15 Aug 2021 23:44:52 GMT):
then use the containerId it returns in

joshuafernandes (Sun, 15 Aug 2021 23:45:08 GMT):
```docker logs ```

sebaleoperez (Sun, 15 Aug 2021 23:49:13 GMT):
In the list the are 4 nodes: node1, node3, node4 and rpcnode

joshuafernandes (Sun, 15 Aug 2021 23:50:08 GMT):
something is a bit off there, could you send me a link to this one in marketplace please?

joshuafernandes (Sun, 15 Aug 2021 23:50:25 GMT):
This is the more upto date version we recommend for use https://azuremarketplace.microsoft.com/en-us/marketplace/apps/consensys.quorum-dev-quickstart?tab=Overview

sebaleoperez (Sun, 15 Aug 2021 23:50:32 GMT):
I was able to get the logs with the command you sent

sebaleoperez (Sun, 15 Aug 2021 23:51:04 GMT):
this one:

sebaleoperez (Sun, 15 Aug 2021 23:51:05 GMT):
https://azuremarketplace.microsoft.com/en-us/marketplace/apps/consensys.hyperledger-besu-quickstart?tab=Overview

joshuafernandes (Sun, 15 Aug 2021 23:51:29 GMT):
What do the logs say? If the chain head is progressing (blocks are being created, there isnt a reason for the nodes to be unhealthy ie their RPC endpoints are not accessible

sebaleoperez (Sun, 15 Aug 2021 23:51:41 GMT):
ah ok, so quorum and besu are going to be the same soon ?

sebaleoperez (Sun, 15 Aug 2021 23:52:16 GMT):
I'm able to see new blocks in the explorer so it's working

sebaleoperez (Sun, 15 Aug 2021 23:52:40 GMT):
{"timestamp":"2021-08-15T23:49:45,085","level":"INFO","thread":"pool-11-thread-1","class":"IbftRound","message":"Importing block to chain. round=ConsensusRoundIdentifier{Sequence=664870, Round=0}, hash=0x2afa1debb33fda1ec91f582326021a18ef57462edce9331ccdf452e0b0a53cb3","short_message":""} {"timestamp":"2021-08-15T23:49:47,098","level":"INFO","thread":"pool-11-thread-1","class":"IbftRound","message":"Importing block to chain. round=ConsensusRoundIdentifier{Sequence=664871, Round=0}, hash=0xf6baee632e99085db04be55409d60ae0bcb55780ca87392956987e1204dc2075","short_message":""} {"timestamp":"2021-08-15T23:49:47,100","level":"INFO","thread":"EthScheduler-Workers-2","class":"BlockPropagationManager","message":"Imported #664,871 / 0 tx / 0 om / 0 (0.0%) gas / (0xf6baee632e99085db04be55409d60ae0bcb55780ca87392956987e1204dc2075) in 0.005s.","short_message":""} {"timestamp":"2021-08-15T23:49:49,081","level":"INFO","thread":"pool-11-thread-1","class":"IbftRound","message":"Importing block to chain. round=ConsensusRoundIdentifier{Sequence=664872, Round=0}, hash=0xda9c11e3cbd9f3b25e214d64a9e8e29f0008f329f66c6ffe055b4d51e1512ec7","short_message":""} {"timestamp":"2021-08-15T23:49:51,075","level":"INFO","thread":"pool-11-thread-1","class":"IbftRound","message":"Importing block to chain. round=ConsensusRoundIdentifier{Sequence=664873, Round=0}, hash=0x88503edbda817975d7828c8d0995582a7d9588454af86d64ebbd93bee2301996","short_message":""} {"timestamp":"2021-08-15T23:49:51,101","level":"INFO","thread":"EthScheduler-Workers-0","class":"BlockPropagationManager","message":"Imported #664,873 / 0 tx / 0 om / 0 (0.0%) gas / (0x88503edbda817975d7828c8d0995582a7d9588454af86d64ebbd93bee2301996) in 0.016s.","short_message":""} {"timestamp":"2021-08-15T23:49:53,096","level":"INFO","thread":"EthScheduler-Workers-3","class":"BlockPropagationManager","message":"Imported #664,874 / 0 tx / 0 om / 0 (0.0%) gas / (0x3fe4bea1b4c6dc8d23800685e641545e1919a3fd885dc86106710837cc8c94f4) in 0.002s.","short_message":""} {"timestamp":"2021-08-15T23:49:53,102","level":"INFO","thread":"pool-11-thread-1","class":"IbftRound","message":"Importing block to chain. round=ConsensusRoundIdentifier{Sequence=664874, Round=0}, hash=0x3fe4bea1b4c6dc8d23800685e641545e1919a3fd885dc86106710837cc8c94f4","short_message":""} {"timestamp":"2021-08-15T23:49:55,089","level":"INFO","thread":"pool-11-thread-1","class":"IbftRound","message":"Importing block to chain. round=ConsensusRoundIdentifier{Sequence=664875, Round=0}, hash=0x16f873ded602a8a7b6780944c31e7235559e3118c527de1398b0243fd6449922","short_message":""} {"timestamp":"2021-08-15T23:49:55,118","level":"INFO","thread":"EthScheduler-Workers-1","class":"BlockPropagationManager","message":"Imported #664,875 / 0 tx / 0 om / 0 (0.0%) gas / (0x16f873ded602a8a7b6780944c31e7235559e3118c527de1398b0243fd6449922) in 0.000s.","short_message":""}

sebaleoperez (Sun, 15 Aug 2021 23:52:50 GMT):
these are the last lines

joshuafernandes (Sun, 15 Aug 2021 23:54:45 GMT):
Not quite - consensys offer both besu and goQuorum options in a quickstart and you can use either option to spin up a full chain. This marketplace offering is maintained and has docs and examples. The besu quickstart was based off it but isn't as easy to keep up to date due to some azure restrictions

sebaleoperez (Sun, 15 Aug 2021 23:55:35 GMT):
I see, so do you recommend to use quorum instead of besu ?

joshuafernandes (Sun, 15 Aug 2021 23:56:16 GMT):
I'd recommend using this one https://azuremarketplace.microsoft.com/en-us/marketplace/apps/consensys.quorum-dev-quickstart?tab=Overview on a fresh VM and you have the options of privacy as well using Tessera as well as permissioning that you can explore. Doco for it is here https://besu.hyperledger.org/en/latest/Tutorials/Examples/Private-Network-Example/

sebaleoperez (Sun, 15 Aug 2021 23:57:35 GMT):
Ok great to know, thanks for that. And 8 Gb RAM seems to work well, right ?

joshuafernandes (Sun, 15 Aug 2021 23:59:56 GMT):
No no, you still use Besu, just a different marketplace offering that is more uptodate. When you fire that one up, select Besu which is the default (option1). I'll work on updating the other Besu quickstart to get it up to date (but this takes a while with Azure)

joshuafernandes (Mon, 16 Aug 2021 00:04:02 GMT):
Besu nodes generally require a min of 4GB each, https://besu.hyperledger.org/en/latest/HowTo/Get-Started/System-Requirements/System-Requirements-Private/#java-virtual-machine-size For something that you test with a VM with 8 will run for a while until there are transactions etc until it'll need more RAM.

sebaleoperez (Mon, 16 Aug 2021 00:38:14 GMT):
I understand. Thanks for your help. I'll try then a new instance

sebaleoperez (Mon, 16 Aug 2021 00:38:38 GMT):
Using quorum quickstart

joshuafernandes (Mon, 16 Aug 2021 01:34:28 GMT):
:thumbsup: sounds good, let us know if you run into issues

fftkim (Mon, 16 Aug 2021 04:30:18 GMT):
Has joined the channel.

esther_pan (Mon, 16 Aug 2021 07:39:18 GMT):
Has joined the channel.

mklarmann (Mon, 16 Aug 2021 08:31:19 GMT):
Has joined the channel.

aditya.21991 (Mon, 16 Aug 2021 09:43:26 GMT):
Has joined the channel.

luandt1809 (Tue, 17 Aug 2021 04:08:57 GMT):
Has joined the channel.

N_Mizuki (Tue, 17 Aug 2021 05:12:47 GMT):
Has joined the channel.

hoily.dev (Tue, 17 Aug 2021 07:09:27 GMT):
Has joined the channel.

atodorov_kiwi (Tue, 17 Aug 2021 07:53:28 GMT):
Has joined the channel.

GuoshenKuang (Tue, 17 Aug 2021 09:14:36 GMT):
Has joined the channel.

samie (Tue, 17 Aug 2021 11:18:37 GMT):
Has joined the channel.

KevinKerkhoven (Tue, 17 Aug 2021 11:24:11 GMT):
Has joined the channel.

bharadwajambati172 (Tue, 17 Aug 2021 12:19:54 GMT):
Has joined the channel.

GereonHinz (Tue, 17 Aug 2021 13:34:45 GMT):
Has joined the channel.

HamzaHijazi (Tue, 17 Aug 2021 17:14:28 GMT):
Has joined the channel.

kevinhill (Tue, 17 Aug 2021 19:55:51 GMT):
Has joined the channel.

EmcLab (Tue, 17 Aug 2021 22:25:41 GMT):
Hi All, how to wipe out data with Besu database and have a refreshed start? There are some test data on chain and i would like to wipe them out and restart again. Thanks.

lucassaldanha (Wed, 18 Aug 2021 07:02:31 GMT):
If you want to wipe everything, you can delete your data-path https://besu.hyperledger.org/en/latest/Reference/CLI/CLI-Syntax/#data-path

BouXez (Wed, 18 Aug 2021 09:35:01 GMT):
Has joined the channel.

EmcLab (Wed, 18 Aug 2021 17:04:35 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=zn36wbqQinyjxRKGQ) Will delete path change the chain configuration? I would like to use the same configuration and just have a fresh start (like when the chain is up first time).

bsustudent (Wed, 18 Aug 2021 19:39:15 GMT):
Has joined the channel.

sudng (Wed, 18 Aug 2021 21:49:59 GMT):
Has joined the channel.

sudng (Wed, 18 Aug 2021 21:51:56 GMT):
Hello everyone, I am trying to send some transactions to besu, however besu always returns 'Upfront cost exceeds account balance' error even if I have set the gas value reasonably low. What do you suggest to solve this?

shemnon (Wed, 18 Aug 2021 22:10:16 GMT):
The account you are signing with on that particular chain does not have enough ether balance to cover the gasLimit * gasCost.

shemnon (Wed, 18 Aug 2021 22:10:24 GMT):
Add ether to that account.

lucassaldanha (Thu, 19 Aug 2021 00:36:16 GMT):
Your chain configuration is your genesis file, right? As long as the file is not in the data-path directory you should be fine.

lucassaldanha (Thu, 19 Aug 2021 00:36:27 GMT):
If it is, make a copy of it first =)

hiroyukihonda (Thu, 19 Aug 2021 01:08:28 GMT):
Has joined the channel.

HUOH 1 (Thu, 19 Aug 2021 02:15:59 GMT):
Has joined the channel.

aravindrajck (Thu, 19 Aug 2021 07:51:51 GMT):
Has joined the channel.

kaveri (Thu, 19 Aug 2021 08:28:34 GMT):
Has joined the channel.

tuyendev (Thu, 19 Aug 2021 09:48:01 GMT):
Has joined the channel.

sudng (Thu, 19 Aug 2021 10:35:24 GMT):
Thank you cor the response, I checked the account details in metamask and it has enough ether. In addition, I transferred some ether from other accounts to this account.

amitpadmani-awts (Thu, 19 Aug 2021 10:36:35 GMT):
Has left the channel.

shemnon (Thu, 19 Aug 2021 12:51:33 GMT):
Does it have enough? What's the gas cost * gas limit?

knagware9 (Thu, 19 Aug 2021 13:06:37 GMT):
Hi Team , Besu is production ready?

VijayMichalik (Thu, 19 Aug 2021 14:00:37 GMT):
Absolutely! Besu is used in production by hundreds of companies in a variety of contexts.

VijayMichalik (Thu, 19 Aug 2021 14:01:01 GMT):
Here's just one of many: https://www.hyperledger.org/learn/publications/posteitaliane-case-study

DianaTique (Thu, 19 Aug 2021 17:36:54 GMT):
Has joined the channel.

mona15 (Thu, 19 Aug 2021 22:12:40 GMT):
Has joined the channel.

huangxiaoqi (Fri, 20 Aug 2021 01:48:24 GMT):
Has joined the channel.

huangxiaoqi (Fri, 20 Aug 2021 01:49:50 GMT):
Hi, Team, Where can I find articles describing the structure of besu code

lucassaldanha (Fri, 20 Aug 2021 02:34:40 GMT):
I don't think we have written articles about the code structure. We have blog posts and webinars about some of the feature that we have implemented.

huangxiaoqi (Fri, 20 Aug 2021 02:54:30 GMT):
Ok, I found it, thanks!

huangxiaoqi (Fri, 20 Aug 2021 02:54:34 GMT):
Ok, I found it, thanks!

AnuragKumar10 (Fri, 20 Aug 2021 04:08:24 GMT):
Has joined the channel.

MatanNahmani (Fri, 20 Aug 2021 05:06:58 GMT):
Has joined the channel.

norswap (Fri, 20 Aug 2021 08:53:23 GMT):
Has joined the channel.

yigemaser (Fri, 20 Aug 2021 10:42:58 GMT):
Has joined the channel.

hishmad (Fri, 20 Aug 2021 11:10:38 GMT):
Has joined the channel.

bsu (Fri, 20 Aug 2021 11:45:15 GMT):
Has joined the channel.

w1g0 (Fri, 20 Aug 2021 13:28:40 GMT):
Has joined the channel.

Crispin-Sharkaroo (Fri, 20 Aug 2021 18:04:34 GMT):
Has joined the channel.

elman27 (Fri, 20 Aug 2021 19:11:11 GMT):
Has joined the channel.

sudng (Sun, 22 Aug 2021 13:14:59 GMT):
Yes, the account has enough ether. gasPrice: "0x0", gasLimit: "0x24A22". These are the limits

yogesh.yadav (Sun, 22 Aug 2021 17:12:21 GMT):
Has joined the channel.

shemnon (Sun, 22 Aug 2021 22:04:12 GMT):
If you are using mainnet or a public testnet they have all gone to eip-1559, which has a mandatory 7 wei base fee. Zero gas costing will only work on pre-london networks.

mikexiour (Mon, 23 Aug 2021 06:39:14 GMT):
Has joined the channel.

Anasalamin (Mon, 23 Aug 2021 07:00:24 GMT):
Has joined the channel.

malarflower23 (Mon, 23 Aug 2021 07:37:24 GMT):
Has joined the channel.

cinhtw (Mon, 23 Aug 2021 09:45:20 GMT):
Has joined the channel.

wonderwoman11 (Mon, 23 Aug 2021 12:40:04 GMT):
Has joined the channel.

ffendt (Mon, 23 Aug 2021 13:02:02 GMT):
Has joined the channel.

svitzebec (Mon, 23 Aug 2021 13:43:53 GMT):
Has joined the channel.

biswa1 (Mon, 23 Aug 2021 18:24:07 GMT):
Has joined the channel.

no_one13 (Mon, 23 Aug 2021 20:13:35 GMT):
Has joined the channel.

EmcLab (Tue, 24 Aug 2021 02:30:53 GMT):
Hi all, on iBFT2.0 network, tx submission returns an error about gas limit:

EmcLab (Tue, 24 Aug 2021 02:30:56 GMT):
[Error: cannot estimate gas; transaction may fail or may require manual gas limit (error={"reason":"bad response","code":"SERVER_ERROR","status":400,"headers":{"date":"Tue, 24 Aug 2021 02:23:41 GMT","content-type":"application/json","content-length":"109","server":"nginx/1.19.10","connection":"keep-alive"},"body":"{\n \"jsonrpc\" : \"2.0\",\n \"id\" : 46,\n \"error\" : {\n \"code\" : -32602,\n \"message\" : \"Invalid params\"\n }\n}","requestBody":"{\"method\":\"eth_estimateGas\",\"params\":[{\"gasPrice\":\"0x0\",\"type\":\"0x0\",\"from\":\"0xbc9e093db95e6a2a4e8f413df5bf2a4b6dfac303\",\"data\":\"0x60806040526002

EmcLab (Tue, 24 Aug 2021 02:32:04 GMT):
Since there is no mining on IBFT2.0 network , I am not sure why there is an error about gas.

atoulme (Tue, 24 Aug 2021 04:22:28 GMT):
that's not a transaction submission, you're calling `eth_estimageGas` ?

EmcLab (Tue, 24 Aug 2021 04:28:57 GMT):
`atoulme`, no. the app is calling a constructor of a contract.

Oliver_Tahir (Tue, 24 Aug 2021 05:02:40 GMT):
Has joined the channel.

Matannah 1 (Tue, 24 Aug 2021 05:17:41 GMT):
Has joined the channel.

mirgaon (Tue, 24 Aug 2021 06:46:36 GMT):
Has joined the channel.

atoulme (Tue, 24 Aug 2021 06:52:28 GMT):
@EmcLab `requestBody":"{\"method\":\"eth_estimateGas\"` from your message

tinkerbell (Tue, 24 Aug 2021 07:26:58 GMT):
Has joined the channel.

Jianglh (Tue, 24 Aug 2021 08:50:40 GMT):
Has joined the channel.

hfjohann (Tue, 24 Aug 2021 08:55:47 GMT):
Has joined the channel.

RuiYang (Tue, 24 Aug 2021 10:03:03 GMT):
Has joined the channel.

deathgod86 (Tue, 24 Aug 2021 10:42:31 GMT):
Has joined the channel.

fdiarra (Tue, 24 Aug 2021 11:04:45 GMT):
Has joined the channel.

drewmarshburn (Tue, 24 Aug 2021 12:00:05 GMT):
Has joined the channel.

kirstygoodary (Tue, 24 Aug 2021 15:25:48 GMT):
Has joined the channel.

EmcLab (Tue, 24 Aug 2021 17:58:37 GMT):
When using IP address of the server, the 4th_blockNumber returns number. However when using domain name it return nothing. When ping to the domain, the same IP is returned. What can cause the failure of eth_blockNumber with domain name? Here is the message with IP address:

EmcLab (Tue, 24 Aug 2021 17:58:56 GMT):
curl -X POST --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":51}' http://xxx.xxx.21.141 { "jsonrpc" : "2.0", "id" : 51, "result" : "0xaead" }%

EmcLab (Tue, 24 Aug 2021 18:07:00 GMT):
`ping domain_name` resolves to the same IP address xxx.xxx.21.141

anuragsingh (Tue, 24 Aug 2021 18:31:42 GMT):
Has joined the channel.

anuragsingh (Tue, 24 Aug 2021 18:42:46 GMT):
Hello everyone, I'm new to hyperledger and blockchain technology itself and want to contribute to Besu as I have some prior experience with Java. Could anyone guide me where should I begin to understand blockchain and hyperledger? It would be really helpful!

EmcLab (Tue, 24 Aug 2021 19:46:24 GMT):
what i did is to delete all files and subdir under data_path except 2 keys and restart the chain again. It worked

jjordan-quantum (Tue, 24 Aug 2021 19:49:38 GMT):
Has joined the channel.

j-s (Tue, 24 Aug 2021 20:46:22 GMT):
Has joined the channel.

atoulme (Tue, 24 Aug 2021 21:56:11 GMT):
besu.hyperledger.org has great docs you can use to get started. Welcome!

prathampatil8119 (Wed, 25 Aug 2021 04:24:32 GMT):
Has joined the channel.

knagware9 (Wed, 25 Aug 2021 04:38:46 GMT):
Yes, got it later.

knagware9 (Wed, 25 Aug 2021 04:39:13 GMT):
One question I want to build native token on besu like Binance smart chain.

knagware9 (Wed, 25 Aug 2021 04:40:16 GMT):
How I can create private network and create my native token so other dapp users can build on this network and use my native tokens

VisheshRaj (Wed, 25 Aug 2021 07:37:36 GMT):
Has joined the channel.

AlkaidCC (Wed, 25 Aug 2021 10:11:46 GMT):
Has joined the channel.

huzhiyang (Wed, 25 Aug 2021 12:29:30 GMT):
Has joined the channel.

VijayMichalik (Wed, 25 Aug 2021 14:13:36 GMT):
Yep absolutely. You can do this with Besu out of the box. It has a native by default. You would also need to use a bridge like Chainstack's ChainBridge to enable cross-chain transactions though.

balaji7777 (Wed, 25 Aug 2021 15:22:33 GMT):
Has joined the channel.

ShubhamUmate (Wed, 25 Aug 2021 17:01:13 GMT):
Has joined the channel.

NimiCorp (Wed, 25 Aug 2021 20:55:19 GMT):
Has joined the channel.

EmcLab (Wed, 25 Aug 2021 21:55:36 GMT):
ANTLR Tool version 4.7.1 used for code generation does not match the current runtime version 4.8ANTLR Runtime version 4.7.1 used for parser compilation does not match the current runtime version 4.8ANTLR Tool version 4.7.1 used for code generation does not match the current runtime version 4.8ANTLR Runtime version 4.7.1 used for parser compilation does not match the current runtime version 4.82021-08-26 05:53:25.550+08:00 | main | INFO | AbstractAltBnPrecompiledContract | Using LibEthPairings native alt bn128

EmcLab (Wed, 25 Aug 2021 21:56:07 GMT):
This is the error when the node just started. How to fix the error?

atoulme (Wed, 25 Aug 2021 22:02:31 GMT):
Feel free to open an issue, please.

shemnon (Wed, 25 Aug 2021 22:45:19 GMT):
Graphql and wiremock want different versions of ANTLR

shemnon (Wed, 25 Aug 2021 22:45:50 GMT):
GraphQL wants 4.8, wiremock 4.7.1.

shemnon (Wed, 25 Aug 2021 22:45:58 GMT):
How do you see these errors appear?

shemnon (Wed, 25 Aug 2021 22:47:05 GMT):
(Be sure to add those above to the github issue -> https://github.com/hyperledger/besu/issues)

macfarla (Thu, 26 Aug 2021 00:36:20 GMT):
@EmcLab check this issue - is it the same issue you're having? https://github.com/hyperledger/besu/issues/2548

macfarla (Thu, 26 Aug 2021 00:43:47 GMT):
@EmcLab it's the `type` parameter that besu is complaining about - what library are you using to send the transaction?

macfarla (Thu, 26 Aug 2021 00:44:30 GMT):
it's buried in there but it's an `Invalid params` error response

EmcLab (Thu, 26 Aug 2021 03:58:55 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=Hed3Borph4479jkXE) The app uses ethersjs 5.4

EmcLab (Thu, 26 Aug 2021 04:01:03 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=XyT7wrRQRxtYq8cSz) `macfaria`, it is similar issue posted by another developer. The issue is still open

EmcLab (Thu, 26 Aug 2021 04:02:34 GMT):
After systemctl restart node1.service for boot node, the node only has a few minutes log and then stopped. Here is whole log after restart.

EmcLab (Thu, 26 Aug 2021 04:02:53 GMT):
ANTLR Tool version 4.7.1 used for code generation does not match the current runtime version 4.8ANTLR Runtime version 4.7.1 used for parser compilation does not match the current runtime version 4.8ANTLR Tool version 4.7.1 used for code generation does not match the current runtime version 4.8ANTLR Runtime version 4.7.1 used for parser compilation does not match the current runtime version 4.8Setting logging level to DEBUG 2021-08-26 11:42:15.237+08:00 | main | DEBUG | Native | Looking in classpath from jdk.internal.loader.ClassLoaders$AppClassLoader@5bc2b487 for /com/sun/jna/linux-x86-64/libjnidispatch.so 2021-08-26 11:42:15.241+08:00 | main | DEBUG | Native | Found library resource at jar:file:/home/besu/lib/jna-5.6.0.jar!/com/sun/jna/linux-x86-64/libjnidispatch.so 2021-08-26 11:42:15.242+08:00 | main | DEBUG | Native | Extracting library to /root/.cache/JNA/temp/jna5706150786603520446.tmp 2021-08-26 11:42:15.244+08:00 | main | DEBUG | Native | Trying /root/.cache/JNA/temp/jna5706150786603520446.tmp 2021-08-26 11:42:15.246+08:00 | main | DEBUG | Native | Found jnidispatch at /root/.cache/JNA/temp/jna5706150786603520446.tmp 2021-08-26 11:42:15.290+08:00 | main | DEBUG | NativeLibrary | Looking for library 'secp256k1' 2021-08-26 11:42:15.290+08:00 | main | DEBUG | NativeLibrary | Adding paths from jna.library.path: null 2021-08-26 11:42:15.290+08:00 | main | DEBUG | NativeLibrary | Trying libsecp256k1.so 2021-08-26 11:42:15.291+08:00 | main | DEBUG | NativeLibrary | Loading failed with message: libsecp256k1.so: cannot open shared object file: No such file or directory 2021-08-26 11:42:15.291+08:00 | main | DEBUG | NativeLibrary | Adding system paths: [/usr/lib/x86_64-linux-gnu, /lib/x86_64-linux-gnu, /usr/lib64, /lib64, /usr/lib, /lib, /usr/lib/x86_64-linux-gnu/libfakeroot] 2021-08-26 11:42:15.291+08:00 | main | DEBUG | NativeLibrary | Trying libsecp256k1.so 2021-08-26 11:42:15.292+08:00 | main | DEBUG | NativeLibrary | Loading failed with message: libsecp256k1.so: cannot open shared object file: No such file or directory 2021-08-26 11:42:15.292+08:00 | main | DEBUG | NativeLibrary | Looking for version variants 2021-08-26 11:42:15.295+08:00 | main | DEBUG | Native | Looking in classpath from jdk.internal.loader.ClassLoaders$AppClassLoader@5bc2b487 for secp256k1 2021-08-26 11:42:15.296+08:00 | main | DEBUG | Native | Found library resource at jar:file:/home/besu/lib/secp256k1-0.3.0.jar!/linux-x86-64/libsecp256k1.so 2021-08-26 11:42:15.296+08:00 | main | DEBUG | Native | Extracting library to /root/.cache/JNA/temp/jna17620162308908906133.tmp 2021-08-26 11:42:15.302+08:00 | main | DEBUG | NativeLibrary | Found library 'secp256k1' at /root/.cache/JNA/temp/jna17620162308908906133.tmp

EmcLab (Thu, 26 Aug 2021 04:04:13 GMT):
I tried to restart several times and the node stopped after a few minute run. Not sure what is the problem here.

EmcLab (Thu, 26 Aug 2021 04:48:56 GMT):
BTW it is besu 21.7.2

EmcLab (Thu, 26 Aug 2021 04:50:08 GMT):
openjdk 14.0.2 2020-07-14

ashishspg (Thu, 26 Aug 2021 05:22:22 GMT):
Has joined the channel.

AskarAlmabek (Thu, 26 Aug 2021 06:02:22 GMT):
Has joined the channel.

EmcLab (Thu, 26 Aug 2021 06:10:49 GMT):
Hi all ,usually how long it takes for a 4 nodes Besu network to sync up? After one hour, there is still 0 peer connected and one peer on boot node. Tried to restart several time

EmcLab (Thu, 26 Aug 2021 06:11:00 GMT):
Besu 21.7.2

Hasib_Linux (Thu, 26 Aug 2021 07:28:01 GMT):
Has joined the channel.

JongHyunPark (Thu, 26 Aug 2021 08:38:03 GMT):
Has joined the channel.

SatyamGupta1 (Thu, 26 Aug 2021 13:56:49 GMT):
Has joined the channel.

ElhamShammar (Thu, 26 Aug 2021 15:30:45 GMT):
Has joined the channel.

EmcLab (Thu, 26 Aug 2021 19:30:32 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=7QSSQmmwAsXWZRAXN) Besides to upgrading to 21.7.2, there is no change with configuration which was working before.

shemnon (Thu, 26 Aug 2021 19:36:17 GMT):
Which networks?

EmcLab (Thu, 26 Aug 2021 22:12:33 GMT):
IBFT2.0

atoulme (Thu, 26 Aug 2021 23:25:02 GMT):
hey folks, when you look at the privateFor of a private transaction, can you tell which parties are part of the transaction, or is it obfuscated? I forget.

macfarla (Fri, 27 Aug 2021 00:01:02 GMT):
privateFor lists the Tessera public keys of the recipients. If you want obfuscation, you need privacy groups

atoulme (Fri, 27 Aug 2021 00:01:32 GMT):
excellent, so there is a solution

atoulme (Fri, 27 Aug 2021 00:01:36 GMT):
thanks!

macfarla (Fri, 27 Aug 2021 00:01:57 GMT):
Besu privacy groups :)

atoulme (Fri, 27 Aug 2021 00:02:40 GMT):
I admit I didn't have time to play with those.

macfarla (Fri, 27 Aug 2021 02:11:29 GMT):
So ethersjs must be sending through this `type` parameter. Is this new behavior? Can you share the json request you are sending to ethersjs?

macfarla (Fri, 27 Aug 2021 02:12:33 GMT):
We do already ignore certain fields to `eth_call` and `eth_estimateGas` because they are passed in by third-party libs eg https://github.com/hyperledger/besu/pull/2464 so it's possible we need to add an exception for this one too

macfarla (Fri, 27 Aug 2021 02:13:28 GMT):
If it makes sense to do this, it's a pretty easy change to make

macfarla (Fri, 27 Aug 2021 02:35:56 GMT):
the ANTLR version thing is just a warning, it shouldn't affect besu operation.

macfarla (Fri, 27 Aug 2021 02:36:45 GMT):
the native libs loading messages, similarly, shouldn't affect node operation - it's just telling you where it's looking for native libs and where it finally finds them

Princekumar4812 (Fri, 27 Aug 2021 03:02:21 GMT):
Has joined the channel.

bhuwanupadhyay (Fri, 27 Aug 2021 06:37:11 GMT):
Has joined the channel.

mohsinanees (Fri, 27 Aug 2021 09:51:06 GMT):
Has joined the channel.

sashankh (Fri, 27 Aug 2021 18:58:04 GMT):
Has joined the channel.

ShafiqIslam (Fri, 27 Aug 2021 22:34:38 GMT):
Has joined the channel.

thonexin (Sat, 28 Aug 2021 04:41:22 GMT):
Has joined the channel.

TrishPat (Sat, 28 Aug 2021 07:55:35 GMT):
Has joined the channel.

jk-tonycui (Sun, 29 Aug 2021 02:14:52 GMT):
Has joined the channel.

samson9993 (Sun, 29 Aug 2021 08:19:53 GMT):
Has joined the channel.

EmcLab (Sun, 29 Aug 2021 21:26:41 GMT):
Hello all, here is a piece of Besu boot node log (4 nodes IBFT2.0) showing invalid params. This invalid params is caused by a contract deploying tx which I am trying to debug. What is really going wrong here? can someone decipher the log? Many thanks.

EmcLab (Sun, 29 Aug 2021 21:26:45 GMT):
2021-08-30 04:50:46.788+08:00 | vert.x-eventloop-thread-0 | DEBUG | B3PropagatorExtractorMultipleHeaders | Invalid TraceId in B3 header: null'. Returning INVALID span context. 2021-08-30 04:50:46.790+08:00 | vert.x-worker-thread-1 | DEBUG | JsonRpcHttpService | JSON-RPC request -> eth_estimateGas 2021-08-30 04:50:46.790+08:00 | vert.x-worker-thread-1 | DEBUG | JsonRpcHttpService | Invalid Params org.hyperledger.besu.ethereum.api.jsonrpc.internal.exception.InvalidJsonRpcParameters: Invalid json rpc parameter at index 0 at org.hyperledger.besu.ethereum.api.jsonrpc.internal.parameters.JsonRpcParameter.optional(JsonRpcParameter.java:74) at org.hyperledger.besu.ethereum.api.jsonrpc.internal.parameters.JsonRpcParameter.required(JsonRpcParameter.java:39) at org.hyperledger.besu.ethereum.api.jsonrpc.internal.JsonRpcRequest.getRequiredParameter(JsonRpcRequest.java:133) at org.hyperledger.besu.ethereum.api.jsonrpc.internal.JsonRpcRequestContext.getRequiredParameter(JsonRpcRequestContext.java:64) at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.validateAndGetCallParams(EthEstimateGas.java:168) at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.response(EthEstimateGas.java:63) at org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService.process(JsonRpcHttpService.java:725) at org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService.lambda$handleJsonSingleRequest$13(JsonRpcHttpService.java:579) at io.vertx.core.impl.ContextImpl.lambda$executeBlocking$2(ContextImpl.java:313) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630) at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) at java.base/java.lang.Thread.run(Thread.java:832) Caused by: com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field "type" (class org.hyperledger.besu.ethereum.api.jsonrpc.internal.parameters.JsonCallParameter), not marked as ignorable (11 known properties: "gasPrice", "value", "gasLimit", "gas", "from", "to", "maxFeePerGas", "strict", "maxPriorityFeePerGas", "payload", "data"]) at [Source: (StringReader); line: 1, column: 42492] (through reference chain: org.hyperledger.besu.ethereum.api.jsonrpc.internal.parameters.JsonCallParameter["type"]) at com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException.from(UnrecognizedPropertyException.java:61)

shemnon (Sun, 29 Aug 2021 22:11:04 GMT):
> Caused by: com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field "type"

EmcLab (Sun, 29 Aug 2021 22:45:35 GMT):
filed "type" is not a contract params. Is it a part of ethersjs used submitting the tx? It is ethersjs 5.4 used.

EmcLab (Sun, 29 Aug 2021 22:47:02 GMT):
The contract deploy code is:

EmcLab (Sun, 29 Aug 2021 22:47:41 GMT):
let overrides = { gasPrice:100000, }; contractFS = await factory.deploy(value, item.name, item.id, overrides);

EmcLab (Sun, 29 Aug 2021 22:48:25 GMT):
value is an integer. item.name is a string. id is an integer.

macfarla (Sun, 29 Aug 2021 22:50:24 GMT):
@EmcLab this is the same problem as you're having here https://chat.hyperledger.org/channel/besu?msg=LH5ysDkqCXBL4NnoT

macfarla (Sun, 29 Aug 2021 22:50:24 GMT):
@EmcLab this is the same problem as you're having here https://chat.hyperledger.org/channel/besu/thread/LH5ysDkqCXBL4NnoT?jump=Hed3Borph4479jkXE

macfarla (Sun, 29 Aug 2021 22:51:36 GMT):
we have added ignores for other non-spec fields that are added by other third-party libs but this is a new one

macfarla (Sun, 29 Aug 2021 23:08:54 GMT):
I haven't investigated why ethersjs is adding this field but this change would get around it https://github.com/hyperledger/besu/pull/2690

EmcLab (Sun, 29 Aug 2021 23:15:53 GMT):
Same problem. I just upgraded to ethers 5.4.6 and it solves the problem so far

EmcLab (Sun, 29 Aug 2021 23:17:06 GMT):
The problem is quite annoying as I have spent days on it.

macfarla (Sun, 29 Aug 2021 23:31:41 GMT):
ok sounds like updating ethers.js is the fix then!

shemnon (Mon, 30 Aug 2021 01:01:40 GMT):
@macfarla perhaps we could consider ignoring unknown parameters and attempting the call with what is left? This smells like ethersjs was using a pre-final form of the London JSON-RPC changes.

maurosala (Mon, 30 Aug 2021 07:09:49 GMT):
Has joined the channel.

dsam82 (Mon, 30 Aug 2021 08:53:39 GMT):
Has joined the channel.

rroman 1 (Mon, 30 Aug 2021 09:12:34 GMT):
Has joined the channel.

rroman 1 (Mon, 30 Aug 2021 09:23:41 GMT):
Hello team!! My company has an Alastria node with Besu deployed (besu/v20.10.2/linux-x86_64/oracle-java-16) where we are trying to integrate some dApps. The Smart Contracts have been deployed properly using truffle. The problem comes when we try to interact with them. I can't connect metamask with the besu node, it says: Could not fetch chain ID. Is your RPC URL correct?

peppelinux (Mon, 30 Aug 2021 14:04:26 GMT):
Has joined the channel.

hckkid (Mon, 30 Aug 2021 17:20:08 GMT):
Has joined the channel.

hckkid (Mon, 30 Aug 2021 17:20:08 GMT):
Hi guys, I would like to know how to build besu on arm 64 if it is possible.

hckkid (Mon, 30 Aug 2021 17:20:51 GMT):
For me some tests keep failing

shemnon (Mon, 30 Aug 2021 18:16:18 GMT):
Which OS?

hckkid (Mon, 30 Aug 2021 18:17:48 GMT):
I am trying to do it on amazon linux

hckkid (Mon, 30 Aug 2021 18:18:21 GMT):
Trying to use t4g instances of AWS, but i can opt for ubuntu or any other production grade OS

hckkid (Mon, 30 Aug 2021 18:18:47 GMT):
Attempting in parallel to build on ubuntu.

shemnon (Mon, 30 Aug 2021 18:18:49 GMT):
We haven't added Linux arm64 to our supported list yet. We can get mac to build on M1 chips but native libraries we depend on are the longer poles, stuff like snappy compression.

hckkid (Mon, 30 Aug 2021 18:20:54 GMT):
ok, would it be possible that Mac M1 binary packed in docker image work on linux, this may be a stupid idea, just thinking out loud

hckkid (Mon, 30 Aug 2021 18:21:04 GMT):
Also any plan to support linux arm64 ?

shemnon (Mon, 30 Aug 2021 18:22:14 GMT):
no one's made commitments to linux arm yet. It hasn't been on anyone's radar.

hckkid (Mon, 30 Aug 2021 18:23:08 GMT):
Ok, are there huge fixes that need to be done, if the fixes are few I can make an attempt myself to make it work.

shemnon (Mon, 30 Aug 2021 18:24:38 GMT):
It's the native libraries. https://github.com/hyperledger/besu-native will need to be updated, a local arm64 version of libsodium for the privacy tests, as well as nss. Let me run some searches to see the other native libraries needd.

hckkid (Mon, 30 Aug 2021 18:25:44 GMT):
I have been able to setup libsodium on arm64

shemnon (Mon, 30 Aug 2021 18:34:19 GMT):
jars with libs - `jansi-2.3.4`, `jline-2.14.6.jar`, also these, but they look to have the needed arm libs already - `jffi-1.2.17-native.jar`,`jna-5.8.0.jar` `netty-all-4.1.66.Final.jar`, `netty-tcnative-boringssl-static-2.0.40.Final.jar`, `rocksdbjni-6.15.2.jar`, `snappy-java-1.1.8.4.jar`

shemnon (Mon, 30 Aug 2021 18:34:34 GMT):
so it looks like just the ansi support and native crypto are in needed.

shemnon (Mon, 30 Aug 2021 18:34:34 GMT):
so it looks like just the ansi support and native crypto are needed.

hckkid (Mon, 30 Aug 2021 18:35:14 GMT):
I am trying to build Besu Native as suggested.

hckkid (Mon, 30 Aug 2021 18:35:32 GMT):
I will look into ansi support too

shemnon (Mon, 30 Aug 2021 18:37:07 GMT):
Looks like all that may be needed is to major version update jline to the 3.x series. Besu will fall back to pure java crypto if the native libraries are absent.

hckkid (Mon, 30 Aug 2021 19:56:03 GMT):
@shemnon can you help me where to put these jar files. I am stuck in last stage (build jars) of building besu-native now

shemnon (Mon, 30 Aug 2021 19:56:38 GMT):
./gradlew publishToMavenLocal

hckkid (Mon, 30 Aug 2021 19:56:41 GMT):
Had to tweak few rust files to reach there (type of c_char is u8 in arm64, code was expecting i8)

shemnon (Mon, 30 Aug 2021 19:56:53 GMT):
then update versions.gradle to sue the -SNAPSHOT version published

hckkid (Mon, 30 Aug 2021 19:59:20 GMT):
Will try this, will also study a bit more in depth on how gradle commands work.

hckkid (Mon, 30 Aug 2021 19:59:26 GMT):
Thanks for the help :)

hkiridera (Tue, 31 Aug 2021 00:51:23 GMT):
Hello. I have a question about contract of flexible privacy group. I need to get lock before addParticipants function. but, i don't need get lock before removeParticipant function. why different both addParticipants and removeParticipant funtions I think also need to get lock before exec removeParticipant funtions. I also think don't need to get lock before exec both functions.becouse transaction of blockchain is not conflict if get lock or not.

macfarla (Tue, 31 Aug 2021 01:25:49 GMT):
Agree @shemnon - this matches what geth does too. https://github.com/hyperledger/besu/pull/2690

macfarla (Tue, 31 Aug 2021 02:16:24 GMT):
This likely means that there's a problem with the URL you're entering into Metamask. Have you allowed MetaMask access to Besu (CLI option `--rpc-http-cors-origins`)

macfarla (Tue, 31 Aug 2021 02:16:47 GMT):
Could be something like localhost vs 127.0.0.1 https://ethereum.stackexchange.com/questions/91196/could-not-fetch-chain-id-is-your-rpc-url-correct

EmcLab (Tue, 31 Aug 2021 04:22:01 GMT):
Hi all, here is the error when start boot node, saying missing a file or directory. How to fix it?

EmcLab (Tue, 31 Aug 2021 04:22:03 GMT):
2021-08-31 12:18:15.893+08:00 | main | DEBUG | NativeLibrary | Trying libsecp256k1.so 2021-08-31 12:18:15.893+08:00 | main | DEBUG | NativeLibrary | Loading failed with message: libsecp256k1.so: cannot open shared object file: No such file or directory 2021-08-31 12:18:15.894+08:00 | main | DEBUG | NativeLibrary | Adding system paths: [/usr/lib/x86_64-linux-gnu, /lib/x86_64-linux-gnu, /usr/lib64, /lib64, /usr/lib, /lib, /usr/lib/x86_64-linux-gnu/libfakeroot] 2021-08-31 12:18:15.894+08:00 | main | DEBUG | NativeLibrary | Trying libsecp256k1.so 2021-08-31 12:18:15.894+08:00 | main | DEBUG | NativeLibrary | Loading failed with message: libsecp256k1.so: cannot open shared object file: No such file or directory 2021-08-31 12:18:15.894+08:00 | main | DEBUG | NativeLibrary | Looking for version variants

EmcLab (Tue, 31 Aug 2021 04:28:44 GMT):
restart the boot node several times and it just does not kick in.

WillimJames (Tue, 31 Aug 2021 05:56:25 GMT):
Has joined the channel.

lucassaldanha (Tue, 31 Aug 2021 06:50:11 GMT):
Could you please share OS and Besu version being used?

macfarla (Tue, 31 Aug 2021 07:16:18 GMT):
You only need to lock when you are adding because the “adder” needs to prepare the blob of data that contains all the private transactions up to that point. The lock is to prevent private transactions between creating the blob and adding that member to make sure that the new member ends up having the same state as everybody else. This is not necessary when removing someone from the group. Does that make sense?

hkiridera (Tue, 31 Aug 2021 07:30:25 GMT):
Thank you for kindly replying. I understand that why need lock mechanism.

pipscobie (Tue, 31 Aug 2021 11:16:04 GMT):
Has joined the channel.

giorgiomecca (Tue, 31 Aug 2021 12:31:16 GMT):
Has joined the channel.

giorgiomecca (Tue, 31 Aug 2021 12:32:16 GMT):
Hi all, i'm new in the blockchain, my question: can I start a real blockchain with BESU?

giorgiomecca (Tue, 31 Aug 2021 14:19:23 GMT):
Another question, can I use a Blockchain provider? (Because i connect whit web3 end rpc endpoint but if the node is down, how i connect to the blockchain?)

JJeffrey (Tue, 31 Aug 2021 14:35:26 GMT):
Has joined the channel.

VijayMichalik (Tue, 31 Aug 2021 15:31:26 GMT):
Yep, you can either make a private network/sidechain or join the public Ethereum network! Any of which would be a real blockchain

VijayMichalik (Tue, 31 Aug 2021 15:37:02 GMT):
You can use a blockchain-as-a-service provider or other managed service to access Besu networks, otherwise you have to ensure you are building a highly available endpoint for yourself

birjoossh (Wed, 01 Sep 2021 00:53:18 GMT):
Has joined the channel.

EmcLab (Wed, 01 Sep 2021 06:12:11 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=psegHmmWjZPLCdcTm) Sure. It is ubuntu 20.04 and Besu 21.7.2

EmcLab (Wed, 01 Sep 2021 06:13:53 GMT):
Hi, when host-whitelist and host-allowlist enabled at the same time in config.toml for boot node, there is an error. It is on ubuntu 20.04 and Besu 21.7.2:

EmcLab (Wed, 01 Sep 2021 06:13:59 GMT):
picocli.CommandLine$ParameterException: Values '*' or 'all' can't be used with other hostnames at org.hyperledger.besu.cli.BesuCommand.run(BesuCommand.java:1223) at picocli.CommandLine.executeUserObject(CommandLine.java:1939) at picocli.CommandLine.access$1300(CommandLine.java:145) at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2352) at picocli.CommandLine$RunLast.handle(CommandLine.java:2346) at picocli.CommandLine$RunLast.handle(CommandLine.java:2311) at picocli.CommandLine$AbstractParseResultHandler.handleParseResult(CommandLine.java:2172) at picocli.CommandLine.parseWithHandlers(CommandLine.java:2550) at org.hyperledger.besu.cli.util.ConfigOptionSearchAndRunHandler.handle(ConfigOptionSearchAndRunHandler.java:56) at org.hyperledger.besu.cli.util.ConfigOptionSearchAndRunHandler.handle(ConfigOptionSearchAndRunHandler.java:31) at picocli.CommandLine$AbstractParseResultHandler.handleParseResult(CommandLine.java:2172) at picocli.CommandLine.parseWithHandlers(CommandLine.java:2550) at org.hyperledger.besu.cli.BesuCommand.parse(BesuCommand.java:1367) at org.hyperledger.besu.cli.BesuCommand.parse(BesuCommand.java:1190) at org.hyperledger.besu.Besu.main(Besu.java:50) Caused by: java.lang.IllegalArgumentException: Values '*' or 'all' can't be used with other hostnames at org.hyperledger.besu.cli.custom.JsonRPCAllowlistHostsProperty.addAll(JsonRPCAllowlistHostsProperty.java:81) at org.hyperledger.besu.cli.BesuCommand.configure(BesuCommand.java:1607) at org.hyperledger.besu.cli.BesuCommand.run(BesuCommand.java:1216) ... 14 more To display full help: besu [COMMAND] --help

EmcLab (Wed, 01 Sep 2021 06:14:17 GMT):
The config.toml code is:

EmcLab (Wed, 01 Sep 2021 06:15:28 GMT):
host-whitelist=["my domain"] host-allowlist=["*"]

EmcLab (Wed, 01 Sep 2021 06:18:02 GMT):
If I would like to use domain name in provider, how shall host-whitelist and host-allowlist be configured? What I find is that if host-allowlist is removed, then using IP address in provider does not work.

clemhumb (Wed, 01 Sep 2021 06:20:01 GMT):
Has joined the channel.

roviso (Wed, 01 Sep 2021 07:05:06 GMT):
Has joined the channel.

antonydenyer (Wed, 01 Sep 2021 07:29:16 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=aW7vtHPPaofs7TBGu) `host-whitelist` and `host-allowlist` are synonyms. You should do something like `host-allowlist=["domain.com", "10.0.0.1", ....]`

sunchiye (Wed, 01 Sep 2021 07:46:34 GMT):
Has joined the channel.

ohthemboats (Wed, 01 Sep 2021 08:03:49 GMT):
Has joined the channel.

giorgiomecca (Wed, 01 Sep 2021 08:12:15 GMT):
sorry, when i connect to besu with web3 i use the local provider (127.0.0.1) if i want realize a real blockchain i can't use the IP address, what can i do??

MahaQahtani (Wed, 01 Sep 2021 08:38:23 GMT):
Has joined the channel.

antonydenyer (Wed, 01 Sep 2021 08:48:54 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=e6tkpuLSRyLHmQ6oM) What params are you using to run besu?

giorgiomecca (Wed, 01 Sep 2021 09:09:12 GMT):
besu --data-path=data --genesis-file=..\genesis.json --bootnodes= --p2p-port=30304 --rpc-http-enabled --rpc-http-api=ETH,NET,IBFT --host-allowlist="*" --rpc-http-cors-origins="all" --rpc-http-port=8546

antonydenyer (Wed, 01 Sep 2021 09:10:36 GMT):
and what network are you connecting to? ie what's in your genesis.json? Or are you running a private network?

antonydenyer (Wed, 01 Sep 2021 09:20:43 GMT):
the reason I ask is because there's nothing not real about having the --rpc-host running on localhost.

antonydenyer (Wed, 01 Sep 2021 09:21:22 GMT):
you could specify --rpc-host to be your external ip address. This would allow external client to connect to your node

antonydenyer (Wed, 01 Sep 2021 09:21:22 GMT):
you could specify --rpc-host to be your external ip address. This would allow anyone to connect to your node

giorgiomecca (Wed, 01 Sep 2021 10:13:34 GMT):
can I use Azure for provider so i can connect web3(//link get by azure)??

SheharYar (Wed, 01 Sep 2021 20:43:21 GMT):
Has joined the channel.

SheharYar (Wed, 01 Sep 2021 20:49:39 GMT):
Hi team, i have an issue interacting with a deployed smart contract, i have created a smart contract in remix ide, i have spun up besu nodes (etc), deployed the contract and was able to successfully interact with it in the remix ide. I was able to see confirmation blocks. Now the issue is, im using web3j in java and trying to interact with the contract with code. Im seeing an issue with `Error processing transaction request: Upfront cost exceeds account balance` I have enough in my account , you can see the logs below ``` 2021-09-01 16:28:54.940 INFO 27175 --- [ main] c.m.b.besu.core.service.StorageService : account balance 90000000000000000000000 2021-09-01 16:28:54.956 INFO 27175 --- [ main] c.m.b.besu.core.service.StorageService : nonce 0 2021-09-01 16:28:54.974 INFO 27175 --- [ main] c.m.b.besu.core.service.StorageService : signed message : 0xf901298084f46109008389544094b9a219631aed55ebc3d998f17c3840b7ec39c0cc80b8c434ea1b610000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000016300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000164000000000000000000000000000000000000000000000000000000000000001ba06baa17334977a6b31d84eadc762a1d5cbb24f6bb5cd8f08d6cc01db329490c3aa061dbb6d77073e94fefe598d59793d8e17cd7f6685390405848fe4857f76a92f5 2021-09-01 16:28:54.979 INFO 27175 --- [ main] c.m.b.besu.core.service.StorageService : transaction response null ```

SheharYar (Wed, 01 Sep 2021 20:54:57 GMT):

SheharYar - Wed Sep 01 2021 16:54:53 GMT-0400 (Eastern Daylight Time).txt

Harsh_Vekariya (Thu, 02 Sep 2021 05:31:49 GMT):
Has joined the channel.

ShekharGuptaEN (Thu, 02 Sep 2021 05:47:21 GMT):
Has joined the channel.

martinmaurer (Thu, 02 Sep 2021 06:11:09 GMT):
Has joined the channel.

sukrutsathaye (Thu, 02 Sep 2021 11:08:51 GMT):
Hello all, I am trying to run a besu docker image with my custom genesis file and some other customized options, however, even after I provide the correct path to --genesis-file it always says that unable to load genesis file, no such file or directory

sukrutsathaye (Thu, 02 Sep 2021 11:09:19 GMT):
I also have some difficulty finding command line options for besu

ArchitaDasgupta (Thu, 02 Sep 2021 11:45:25 GMT):
Has joined the channel.

nikolas (Thu, 02 Sep 2021 13:32:17 GMT):
Hi, is there a guide for securing a permissioned network for production? I would appreciate any documentation / hints / links.

smyyihvn (Thu, 02 Sep 2021 15:08:15 GMT):
Has joined the channel.

peter_somogyvari (Thu, 02 Sep 2021 19:10:19 GMT):
Hi All, I wanted to bump the thread on this web3js-eea PR of mine that's been idling for some time: https://github.com/ConsenSys/web3js-eea/pull/166 (I know it's not an HL project, but I figured someone on the Besu team might know what's up)

ramu450 (Fri, 03 Sep 2021 05:12:52 GMT):
Has joined the channel.

Omen 8 (Fri, 03 Sep 2021 05:34:42 GMT):
Has joined the channel.

giorgiomecca (Fri, 03 Sep 2021 09:48:13 GMT):
why min-gas-price=0 require mining??

AdityaGupta150 (Fri, 03 Sep 2021 12:15:59 GMT):
Has joined the channel.

anil8753 (Fri, 03 Sep 2021 15:21:54 GMT):
Has joined the channel.

leebradley (Fri, 03 Sep 2021 15:42:06 GMT):
Has joined the channel.

FoamCactus (Fri, 03 Sep 2021 15:54:09 GMT):
Has joined the channel.

atoulme (Fri, 03 Sep 2021 16:31:02 GMT):
mining and gas prices are not related, mining relates to the security of the network. Gas prices are DDoS protections for transactions.

atoulme (Fri, 03 Sep 2021 16:31:19 GMT):
If you use PoW, you use mining. Try running Besu with a different consensus algorithm instead.

alagiesellu (Fri, 03 Sep 2021 20:27:03 GMT):
Has joined the channel.

rlnrajesh (Sat, 04 Sep 2021 03:27:10 GMT):
Has joined the channel.

frank-student (Sat, 04 Sep 2021 03:41:46 GMT):
Has joined the channel.

kutya (Sat, 04 Sep 2021 09:47:06 GMT):
Has joined the channel.

MiryangJung (Sat, 04 Sep 2021 14:41:21 GMT):
Has joined the channel.

pseudoyu (Sat, 04 Sep 2021 15:10:22 GMT):
Has joined the channel.

rohitcha (Sun, 05 Sep 2021 09:05:42 GMT):
Has joined the channel.

rohitcha (Sun, 05 Sep 2021 09:06:48 GMT):
Hello guys, I have a question regarding using Flutter as the User interface tech. Do we have a lib that allows me to do that?

shemnon (Sun, 05 Sep 2021 14:01:23 GMT):
Try web3dart. Never used it but the repo receives semi-regular commits - https://github.com/simolus3/web3dart

RahulRajBarnwal (Sun, 05 Sep 2021 16:21:29 GMT):
Has joined the channel.

bhathiya (Sun, 05 Sep 2021 17:58:03 GMT):
Has joined the channel.

VijayMichalik (Sun, 05 Sep 2021 18:37:22 GMT):
Hey Besu users! I've just updated the release calendar with proposed release dates for the next year -> https://wiki.hyperledger.org/display/BESU/Future+Release+Dates For a bit more context on our Calendar Versioning and what versioning really means for you, see this post -> https://wiki.hyperledger.org/display/BESU/Using+CalVer+for+Besu+Releases

VijayMichalik (Sun, 05 Sep 2021 18:44:58 GMT):
Hey Peter - I can take a look, but hopefully you've seen the notice that we've moved to https://github.com/consensys/web3js-quorum now

VijayMichalik (Sun, 05 Sep 2021 18:46:21 GMT):
I just remembered that the team had considered this and were supposed to get back to you about integrating the PR you made into the new repo. Apologies for the delay! It just came right in the middle of our migration of features.

VijayMichalik (Sun, 05 Sep 2021 18:46:35 GMT):
I'll make sure it gets looked at this week :pray:

scnale (Sun, 05 Sep 2021 23:39:03 GMT):
Has joined the channel.

taccatisid (Mon, 06 Sep 2021 03:30:43 GMT):
Has joined the channel.

BovTricera (Mon, 06 Sep 2021 04:11:43 GMT):
Has joined the channel.

rohitcha (Mon, 06 Sep 2021 04:49:16 GMT):
Thank you Shemnon! :pray:

XINGYUZHU (Mon, 06 Sep 2021 06:44:20 GMT):
Has left the channel.

ShaharinAhmed (Mon, 06 Sep 2021 09:52:57 GMT):
Has joined the channel.

iffathossain (Mon, 06 Sep 2021 09:53:01 GMT):
Has joined the channel.

ShaharinAhmed (Mon, 06 Sep 2021 09:54:22 GMT):
Hello guys, i would like to know if it possible to configure a network such that new blocks are added only when there is transactions in the pool using IBFT 2.0 consensus protocol?

omerabbas (Mon, 06 Sep 2021 11:09:05 GMT):
Has joined the channel.

Junior22 (Mon, 06 Sep 2021 11:48:05 GMT):
Has joined the channel.

VijayMichalik (Mon, 06 Sep 2021 19:43:10 GMT):
Hey @ShaharinAhmed, we are actually looking into something like this right now and it will hopefully get on the roadmap soon. What's the primary motivation for you to want this?

peter_somogyvari (Mon, 06 Sep 2021 23:27:02 GMT):
Hi Vijay, no worries, thanks for taking the time to respond! The migration to web3js-quorum is fair enough, but it would be still good to merge this one and issue (at least) one last release IMO before the support period ends (Dec 31st 2021) for people who are on the old code still (web3js-eea)

michael1203 (Tue, 07 Sep 2021 01:46:39 GMT):
Has joined the channel.

sasikanuri (Tue, 07 Sep 2021 03:15:10 GMT):
Has joined the channel.

ShaharinAhmed (Tue, 07 Sep 2021 03:44:48 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=5vTp3dCtFsYZC82PT) Thank you very much for replying, in private networks there may not be transactions every minute, there may not be a single transaction in hours, so it would be a waste if block generation in every few seconds can't be controlled.

VijayMichalik (Tue, 07 Sep 2021 09:25:21 GMT):
ok, that's doable I think! will get back to you shortly

MarcoOliveira (Tue, 07 Sep 2021 10:06:37 GMT):
Has joined the channel.

regiseloi (Tue, 07 Sep 2021 18:25:34 GMT):
Has joined the channel.

ShaharinAhmed (Wed, 08 Sep 2021 02:52:42 GMT):
@VijayMichalik also it is to save storage as in private blockchain we will not have many transactions in every second like that of public blockchain network

ShaharinAhmed (Wed, 08 Sep 2021 03:01:21 GMT):
@VijayMichalik as you have already stated you guys are looking into something like this right now on my previously asked question "Hello guys, i would like to know if it possible to configure a network such that new blocks are added only when there is transactions in the pool using IBFT 2.0 consensus protocol?" and you also wanted to know the motivation behind this. The motivation is to save storage as in private blockchain we will not have many transactions in every seconds like that of public blockchain network and many empty blocks will be created in every few seconds which is a problem. Can you please provide me with any update about it?

MarcoOliveira (Wed, 08 Sep 2021 08:10:50 GMT):
Has left the channel.

ShaharinAhmed (Wed, 08 Sep 2021 09:09:30 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=WnXBXujNHkLsietey) where can i found them?

BGerb27 (Wed, 08 Sep 2021 11:29:49 GMT):
Has joined the channel.

bfrech (Wed, 08 Sep 2021 12:00:08 GMT):
Has joined the channel.

fangxin (Wed, 08 Sep 2021 13:12:44 GMT):
Has joined the channel.

danilp (Wed, 08 Sep 2021 15:04:09 GMT):
Has joined the channel.

VijayMichalik (Wed, 08 Sep 2021 16:16:02 GMT):
Yep, we are working on this, and will likely plan to push a change here later this year or early next. It requires some changes to the consensus protocol which are non-trivial. It will prevent nodes from being required to store empty blocks.

jan-law (Wed, 08 Sep 2021 21:36:36 GMT):
Has joined the channel.

EmcLab (Wed, 08 Sep 2021 21:46:50 GMT):
Hi, for option host-allowlist, who is the host on a boot node? My understanding is that boot node serves rpc http calls from hosts (Ethereum clients) from internet.

EmcLab (Wed, 08 Sep 2021 21:49:00 GMT):
Also here is an example in Besu doc example for host-allowlist, host-allowlist=["medomain.com", "meotherdomain.com"]. Here is "medomain.com" the domain name for boot node?

Jason.Leach (Wed, 08 Sep 2021 22:06:04 GMT):
Has joined the channel.

Kharvok (Thu, 09 Sep 2021 00:43:08 GMT):
Has joined the channel.

subashnair (Thu, 09 Sep 2021 05:21:41 GMT):
Has joined the channel.

gseront (Thu, 09 Sep 2021 08:19:42 GMT):
Has joined the channel.

mianhammad (Thu, 09 Sep 2021 08:47:42 GMT):
Has joined the channel.

hkiridera (Thu, 09 Sep 2021 09:04:21 GMT):
Hello there. I have a question about Flexible Privacy Group. In this case, I use Flexible Privacy Group. At first. I create privacy group that include node1 and node2. then, node1 deploy smart contract in privacy group and invoke some transaction at that smart contract. if node2 is removed from the privacy group, but node2 can refer to data up to the time it was expelled from the group that using `web3.priv.call` function. but if node2 use `web3.priv.generateAndSendRawTransaction` function, node2 can't read it. I want to know the policy of `BESU`. which is true if node2 was removed from privacy group. node2 can or can not refer to data up to the time. The implementation of one being readable and the other being unreadable seems inconsistent. If it is a possible bug, I create an issue and steps to reproduce.

mianhammad (Thu, 09 Sep 2021 09:08:09 GMT):
Hi Everyone! I want to benchmark our ethereum private network and would like to use the caliper for this. I have the configuration file for it but it's giving me error "You must provide the json interface of the contract when instantiating a contract object" I have pasted my network configuration file code and command. Can you please help me out in solving this. ` { "caliper": { "blockchain": "ethereum", "command" : {} }, "ethereum": { "url": "ws://localhost:7545", "contractDeployerAddress": "0x5B14D7452573edB2ABe4941286618Fc09F1Ae085", "contractDeployerAddressPassword": "a0969bdb33adfb905d0d94cf4d6b1f63ebee447a17b80972f16e178bd0b219df", "fromAddress": "0x5B14D7452573edB2ABe4941286618Fc09F1Ae085", "fromAddressPassword": "a0969bdb33adfb905d0d94cf4d6b1f63ebee447a17b80972f16e178bd0b219df", "transactionConfirmationBlocks": 2, "contracts": { "simple": { "path": "../../../src/ethereum/simple/simple.json", "estimateGas": true, "gas": { "query": 100000, "transfer": 70000 } } } } } ` Command caliper launch manager --caliper-workspace ./ --caliper-networkconfig ./networks/ethereum/1node-clique/networkconfig.json --caliper-benchconfig benchmarks/scenario/simple/config.yaml --caliper-flow-only-test --caliper-fabric-gateway-enabled

hkiridera (Thu, 09 Sep 2021 09:32:47 GMT):
I think "ws://localhost:7545" is ganache's endpoint. you should try 8545 port.

mianhammad (Thu, 09 Sep 2021 09:40:24 GMT):
I'm using ganache right now.

mianhammad (Thu, 09 Sep 2021 09:48:36 GMT):
Yes, I'm using ganache

akankshadixit (Thu, 09 Sep 2021 10:31:26 GMT):
Has joined the channel.

sfukazu (Thu, 09 Sep 2021 22:51:38 GMT):
Has joined the channel.

justiny (Fri, 10 Sep 2021 01:27:50 GMT):
Has joined the channel.

Fang.Fang (Fri, 10 Sep 2021 02:13:31 GMT):
Has joined the channel.

LakshmanPalli (Fri, 10 Sep 2021 15:40:44 GMT):
Has joined the channel.

ShaharinAhmed (Fri, 10 Sep 2021 16:08:22 GMT):
@VijayMichalik i have two questions 1. I have created a private network on my local pc using IBFT and then when i send the first transaction from a account using metamask most of the time it's pending, then in order for the transaction to go through i need to reset the account and then send the transaction again which is not a solution and sometimes when i reset the account and send a new transaction both the transactions go through at the same time (previous pending one and the new one) so what's the solution behind it? 2. I have created another network with the same configuration and hosted in AWS in a single day after the network was up my RAM usage went to 1.3gb from 600mb! is it normal? cause if its then its not feasible as its kept on increasing little by little.. so what's the problem here? And thanks in advance!!!

ricc.zappoli (Fri, 10 Sep 2021 16:16:02 GMT):
Has joined the channel.

Charly88554 (Fri, 10 Sep 2021 20:41:02 GMT):
Has joined the channel.

gameprofits (Fri, 10 Sep 2021 22:17:35 GMT):
Has joined the channel.

gameprofits (Fri, 10 Sep 2021 22:17:50 GMT):
Here comes the boom ,

gameprofits (Fri, 10 Sep 2021 22:18:23 GMT):
Gonna take a prod install crack at this

BlockchainTrainer (Sat, 11 Sep 2021 02:58:26 GMT):
Has joined the channel.

Pankil_Patel (Sat, 11 Sep 2021 06:27:52 GMT):
Has joined the channel.

Pankil_Patel (Sat, 11 Sep 2021 06:32:25 GMT):
Hi experts, Very new to Besu and having below error: Not sure what I am doing wrong? ERROR | PrivDistributeRawTransaction | org.hyperledger.besu.ethereum.rlp.RLPException: Expected current item to be a list, but it is: BYTE_ELEMENT (at bytes 0-1: [52]af69ec00...)

Pankil_Patel (Sat, 11 Sep 2021 14:52:10 GMT):
@hkiridera I am new to private transactions on besu. Would you guide me how to successfully achieve my first private transaction? I have 4 EC2 nodes on Besu (Out 4, 1 is boot node, 2 are sealers / Validators and 4th one is the passive just importer node) I have tessera installed and configured on all 4 nodes. And all normal (public) transactions / contract deployments and execution of functions are working fine. However having no clue, how to achieve the private transaction on my this setup. Would you able to guide me please.

Pankil_Patel (Sat, 11 Sep 2021 14:52:10 GMT):
@hkiridera I am new to private transactions on besu. Would you guide me how to successfully achieve my first private transaction? I have 4 Besu nodes on EC2 (Out 4, 1 is boot node, 2 are sealers / Validators and 4th one is the passive just importer node) I have tessera installed and configured on all 4 nodes. And all normal (public) transactions / contract deployments and execution of functions are working fine. However having no clue, how to achieve the private transaction on my this setup. Would you able to guide me please.

fernandosilvap96 (Sun, 12 Sep 2021 00:14:48 GMT):
Has joined the channel.

HarithKza (Sun, 12 Sep 2021 03:47:23 GMT):
Has joined the channel.

IbrahimBroachwala (Sun, 12 Sep 2021 11:28:00 GMT):
Has joined the channel.

macfarla (Mon, 13 Sep 2021 00:57:42 GMT):
This example using web3js-quorum client library is a good place to start. https://besu.hyperledger.org/en/latest/Tutorials/Privacy/web3js-quorum-Multinode-example/

Tkonno (Mon, 13 Sep 2021 00:58:08 GMT):
Has joined the channel.

macfarla (Mon, 13 Sep 2021 01:03:05 GMT):
This message indicates a problem with the RLP decoding of what you're sending to PrivDistributeRawTransaction. Can you share more about how you're calling this method - and what client library you're using to generate the private transaction? Eg web3js-quorum

macfarla (Mon, 13 Sep 2021 01:07:22 GMT):
There is nothing special about bootnodes, they are just used for discovery. https://besu.hyperledger.org/en/stable/HowTo/Find-and-Connect/Bootnodes/

macfarla (Mon, 13 Sep 2021 01:10:04 GMT):
`host-allowlist` is where you list which other nodes can connect. This is just an example. https://besu.hyperledger.org/en/stable/HowTo/Interact/APIs/API/#host-allowlist

takehypotenuses (Mon, 13 Sep 2021 01:12:41 GMT):
Has joined the channel.

ShaharinAhmed (Mon, 13 Sep 2021 02:08:00 GMT):
Hello can anyone answer these two questions of mine? I would really appreciate it. 1. I have created a private network on my local pc using IBFT and then when i send the first transaction from a account using metamask most of the time it's pending, then in order for the transaction to go through i need to reset the account and then send the transaction again which is not a solution and sometimes when i reset the account and send a new transaction both the transactions go through at the same time (previous pending one and the new one) so what's the solution behind it? 2. I have created another network with the same configuration and hosted in AWS in a single day after the network was up my RAM usage went to 1.3gb from 600mb! is it normal? cause if its then its not feasible as its kept on increasing little by little.. so what's the problem here? And thanks in advance!!!

rsayon (Mon, 13 Sep 2021 04:05:56 GMT):
Has joined the channel.

rsayon (Mon, 13 Sep 2021 04:07:04 GMT):
hello, dear altruists, can someone help me find companies using besu for their production? thank you.

mianhammad (Mon, 13 Sep 2021 06:35:32 GMT):
Hi Everyone! How can I setup hyperledger caliper for ethereum? Can anyone guide me?

rsayon (Mon, 13 Sep 2021 07:56:36 GMT):
if you get help, please do let us know. we are having some problems too.

vlaca (Mon, 13 Sep 2021 08:56:34 GMT):
Has joined the channel.

siladu (Mon, 13 Sep 2021 12:45:23 GMT):
Has joined the channel.

Pankil_Patel (Mon, 13 Sep 2021 15:15:02 GMT):
Thanks a lot @macfarla , Thats what I am looking for and you hit the right point. Really thankful for this link, Its working for me after following the mentioned steps.

SargisDudaklyan (Mon, 13 Sep 2021 17:44:12 GMT):
Has joined the channel.

EmcLab (Mon, 13 Sep 2021 18:36:05 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=4yTmE4fRJkEGDbCdK) on 4 node IBFT2.0 network, the rpc port for boot node is 8485 and rpm http request is directed to port 8485, is the boot node the only node serving the clients' http requests?

mukulverm4 (Mon, 13 Sep 2021 18:50:43 GMT):
Has joined the channel.

macfarla (Tue, 14 Sep 2021 01:54:52 GMT):
You can send rpc requests (if rpc is enabled) to the boot node, it's just a regular node. Are you referring to a specific example?

macfarla (Tue, 14 Sep 2021 01:56:19 GMT):
if you're using caliper + ganache, you might be better off asking in the caliper channel?

macfarla (Tue, 14 Sep 2021 01:57:50 GMT):
sounds like there is an issue with the json file you're providing though

macfarla (Tue, 14 Sep 2021 02:02:51 GMT):
Re 1 - if you're using Metamask and switching networks (eg from besu to ganache, or restarting besu with different db, or deleting besu db and restarting it) - you nearly always need to reset the account in metamask - I would recommend doing it before sending any transactions. My understanding is that Metamask keeps track of the account nonce so if you change that in besu (eg delete besu db and restart so nonce is zero) then the nonce doesn't match. Resetting the account in Metamask resets the nonce to match besu.

macfarla (Tue, 14 Sep 2021 02:03:15 GMT):
2 I will leave for @VijayMichalik to respond to :)

macfarla (Tue, 14 Sep 2021 02:05:09 GMT):
are there specific bits you're having problems with? Have you asked in the caliper channel?

ShaharinAhmed (Tue, 14 Sep 2021 03:20:30 GMT):
@macfarla Thank you very much for answering, now please help me out with the second one, i have no idea why is this happening, i can understand why disk space might decrease but memory usage!! i don't have a clue, right now its a major headache

macfarla (Tue, 14 Sep 2021 03:52:59 GMT):
I don't know the answer to this one - can ask the team - to help get answers can you provide some more info - what besu version are you running? are you connecting to mainnet or a testnet or just your own nodes?

macfarla (Tue, 14 Sep 2021 03:57:58 GMT):
The intention is that node2 would retain access to the info in the group up to the point in time when they were removed (via priv_call, and specifying a block prior to when they were removed). Once they are removed, they can't send any further transactions (sendRawTransaction). Does that answer your question?

ajitspendse (Tue, 14 Sep 2021 04:03:56 GMT):
Has joined the channel.

ShaharinAhmed (Tue, 14 Sep 2021 05:21:46 GMT):
@macfarla we are using the version 21.7.2, using docker image. We are using consensus protocol IBFT2.0. , from twe are running our own nodes in a private network,

ShaharinAhmed (Tue, 14 Sep 2021 05:25:45 GMT):
@macfarla we are using the version 21.7.2, using docker image. We are using consensus protocol IBFT2.0. It is a private network with 4 nodes, they are all validator and one of them is the bootnode. They are all hosted in separate EC2 instances. And the memory usage keeps on increasing

macfarla (Tue, 14 Sep 2021 05:45:55 GMT):
Hey folks - Hyperledger is participating in Grace Hopper's Open Source Day on October 1st from 9 AM - 5 PM PST. It is a great opportunity to showcase Hyperledger Besu and get new developers working on our codebase. We'd love to add a few more "good first issues" so - if you think of something that would make life easier as a dev or user of Besu, please create an issue for it. https://github.com/hyperledger/besu/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22

hkiridera (Tue, 14 Sep 2021 06:40:01 GMT):
Thank you for your answer. I understand that removed besu node can read old data in privacy group . I thought it would be better to change the description to use'web3.priv.call' in each chapter of the tutorial.

jframe (Tue, 14 Sep 2021 06:46:28 GMT):
@ShaharinAhmed How much memory have you allocated to Besu? Besu docs have some more details on the recommended memory https://besu.hyperledger.org/en/latest/HowTo/Get-Started/System-Requirements/System-Requirements-Private/.

macfarla (Tue, 14 Sep 2021 06:55:09 GMT):
ah ok so maybe the docs need updating - can you share the link to the tutorial you mean? Thanks!

ShaharinAhmed (Tue, 14 Sep 2021 06:59:52 GMT):
@jframe yes i have already seen it, and allocated 8 GB for memory and hard disk of 2gb but both memory usage and disk usage keeps on growing, disk usage maybe understandable in some sense but i am not really understanding why memory usage keeps on increasing

ShaharinAhmed (Tue, 14 Sep 2021 06:59:52 GMT):
@jframe yes i have already seen it, and allocated 8 GB for memory and hard disk of 20 GB but both memory usage and disk usage keeps on growing, disk usage maybe understandable in some sense but i am not really understanding why memory usage keeps on increasing

hkiridera (Tue, 14 Sep 2021 07:07:03 GMT):
I read this tutorial. This sample program attempts to read from a privacy group smart contract using `web3quorum.priv.generateAndSendRawTransaction`. I thought it would be better to use `'web3quorum.priv.call'`. https://besu.hyperledger.org/en/stable/Tutorials/Contracts/Calling-Contract-Functions/#1-perform-a-read-operation_1

VijayMichalik (Tue, 14 Sep 2021 08:00:18 GMT):
Hey @ShaharinAhmed, could you create an issue on Github? That way we can investigate. Memory should indeed not be increasing!

fabio.henriques (Tue, 14 Sep 2021 08:33:39 GMT):
Has joined the channel.

sanket1211 (Tue, 14 Sep 2021 10:34:43 GMT):
1 I tried to migrate the contract Migrations by using Truffle migrate, it got hang and show error message as belows. Please help me if I configured anything wrong. ⠸ Saving migration to chain. { "jsonrpc": "2.0", "id": 1574154369501, "result": "0x" } Error: Error: Error: Transaction was not mined within 750 seconds, please make sure your transaction was properly sent. Be aware that it might still be mined! at Object.run (/usr/local/lib/node_modules/truffle/build/webpack:/packages/migrate/index.js:92:1) at at process._tickCallback (internal/process/next_tick.js:188:7)

gfunchal (Tue, 14 Sep 2021 12:28:33 GMT):
Has joined the channel.

blessingkp (Tue, 14 Sep 2021 17:15:16 GMT):
Has joined the channel.

hjpn (Tue, 14 Sep 2021 19:10:07 GMT):
Has joined the channel.

hjpn (Tue, 14 Sep 2021 19:16:04 GMT):
hi, i need some help to find a issue. so to summarize i had a client IBFT with custom hardfork the blockchain as been work with version 1.4 for quite some time and recently i upgraded to version 21 of besu. all works fine if i sync with normal default parameters. if i do sync-mode FAST the client stop sync giving a "invalid block header and give the block number and transaction hash" i checked this block and not have transactions the parent block is ok as in the current network, what could be wrong here ? what are the files that in charge of checking the fast sync mode.

hjpn (Tue, 14 Sep 2021 19:16:50 GMT):
all lights are welcome :rolling_on_the_floor_laughing:

hjpn (Tue, 14 Sep 2021 19:17:57 GMT):
i put in debug mode in DownloadHeaderSequenceTask but maybe i not updated well some file... what dependencies of this flow

macfarla (Tue, 14 Sep 2021 23:02:56 GMT):
you have a point - however the difference is that tutorial uses `privateFor` values to send the transaction, whereas `priv_call` uses privacy group ID. So slightly different scenarios. The good news is, your understanding is correct!

hkiridera (Wed, 15 Sep 2021 00:55:54 GMT):
thank for kindly answer. it is all clear.

asif123 (Wed, 15 Sep 2021 02:24:24 GMT):
Has joined the channel.

claracavalcante (Wed, 15 Sep 2021 07:46:45 GMT):
Has joined the channel.

claracavalcante (Wed, 15 Sep 2021 07:51:29 GMT):
Hello! I saw that this project is a part of the OSD of the vGHC. I would like to know if there are any plans or agenda for the day.

fkossiaras (Wed, 15 Sep 2021 09:27:00 GMT):
Has joined the channel.

grace.hartley (Wed, 15 Sep 2021 13:03:25 GMT):
Hey there! Thakns for asking! This is the program overview for the day. https://ghc.anitab.org/programs-and-awards/open-source-day/

moisesjaramillo (Wed, 15 Sep 2021 16:28:31 GMT):
Has joined the channel.

bobbh (Wed, 15 Sep 2021 16:57:52 GMT):
Has joined the channel.

macfarla (Wed, 15 Sep 2021 23:01:05 GMT):
One thing to check - is your node producing blocks? either mining (PoW) or correctly validating & producing blocks (PoA). If blocks aren't being produced, then the migration won't work.

macfarla (Wed, 15 Sep 2021 23:03:44 GMT):
There shouldn't be any difference in block validation between full/fast sync. Are you sure that the block is the correct one for your fork in both cases? You could try using `--required-block` parameter https://besu.hyperledger.org/en/latest/Reference/CLI/CLI-Syntax/#required-block

macfarla (Wed, 15 Sep 2021 23:06:32 GMT):
Is Hyperledger doing anything specific @grace.hartley or just participating

macfarla (Wed, 15 Sep 2021 23:06:38 GMT):
I found the agenda https://ghc.anitab.org/attend/vghc-21-agenda/

CherryHsu (Thu, 16 Sep 2021 02:55:52 GMT):
Has joined the channel.

knagware9 (Thu, 16 Sep 2021 04:47:35 GMT):
If blocks aren't being produced then what could be the reason , how we can fix it

knagware9 (Thu, 16 Sep 2021 04:47:59 GMT):
we are using IBFT

mnill2 (Thu, 16 Sep 2021 06:21:38 GMT):
Has joined the channel.

kingstenzzz (Thu, 16 Sep 2021 07:04:06 GMT):
Has joined the channel.

Minnu (Thu, 16 Sep 2021 07:53:42 GMT):
I want to know whether there is interoperability between hyperledger Besu and Fabric?

Minnu (Thu, 16 Sep 2021 07:54:27 GMT):
I want to build hyperledger Besu application in already created hyperledger fabric application. Is that possible and how?

hjpn (Thu, 16 Sep 2021 09:05:32 GMT):
yes i have this flag

hjpn (Thu, 16 Sep 2021 09:06:13 GMT):
i have genesis smart contracts and the hardfork starts in 0 block

hjpn (Thu, 16 Sep 2021 09:06:44 GMT):
i have other hardfork but is blocknumber is gratear than the invalid block

hjpn (Thu, 16 Sep 2021 09:07:39 GMT):
the strange here is the block invalid has the right parent hash and etc... and both previous and next block are empty.

grace.hartley (Thu, 16 Sep 2021 14:14:15 GMT):
I don't believe so besides having our Hyperledger projects be included as projects in the Hackathon. If I hear of anything specific, I'll be sure to share here!

hjpn (Thu, 16 Sep 2021 14:59:18 GMT):
i got other issue before this, is this message 2021-09-16 11:35:41.821+00:00 | EthScheduler-Workers-3 | INFO | TimestampMoreRecentThanParent | Invalid block header: timestamp 1619660141 is only 3 seconds newer than parent timestamp 1619660138. Minimum 4 seconds 2021-09-16 11:35:41.821+00:00 | EthScheduler-Workers-3 | DEBUG | GetBlockFromPeerTask | Downloading block 0xadbe5ff60e90a91ddb4d5e7d3864954eb7eb54b6a04fe0e5d93e2567dde0a6a6 from peer 0x5e4dcaa4d15b2b386b.... 2021-09-16 11:35:41.821+00:00 | EthScheduler-Workers-3 | DEBUG | GetHeadersFromPeerByHashTask | Requesting 1 headers from peer 0x5e4dcaa4d15b2b386b....

hjpn (Thu, 16 Sep 2021 14:59:36 GMT):
"Invalid block header: timestamp 1619660141 is only 3 seconds newer than parent timestamp 1619660138. Minimum 4 seconds"

hjpn (Thu, 16 Sep 2021 14:59:36 GMT):
\n "Invalid block header: timestamp 1619660141 is only 3 seconds newer than parent timestamp 1619660138. Minimum 4 seconds"

hjpn (Thu, 16 Sep 2021 14:59:36 GMT):
************************* "Invalid block header: timestamp 1619660141 is only 3 seconds newer than parent timestamp 1619660138. Minimum 4 seconds"

smbkd6 (Thu, 16 Sep 2021 15:00:06 GMT):
Has joined the channel.

smbkd6 (Thu, 16 Sep 2021 15:08:11 GMT):
I'm a newby here to hyperledger besu! I've been reading over the documentation, and I see that on boot nodes one can configure the chain ID to be main net, rinkeby, or a permissioned network, etc. I also see that a genesis.json is used as well to configure an entire network's chain ID What I'm struggling to wrap my head around is, when creating nodes in a network, can I have nodes that exist on main net and nodes that exist on a private network that can interact with each other? For example, let's say I have a private smart contract sitting on the private network of course that handles transactions that require permissioning. Could this smart contract inform / interact with a public smart contract that sits on a node configured for main net ethereum?

smbkd6 (Thu, 16 Sep 2021 15:08:32 GMT):
Thank you so much in advance! I'm eager to learn this technology

danilp (Thu, 16 Sep 2021 15:14:38 GMT):
Hey everyone. I'm trying to run a besu node from a Raspberry Pi 4B, and I'm getting the following error when using 'besu --config-file': `Uncaught exception in thread "main" java.lang.UnsatisfiedLinkError: /tmp/librocksdbjni9404827920401695231.so: /tmp/librocksdbjni9404827920401695231.so: cannot open shared object file: No such file or directory (Possible cause: can't load IA 32-bit .so on a ARM-bit platform)`

danilp (Thu, 16 Sep 2021 15:14:38 GMT):
Hey everyone. I'm trying to run a besu node from a Raspberry Pi 4B with 4GB of RAM, and I'm getting the following error when using 'besu --config-file': `Uncaught exception in thread "main" java.lang.UnsatisfiedLinkError: /tmp/librocksdbjni9404827920401695231.so: /tmp/librocksdbjni9404827920401695231.so: cannot open shared object file: No such file or directory (Possible cause: can't load IA 32-bit .so on a ARM-bit platform)` How can I fix this? What am I doing wrong?

fabio.henriques (Thu, 16 Sep 2021 15:42:48 GMT):
Has left the channel.

hjpn (Thu, 16 Sep 2021 16:20:43 GMT):
@macfarla

hjpn (Thu, 16 Sep 2021 16:35:41 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=za6dsHxt3HEQABPCj) Hello ? i found my problem described here is the newer than parent timestamp required is 4seconds and i get 3 seconds how i fix this ?

hjpn (Thu, 16 Sep 2021 16:35:45 GMT):

Clipboard - September 16, 2021 5:35 PM

hjpn (Thu, 16 Sep 2021 16:37:11 GMT):
also i tested with fast and full with same result. i don't know why previous import work.

hjpn (Thu, 16 Sep 2021 16:37:11 GMT):
also i tested with fast and full with same result. i don't know why previous import work. but now sync-mode fast and full not working

hjpn (Thu, 16 Sep 2021 16:37:11 GMT):
also i tested with fast and full with same result. i don't know why previous import work. but now sync-mode fast and full not is working

regiseloi (Thu, 16 Sep 2021 17:56:55 GMT):
Has left the channel.

aaronrbg (Thu, 16 Sep 2021 18:28:04 GMT):
Has joined the channel.

mlohr (Fri, 17 Sep 2021 07:21:54 GMT):
Has joined the channel.

mlohr (Fri, 17 Sep 2021 07:21:54 GMT):
Hey everyone. Short question: Where is the Dockerfile located which is used to build besu docker images?

atoulme (Fri, 17 Sep 2021 07:24:31 GMT):
start here https://github.com/hyperledger/besu/tree/main/docker

atoulme (Fri, 17 Sep 2021 07:24:37 GMT):
there is more than one

mlohr (Fri, 17 Sep 2021 07:27:25 GMT):
Ah thx! No idea why I didn't see this...

mlohr (Fri, 17 Sep 2021 07:28:08 GMT):
Was there any discussion about multi architecture Docker images? Currently I want to run besu on a Raspberry Pi for an experiment, but the Docker images does not support arm

atoulme (Fri, 17 Sep 2021 07:29:54 GMT):
you're the same guy who was recompiling native libs for arm right?

atoulme (Fri, 17 Sep 2021 07:30:13 GMT):
we depend on besu-native - you need to port it to arm first

mlohr (Fri, 17 Sep 2021 07:30:24 GMT):
Ehm... not that I remember :D At least not for besu

atoulme (Fri, 17 Sep 2021 07:31:00 GMT):
well ok. So right, first off, we don't support arm because our native dependencies don't support arm

atoulme (Fri, 17 Sep 2021 07:31:10 GMT):
look here https://github.com/hyperledger/besu-native

atoulme (Fri, 17 Sep 2021 07:31:34 GMT):
we can do without native, but it's slow. You can try to create a besu docker image for arm

mlohr (Fri, 17 Sep 2021 07:41:14 GMT):
Ok, will try to compile. Actually I just need to run a single node clique network, so I guess speed is not that important for me.

mlohr (Fri, 17 Sep 2021 07:42:23 GMT):
Regarding native stuff: I just was involved a bit in improving dependency situation of web3 library regarding multi platform support / removing strange pre-compiled dependencies, but never with besu until now.

vberg 2 (Fri, 17 Sep 2021 08:48:16 GMT):
Has joined the channel.

vberg 2 (Fri, 17 Sep 2021 08:51:43 GMT):
Hello everyone ! Hope this question hasn't been posted 1000 times (if yes, I am genuinely sorry). Me and my team are doing some POC on VM instrumentation and we are looking forward to use besu as a library. Would it be possible to have a more recent artifact published to maven central ? The last one is from March 2021 (21.1.1) and we need the last opcode changes from the newest versions :)

sharukh (Fri, 17 Sep 2021 11:21:58 GMT):
Has joined the channel.

cbfh (Fri, 17 Sep 2021 11:54:53 GMT):
Hello everyone, can I run besu on an ARM system?

OscarTBallester (Fri, 17 Sep 2021 13:07:44 GMT):
Has joined the channel.

shemnon (Fri, 17 Sep 2021 14:13:20 GMT):
We don't post to maven central at this time. We maintain a jfrog repository at https://hyperledger.jfrog.io/artifactory/besu-maven/

vberg 2 (Fri, 17 Sep 2021 14:14:29 GMT):
Thanks for your answer !

MullaAlmas (Fri, 17 Sep 2021 14:41:12 GMT):
Has joined the channel.

chikai (Fri, 17 Sep 2021 14:57:07 GMT):
Has joined the channel.

atoulme (Fri, 17 Sep 2021 15:20:15 GMT):
scroll up

atoulme (Fri, 17 Sep 2021 15:20:54 GMT):
looks like we should post to maven central

javieronishi (Fri, 17 Sep 2021 16:08:32 GMT):
Has joined the channel.

hckkid (Fri, 17 Sep 2021 16:31:35 GMT):
Hi, that was me trying to port native library to arm. I got occupied with office work and couldn't complete it. I am still stuck on that, issue is with rust code having C_CHAR type coming as u8 where its expected to be i8. Haven't been able to fix this.

atoulme (Fri, 17 Sep 2021 16:32:00 GMT):
ok

mollayii (Fri, 17 Sep 2021 16:32:04 GMT):
Has joined the channel.

atoulme (Fri, 17 Sep 2021 16:32:30 GMT):
do all this please: * open a draft PR with your progress * point the issue in a comment on it * ask for help

atoulme (Fri, 17 Sep 2021 16:32:44 GMT):
I am not a rust dev, can't help you, but let's give this one a chance

hckkid (Fri, 17 Sep 2021 16:34:55 GMT):
Sounds good with me, will do in coming 1-2 days. In the meantime if there is a way i can build besu for arm without native, that will help me a lot. I need to have it on arm64 on new AWS linux.

atoulme (Fri, 17 Sep 2021 16:36:10 GMT):
no idea, it's not been tried

atoulme (Fri, 17 Sep 2021 16:36:32 GMT):
If you want to see arm support, open an issue on the besu repo

hckkid (Fri, 17 Sep 2021 16:37:03 GMT):
Okey, will do thanks :)

hckkid (Fri, 17 Sep 2021 16:37:37 GMT):
You did mention it can be done without native, what did you mean by that ?

atoulme (Fri, 17 Sep 2021 16:37:55 GMT):
on startup, besu checks if it can load the native libs

atoulme (Fri, 17 Sep 2021 16:38:09 GMT):
if they're not present, it defaults to a java impl instead which is slower

hckkid (Fri, 17 Sep 2021 16:38:33 GMT):
Okey, so if I build without native it should work ?

atoulme (Fri, 17 Sep 2021 16:38:42 GMT):
not been tried

hckkid (Fri, 17 Sep 2021 16:39:18 GMT):
I can try that, i was able to build the docker images for arm, will let you know tomorrow around the same time if it works

atoulme (Fri, 17 Sep 2021 16:39:49 GMT):
I ... I don't care. Just trying to help you here.

atoulme (Fri, 17 Sep 2021 16:39:59 GMT):
Make sure you open issues and tell everyone about it

atoulme (Fri, 17 Sep 2021 16:40:06 GMT):
don't post on a thread in rocket.chat

hckkid (Fri, 17 Sep 2021 16:40:22 GMT):
oh okey, will definitely do as you suggested.

shemnon (Fri, 17 Sep 2021 16:57:46 GMT):
There is a key provinance issue that hasn't been addressed. Perhaps you could work with RyJones to get a propsal?

sanskarkhare (Fri, 17 Sep 2021 18:08:04 GMT):
Has joined the channel.

atoulme (Fri, 17 Sep 2021 18:53:57 GMT):
sure

Clippo 2 (Sat, 18 Sep 2021 04:26:19 GMT):
Has joined the channel.

Nufail (Sat, 18 Sep 2021 06:00:23 GMT):
Has joined the channel.

handao (Sat, 18 Sep 2021 06:30:13 GMT):
Has joined the channel.

iros75 (Sat, 18 Sep 2021 20:37:23 GMT):
Has joined the channel.

bardia (Sun, 19 Sep 2021 05:39:03 GMT):
Has joined the channel.

littlemouse (Sun, 19 Sep 2021 05:55:21 GMT):
Has joined the channel.

MrChainBlockz (Sun, 19 Sep 2021 06:52:42 GMT):
Has joined the channel.

arrey_damn (Sun, 19 Sep 2021 09:32:25 GMT):
Has joined the channel.

AmshumaanVarma (Sun, 19 Sep 2021 13:14:41 GMT):
Has joined the channel.

macfarla (Mon, 20 Sep 2021 01:06:13 GMT):
You could try fiddling with the `blockperiodseconds` value in the genesis https://besu.hyperledger.org/en/stable/HowTo/Configure/Consensus-Protocols/Clique/#genesis-file

macfarla (Mon, 20 Sep 2021 01:08:37 GMT):
The short answer is no. Nodes have to be on the same network, ie chain, to talk to each other. (There are "bridges" and sidechains that do tricky things but don't start there if you're just learning :)

macfarla (Mon, 20 Sep 2021 01:11:03 GMT):
we don't support arm because our native dependencies don't support arm look here https://github.com/hyperledger/besu-native

macfarla (Mon, 20 Sep 2021 01:21:14 GMT):
This tutorial describes how to confirm your network is producing blocks https://besu.hyperledger.org/en/stable/Tutorials/Private-Network/Create-IBFT-Network/#10-confirm-the-private-network-is-working

jcarlosusa (Mon, 20 Sep 2021 02:47:47 GMT):
Has joined the channel.

macfarla (Mon, 20 Sep 2021 07:13:24 GMT):
Welcome new chat members! You can find our documentation here https://besu.hyperledger.org/en/stable/ and roadmap here https://wiki.hyperledger.org/display/BESU/Roadmap

VijayMichalik (Mon, 20 Sep 2021 10:21:43 GMT):
Hi @Minnu, Hyperledger Besu and Fabric are very different architectures, so I wouldn't expect it to be easy to get Besu and Fabric applications to work well together. In particular, I'm not familiar with any ways to port a Fabric application to Besu. You might be able to find a bridge technology between Fabric and Ethereum, and this should work for any Besu network as well.

cattanep (Mon, 20 Sep 2021 12:44:02 GMT):
Has joined the channel.

Noc0r (Mon, 20 Sep 2021 12:51:47 GMT):
Has joined the channel.

hjpn (Mon, 20 Sep 2021 14:50:03 GMT):
Hi, i just want to know what is the best block explorer with smart contracts verifications (algo proxy implementation as well) like etherscan, i'm looking because i use blockscout but has a lot of issues about payloads and requests of besu and Geth is not same.

chesta0703 (Mon, 20 Sep 2021 18:09:10 GMT):
Has joined the channel.

gravin10 (Mon, 20 Sep 2021 19:36:12 GMT):
Has joined the channel.

Zarquan314 (Tue, 21 Sep 2021 05:23:02 GMT):
Has joined the channel.

F4NES (Tue, 21 Sep 2021 08:16:36 GMT):
Has joined the channel.

TejaBanton (Tue, 21 Sep 2021 13:50:19 GMT):
Has joined the channel.

hiromaily (Tue, 21 Sep 2021 15:10:46 GMT):
Has joined the channel.

JonathanScialpi (Tue, 21 Sep 2021 17:42:48 GMT):
Has joined the channel.

scaraclette (Tue, 21 Sep 2021 21:43:44 GMT):
Has joined the channel.

iffathossain (Wed, 22 Sep 2021 03:30:56 GMT):
Hello all. What is the importance of having a separate RPC node (not a validator node in the network)

iffathossain (Wed, 22 Sep 2021 03:30:56 GMT):
Hello all. What is the importance of having a separate RPC node (not a validator node in the network)?

a-i-to (Wed, 22 Sep 2021 06:19:38 GMT):
Has joined the channel.

kongwu 2 (Wed, 22 Sep 2021 08:50:33 GMT):
Has joined the channel.

bardia (Wed, 22 Sep 2021 09:08:00 GMT):
How do I fix the following error? :tears: This happens when I fail to login 20 times failed to enroll user: enroll failed: enroll failed: Response from server: Error Code: 73 - Incorrect password entered 10 times, max incorrect password limit of 10 reached

kosarlatif (Wed, 22 Sep 2021 10:26:27 GMT):
Has joined the channel.

oding (Wed, 22 Sep 2021 14:21:00 GMT):
Has joined the channel.

CollinMeese (Wed, 22 Sep 2021 16:16:02 GMT):
Has joined the channel.

Andre_Augusto (Wed, 22 Sep 2021 16:27:21 GMT):
Has joined the channel.

PowellAndy (Wed, 22 Sep 2021 17:31:30 GMT):
Has joined the channel.

SamKrew (Wed, 22 Sep 2021 17:52:56 GMT):
Has joined the channel.

EmcLab (Wed, 22 Sep 2021 20:18:38 GMT):
Hi team, with 21.7.4, my boot node really had hard time to start, here is the log and the boot node stops logging after one min

EmcLab (Wed, 22 Sep 2021 20:18:42 GMT):
2021-09-23 04:15:23.318+08:00 | main | DEBUG | NativeLibrary | Adding paths from jna.library.path: null 2021-09-23 04:15:23.318+08:00 | main | DEBUG | NativeLibrary | Trying libsecp256k1.so 2021-09-23 04:15:23.318+08:00 | main | DEBUG | NativeLibrary | Loading failed with message: libsecp256k1.so: cannot open shared object file: No such file or directory 2021-09-23 04:15:23.319+08:00 | main | DEBUG | NativeLibrary | Adding system paths: [/usr/lib/x86_64-linux-gnu, /lib/x86_64-linux-gnu, /usr/lib64, /lib64, /usr/lib, /lib, /usr/lib/x86_64-linux-gnu/libfakeroot] 2021-09-23 04:15:23.319+08:00 | main | DEBUG | NativeLibrary | Trying libsecp256k1.so 2021-09-23 04:15:23.320+08:00 | main | DEBUG | NativeLibrary | Loading failed with message: libsecp256k1.so: cannot open shared object file: No such file or directory 2021-09-23 04:15:23.320+08:00 | main | DEBUG | NativeLibrary | Looking for version variants 2021-09-23 04:15:23.324+08:00 | main | DEBUG | Native | Looking in classpath from jdk.internal.loader.ClassLoaders$AppClassLoader@5bc2b487 for secp256k1 2021-09-23 04:15:23.325+08:00 | main | DEBUG | Native | Found library resource at jar:file:/home/besu/lib/secp256k1-0.4.2.jar!/linux-x86-64/libsecp256k1.so 2021-09-23 04:15:23.330+08:00 | main | DEBUG | Native | Extracting library to /root/.cache/JNA/temp/jna13717384428871170343.tmp 2021-09-23 04:15:23.336+08:00 | main | DEBUG | NativeLibrary | Found library 'secp256k1' at /root/.cache/JNA/temp/jna13717384428871170343.tmp

EmcLab (Wed, 22 Sep 2021 20:20:21 GMT):
What is wrong with the boot node? There is loading failure and the service has been started several times with no avail.

EmcLab (Wed, 22 Sep 2021 23:59:53 GMT):
Hi Here is complaining about gas price when deploying a contract on IBFT2.0 network. Is it possible by bad params passed in for deployment?

EmcLab (Wed, 22 Sep 2021 23:59:56 GMT):
Error: cannot estimate gas; transaction may fail or may require manual gas limit (error={"reason":"processing response error","code":"SERVER_ERROR","body":"{\n \"jsonrpc\" : \"2.0\",\n \"id\" : 48,\n \"error\" : {\n \"code\" : -32603,\n \"message\" : \"Internal error\"\n }\n}","error":{"code":-32603},"requestBody":"{\"method\":\"eth_estimateGas\",\"params\":[{\"gasPrice\":\"0x0\",\"from\":\"0x66bb001da0ced5c4544a60094aba035ec5d0b556\",\"data\":\"........... ......... ,"from":"0x66bb001da0cED5C4544A60094aBA035Ec5d0b556","gasPrice":{"type":"BigNumber","hex":"0x00"},"type":0,"nonce":{"_U":2,"_V":1,"_W":1,"_X":null},"gasLimit":{"_U":1,"_V":0,"_W":null,"_X":{"onRejected":null,"promise":{"_U":1,"_V":0,"_W":null,"_X":{"promise":{"_U":0,"_V":0,"_W":null,"_X":null}}}}},"chainId":{"_U":1,"_V":1,"_W":2018,"_X":null}}, code=UNPREDICTABLE_GAS_LIMIT, version=abstract-signer/5.4.0)]

ssmxmss (Thu, 23 Sep 2021 07:52:49 GMT):
Has joined the channel.

Rafailk (Thu, 23 Sep 2021 08:00:03 GMT):
Has joined the channel.

vonpmg (Thu, 23 Sep 2021 08:31:17 GMT):
Has joined the channel.

GiovanniZanol (Thu, 23 Sep 2021 12:41:37 GMT):
Has joined the channel.

GiovanniZanol (Thu, 23 Sep 2021 12:43:24 GMT):
hello team... It's OK to use besu-1.4.4 ? where can I find besu-1.4.4.tar.gz ? I got 404 from this link -> https://bintray.com/api/ui/download/hyperledger-org/besu-repo/besu-1.4.4.tar.gz

shemnon (Thu, 23 Sep 2021 13:47:13 GMT):
bintray shut down their services. We have the binaries here - https://hyperledger.jfrog.io/ui/native/besu-binaries/besu/1.4.4/

GiovanniZanol (Thu, 23 Sep 2021 14:59:28 GMT):
thank you @shemnon

danielpenagos (Thu, 23 Sep 2021 15:38:31 GMT):
Has joined the channel.

GiovanniZanol (Thu, 23 Sep 2021 17:00:07 GMT):
@shemnon ... do you know about orion-1.3.2.tar.gz too ?

GiovanniZanol (Thu, 23 Sep 2021 17:00:29 GMT):
https://bintray.com/consensys/binaries/download_file?file_path=orion-1.3.2.tar.gz

raushan.kumar (Thu, 23 Sep 2021 17:10:54 GMT):
Has joined the channel.

shemnon (Thu, 23 Sep 2021 17:16:22 GMT):
Consensys moved it to a new repo. I don't know offhand. @lucassaldanha ?

lcc 3 (Fri, 24 Sep 2021 06:51:23 GMT):
Has joined the channel.

Bertho (Fri, 24 Sep 2021 10:23:54 GMT):
Has joined the channel.

hjpn (Fri, 24 Sep 2021 11:16:20 GMT):
Hi just asking about a good explorer for Besu except blockscout but with a lot of issues. Exist any roadmap to implement a explorer for Besu with smart contracts verification like etherscan but opensource ?

lainio (Fri, 24 Sep 2021 11:47:07 GMT):
Has joined the channel.

alvarodelaiglesia (Fri, 24 Sep 2021 13:40:38 GMT):
Has joined the channel.

alvarodelaiglesia (Fri, 24 Sep 2021 13:45:55 GMT):
Hi everyone! I am a Product developer at a software company and i would like to know if Hyperledger besu is a viable client for building our private blockchain to production for sharing certain type of data in a transparent and descentraliced way with different members of our company ecosystem.

alvarodelaiglesia (Fri, 24 Sep 2021 13:48:03 GMT):
This is because i can see some warnings about that tutorials are only for educational purpose only, and i am willing to spend some dev resources into Hyperledger besu so they can start building

t3x (Fri, 24 Sep 2021 13:48:28 GMT):
Has joined the channel.

ArnoldsBogdanovs (Fri, 24 Sep 2021 14:06:53 GMT):
Has joined the channel.

shemnon (Fri, 24 Sep 2021 14:28:35 GMT):
It's secure. The warnings are to give pause to people who cut and paste from a tutorial to a billion dollar AMM contract.

spandolfi (Fri, 24 Sep 2021 14:32:00 GMT):
Has joined the channel.

alvarodelaiglesia (Fri, 24 Sep 2021 14:46:36 GMT):
Thank you very much for answering, it is good news then!

JNeedham (Fri, 24 Sep 2021 15:05:17 GMT):
Has joined the channel.

shadownetz (Sat, 25 Sep 2021 01:32:11 GMT):
Has joined the channel.

mohammed.alzuharey (Sat, 25 Sep 2021 11:11:57 GMT):
Has joined the channel.

chesta (Sat, 25 Sep 2021 13:34:38 GMT):
Has joined the channel.

PeterSkogh (Sat, 25 Sep 2021 20:33:01 GMT):
Has joined the channel.

GergelyLengyel (Sat, 25 Sep 2021 21:49:32 GMT):
Has joined the channel.

GergelyLengyel (Sat, 25 Sep 2021 21:54:36 GMT):
Has left the channel.

sasschicken69 (Sun, 26 Sep 2021 11:36:44 GMT):
Has joined the channel.

brandongomezsanchez (Mon, 27 Sep 2021 00:45:04 GMT):
Has joined the channel.

macfarla (Mon, 27 Sep 2021 01:00:12 GMT):
https://cloudsmith.io/~consensys/repos/orion/packages/

macfarla (Mon, 27 Sep 2021 01:00:15 GMT):
https://cloudsmith.io/~consensys/repos/orion/packages/detail/raw/orion.tar.gz/1.3.2/

macfarla (Mon, 27 Sep 2021 01:00:43 GMT):
Is there a specific reason you're using old versions though? We recommend to use the latest versions.

macfarla (Mon, 27 Sep 2021 01:01:50 GMT):
Also Orion will be deprecated in November, as per https://github.com/ConsenSys/orion

macfarla (Mon, 27 Sep 2021 01:04:19 GMT):
The loading warnings can be ignored, you can see it is eventually found ` Found library resource at jar:file:/home/besu/lib/secp256k1-0.4.2.jar!/linux-x86-64/libsecp256k1.so` - it's just telling you where it is looking for native libs

macfarla (Mon, 27 Sep 2021 01:08:06 GMT):
We recently changed besu to ignore all unknown fields to eth_estimateGas. https://github.com/hyperledger/besu/pull/2690 If you are using an older version of besu, can you update and try again?

Adisa123 (Mon, 27 Sep 2021 04:38:33 GMT):
Has joined the channel.

VijayMichalik (Mon, 27 Sep 2021 07:26:06 GMT):
Hey @iffathossain, most networks like to separate responsibilities to reduce the risk of impacting consensus. So the RPC node accepts and broadcasts transactions and reads and the validator nodes are responsible for block creation.

VijayMichalik (Mon, 27 Sep 2021 07:26:34 GMT):
Each node can be tuned to the performance requirements of the role as well.

VijayMichalik (Mon, 27 Sep 2021 07:33:41 GMT):
Hey @hjpn we don't have a specific recommendation (the Alethio Lite Explorer is bundled with Besu but only serves basic information) but would love your feedback on what works and doesn't for you. We have an ongoing desire to support whatever you'd like to use!

karayel (Mon, 27 Sep 2021 07:35:19 GMT):
Has joined the channel.

adn-misa (Mon, 27 Sep 2021 09:58:22 GMT):
Has joined the channel.

GiovanniZanol (Mon, 27 Sep 2021 11:50:23 GMT):
I'm following the lacchain tutorial -> https://github.com/lacchain/besu-pro-testnet/blob/master/roles/lacchain-bootnode/tasks/install-orion.yaml , and trying to put UP my first node... But after my node goes UP I'll install with new versions. For now, I'm learning about eth and besu.

GiovanniZanol (Mon, 27 Sep 2021 11:52:33 GMT):
This lacchain tutorial is too old, I'll isntall new version and make a pool request to update.

GiovanniZanol (Mon, 27 Sep 2021 12:36:02 GMT):

Screenshot from 2021-09-27 09-35-44.png

GiovanniZanol (Mon, 27 Sep 2021 12:36:32 GMT):
This url points to empty content.

sapthasurendran (Mon, 27 Sep 2021 12:51:28 GMT):
Has joined the channel.

weiiv (Mon, 27 Sep 2021 15:00:56 GMT):
Has joined the channel.

weiiv (Mon, 27 Sep 2021 15:02:15 GMT):
Has left the channel.

srihari.r (Mon, 27 Sep 2021 15:38:03 GMT):
Has joined the channel.

macfarla (Mon, 27 Sep 2021 23:05:47 GMT):
You're right, that is an empty archive... I think updating the tutorial to use later versions is the best option there

HokitTang (Tue, 28 Sep 2021 02:18:02 GMT):
Has joined the channel.

Oznfc (Tue, 28 Sep 2021 08:33:26 GMT):
Has joined the channel.

XM.Jin (Tue, 28 Sep 2021 08:47:37 GMT):
Has joined the channel.

SamRutten (Tue, 28 Sep 2021 10:09:17 GMT):
Has joined the channel.

jexus7 (Tue, 28 Sep 2021 10:31:16 GMT):
Has joined the channel.

jexus7 (Tue, 28 Sep 2021 10:31:17 GMT):
Hi

jexus7 (Tue, 28 Sep 2021 10:31:45 GMT):
can Besu execute rawtransaction?

jexus7 (Tue, 28 Sep 2021 10:32:11 GMT):
i get this error: error" : { "code" : -32602, "message" : "Invalid params" }

jexus7 (Tue, 28 Sep 2021 10:33:40 GMT):
but with ganache instead of besu same transaction is correct ...

ranjan_paul (Tue, 28 Sep 2021 13:16:15 GMT):
Has joined the channel.

kylegrobinson (Tue, 28 Sep 2021 17:28:47 GMT):
Has joined the channel.

macfarla (Tue, 28 Sep 2021 23:53:14 GMT):
We recently changed besu to ignore all unknown fields to eth_estimateGas. https://github.com/hyperledger/besu/pull/2690 If you are using an older version of besu, can you update and try again?

gameprofits (Wed, 29 Sep 2021 15:08:37 GMT):

Clipboard - September 29, 2021 11:08 AM

gameprofits (Wed, 29 Sep 2021 15:08:56 GMT):
Why does my screen turning red when doing make docker with cello ?

gameprofits (Wed, 29 Sep 2021 15:09:33 GMT):

Clipboard - September 29, 2021 11:09 AM

gameprofits (Wed, 29 Sep 2021 15:09:53 GMT):
and this part here is telling me maybe I am not accessing the complete code ?

gameprofits (Wed, 29 Sep 2021 15:11:19 GMT):
I am running this with newest docker Ubuntu 20.04 x64

gameprofits (Wed, 29 Sep 2021 15:11:31 GMT):
clean installs updated, git clone, docker make

gameprofits (Wed, 29 Sep 2021 15:11:47 GMT):
E: Package 'python-pip' has no installation candidate The command '/bin/sh -c apt-get update && apt-get install -y bash curl python-dev sudo python-pip build-essential openssh-client libffi-dev libssl-dev && pip install --upgrade pip ansible pyyaml && groupadd -g ${gid} ${user} && useradd -d /opt/agent -u ${uid} -g ${user} ${user} && usermod -a -G root ${user} && echo "${user} ALL=(ALL) NOPASSWD: ALL"|tee /etc/sudoers.d/${user} && mkdir -p /opt/agent/.ssh && cd /opt/agent/.ssh && echo "host *" > config && echo " StrictHostKeyChecking no" >> config && echo " UserKnownHostsFile /dev/null" >> config' returned a non-zero code: 100 make: *** [Makefile:119: build/docker/agent/ansible/.x86_64-0.9.0-snapshot-8bd36c0] Error 100

gameprofits (Wed, 29 Sep 2021 15:12:47 GMT):
shit, wrong room , my apologues,

gameprofits (Wed, 29 Sep 2021 15:15:57 GMT):
But I have a feeling when install besu software stack, I am going to be over here with the same screens lol

matheus27 (Wed, 29 Sep 2021 20:14:39 GMT):
Has joined the channel.

matheus27 (Wed, 29 Sep 2021 20:15:42 GMT):
Hello, I have created a private chain IBFT and i want do deploy a contract by remix to this blockchain. How can i do?

macfarla (Wed, 29 Sep 2021 20:50:50 GMT):
Besu supports eth_sendRawTransaction https://besu.hyperledger.org/en/stable/Reference/API-Methods/#eth_sendrawtransaction

Parthavs (Thu, 30 Sep 2021 01:01:58 GMT):
Has joined the channel.

macfarla (Thu, 30 Sep 2021 05:07:56 GMT):
there shouldn't be anything special that you need to do here - it's just making sure remix can talk to your besu node over http. https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#rpc-http-cors-origins

gokulraj17687 (Thu, 30 Sep 2021 07:02:44 GMT):
whether DAML had any advantage over solidity smart contract on Besu network? which is better - DAML or Solidity ?

barnold (Thu, 30 Sep 2021 13:43:27 GMT):
Has joined the channel.

NkNs (Thu, 30 Sep 2021 18:23:32 GMT):
Has joined the channel.

danilp (Thu, 30 Sep 2021 18:38:08 GMT):
Hey everyone. I'm trying to build besu-native(https://github.com/hyperledger/besu-native), but I'm getting the following error when running 'git submodule update', as stated in the Building section: `Cloning into 'myPath/besu-native/secp256r1/besu-native-ec'... git@github.com: Permission denied (publickey). fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists. fatal: clone of 'git@github.com:ConsenSys/besu-native-ec.git' into submodule path 'myPath/besu-native/secp256r1/besu-native-ec' failed Failed to clone 'secp256r1/besu-native-ec'. Retry scheduled Cloning into 'myPath/besu-native/secp256r1/besu-native-ec'... git@github.com: Permission denied (publickey). fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists. fatal: clone of 'git@github.com:ConsenSys/besu-native-ec.git' into submodule path 'myPath/besu-native/secp256r1/besu-native-ec' failed Failed to clone 'secp256r1/besu-native-ec' a second time, aborting`

danilp (Thu, 30 Sep 2021 18:38:08 GMT):
Hey everyone. I'm trying to build besu-native(https://github.com/hyperledger/besu-native), but I'm getting the following error when running 'git submodule update', as stated in the Building section: `Cloning into 'myPath/besu-native/secp256r1/besu-native-ec'... git@github.com: Permission denied (publickey). fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists. fatal: clone of 'git@github.com:ConsenSys/besu-native-ec.git' into submodule path 'myPath/besu-native/secp256r1/besu-native-ec' failed Failed to clone 'secp256r1/besu-native-ec'. Retry scheduled Cloning into 'myPath/besu-native/secp256r1/besu-native-ec'... git@github.com: Permission denied (publickey). fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists. fatal: clone of 'git@github.com:ConsenSys/besu-native-ec.git' into submodule path 'myPath/besu-native/secp256r1/besu-native-ec' failed Failed to clone 'secp256r1/besu-native-ec' a second time, aborting` What can I do to fix this?

shemnon (Thu, 30 Sep 2021 18:48:26 GMT):
do you access git via SSH key or console login? I think the submoduels are set up for SSH keys only.

shemnon (Thu, 30 Sep 2021 18:48:26 GMT):
do you access github via SSH key or console login? I think the submoduels are set up for SSH keys only.

danilp (Thu, 30 Sep 2021 18:51:52 GMT):
SSH key. I can try to use https instead. I haven't thought about using https instead though

AdrianAvila (Thu, 30 Sep 2021 21:32:58 GMT):
Has joined the channel.

JagannathAlur (Fri, 01 Oct 2021 01:11:21 GMT):
Has joined the channel.

marco.cassandro (Fri, 01 Oct 2021 09:03:28 GMT):
Hello to all. I am using besu-21.7.3 and am having a problem with the maximum number of connections accepted by a node. Many connections are opened and closed after a very long time. I would like to know if there is a way to set a timeout for the single connection. Thanks

bardia (Fri, 01 Oct 2021 10:11:18 GMT):
Has left the channel.

AnuragKumar_10 (Fri, 01 Oct 2021 11:16:53 GMT):
Has joined the channel.

anilhelvaci (Fri, 01 Oct 2021 11:23:28 GMT):
Has joined the channel.

VladLupashevskyi (Fri, 01 Oct 2021 12:14:52 GMT):
Hi everybody, could somebody explain the differences between IBFT2 and QBFT? So far I've got to know that QBFT is improved IBFT2, but I couldn't find any in depth comparison.

dmckay (Fri, 01 Oct 2021 14:11:13 GMT):
Has joined the channel.

geekcharming (Fri, 01 Oct 2021 16:45:31 GMT):
Has joined the channel.

azhang919 (Fri, 01 Oct 2021 17:26:38 GMT):
Has joined the channel.

mahnoormmalik (Fri, 01 Oct 2021 17:32:26 GMT):
Has joined the channel.

CrystalChun (Fri, 01 Oct 2021 17:35:32 GMT):
Has joined the channel.

imchaves10 (Fri, 01 Oct 2021 19:10:33 GMT):
Has joined the channel.

Leeyoungone (Fri, 01 Oct 2021 23:09:17 GMT):
Has joined the channel.

elenipartakki (Fri, 01 Oct 2021 23:24:02 GMT):
Has joined the channel.

guri (Sat, 02 Oct 2021 04:10:58 GMT):
Has joined the channel.

Z3R0097 (Sat, 02 Oct 2021 06:22:58 GMT):
Has joined the channel.

RakshitaKaulgud (Sat, 02 Oct 2021 18:42:24 GMT):
Has joined the channel.

fallenvalkyrie17 (Sat, 02 Oct 2021 19:14:15 GMT):
Has joined the channel.

OmarKhodr (Sun, 03 Oct 2021 06:52:57 GMT):
Has joined the channel.

quyenld176859 (Sun, 03 Oct 2021 08:39:27 GMT):
Has joined the channel.

DanielHaren1 (Sun, 03 Oct 2021 11:42:34 GMT):
Has joined the channel.

Pankaj_1 (Mon, 04 Oct 2021 06:31:48 GMT):
Has joined the channel.

glehmann (Mon, 04 Oct 2021 07:05:34 GMT):
Has joined the channel.

Priyadaharan107 (Mon, 04 Oct 2021 17:20:07 GMT):
Has joined the channel.

analia_meira (Mon, 04 Oct 2021 18:17:47 GMT):
Has joined the channel.

macfarla (Tue, 05 Oct 2021 01:32:06 GMT):
Besu's P2P code manages a lot of this automatically, with peer connections prioritised and/or closed according to a number of factors. There is no setting for individual connection timeout. There are options to manage remote connections eg https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#remote-connections-limit-enabled

macfarla (Tue, 05 Oct 2021 01:32:22 GMT):
Depending on your use case, configuring additional bootnodes might help?

ringo156 (Tue, 05 Oct 2021 04:18:42 GMT):
Has joined the channel.

sbyits (Tue, 05 Oct 2021 05:04:25 GMT):
Has joined the channel.

SuzanaMaranhao (Tue, 05 Oct 2021 19:45:45 GMT):
Hello, I have some nodes in a public permissioned network. They are all synchronizing. New blocks are created every 2 seconds, I can see that in eth_blockNumber. However, when I use eth_syncing, the answer is false. Any clue? Command: curl -X POST --data '{"jsonrpc":"2.0","method":"eth_syncing","params":[],"id":51}' http://127.0.0.1:8545

shivamraj6288 (Tue, 05 Oct 2021 19:51:47 GMT):
Has joined the channel.

lucassaldanha (Tue, 05 Oct 2021 20:49:11 GMT):
Hi Suzana! Could you please confirm the Besu version that you are running and the configuration that you are using (config + genesis).

lucassaldanha (Tue, 05 Oct 2021 20:49:51 GMT):
I'd also like to see the result of net_peerCount on the node that is returning false for eth_syncing (https://besu.hyperledger.org/en/stable/Reference/API-Methods/#net_peercount).

lucassaldanha (Tue, 05 Oct 2021 20:50:25 GMT):
https://besu.hyperledger.org/en/stable/Reference/Resources/

macfarla (Tue, 05 Oct 2021 22:50:20 GMT):
I think `eth_syncing` only returns true when the node is actively syncing ie it has to get out of sync

macfarla (Tue, 05 Oct 2021 23:32:22 GMT):
There is a public presentation here with some in depth info https://docs.google.com/presentation/d/1i3HYD1GTyku2R7Lp-jZaPkNmSrBdB0Wra2pXdcKGpKI/edit#slide=id.p1

guidam (Wed, 06 Oct 2021 08:22:46 GMT):
Has joined the channel.

hugebing (Wed, 06 Oct 2021 09:05:33 GMT):
Has joined the channel.

Nithronium (Wed, 06 Oct 2021 14:12:47 GMT):
Hi, I am having a problem regarding the blocktime

Nithronium (Wed, 06 Oct 2021 14:13:05 GMT):
I have set the block interval as 5 seconds on my Besu configuration, and I am running 4 nodes on the same machine for testing purposes

Nithronium (Wed, 06 Oct 2021 14:13:24 GMT):
I am receiving errors regarding the block timestamps, it seems that the blocks are being produced between 4.5 - 5.5 seconds

Nithronium (Wed, 06 Oct 2021 14:13:39 GMT):
the ones produced in 4.5 seconds get rejected automatically due to blocktimestamps

Nithronium (Wed, 06 Oct 2021 14:13:54 GMT):
Which causes my average block interval to be 12 seconds (due to blocks being rejected)

Nithronium (Wed, 06 Oct 2021 14:14:26 GMT):
Here: ` Invalid block header: timestamp 1633529637 is only 4 seconds newer than parent timestamp 1633529633. Minimum 5 seconds`

x6ein (Wed, 06 Oct 2021 20:52:18 GMT):
Has joined the channel.

CristianLorenzetto (Thu, 07 Oct 2021 06:05:40 GMT):
Has joined the channel.

CristianLorenzetto (Thu, 07 Oct 2021 06:05:47 GMT):
hi

CristianLorenzetto (Thu, 07 Oct 2021 06:06:38 GMT):
i would install a SSI stack in Besu platform. can you suggest a module or a software for doing it?

Nithronium (Thu, 07 Oct 2021 06:34:11 GMT):
Any good block explorer suggestions? Blockscout seems to be not working with their latest release. It has fetcher issues. Besu returns "method not enabled" errors on their block & internal transaction fetchers

damianlluch (Thu, 07 Oct 2021 08:56:44 GMT):
Has joined the channel.

Aneesha (Thu, 07 Oct 2021 08:59:11 GMT):
Has joined the channel.

antoinedz (Thu, 07 Oct 2021 13:58:37 GMT):
Hi, I have issues syncing Ethereum Classic using Besu `21.10`. Sync is OK until block 13.461.984 but now I have no peers, ` FullSyncTargetManager | No sync target, waiting for peers: 25`

antoinedz (Thu, 07 Oct 2021 14:01:09 GMT):
with `org.hyperledger.besu.ethereum.p2p` in DEBUG, I can see a lot of "Too many peers." error

antoinedz (Thu, 07 Oct 2021 14:01:09 GMT):
with `org.hyperledger.besu.ethereum.p2p` in DEBUG, I can see a lot of "Too many peers." errors

antoinedz (Thu, 07 Oct 2021 14:01:53 GMT):
and a lot of `org.hyperledger.besu.ethereum.p2p.rlpx.handshake.HandshakeException: Decrypting an incoming handshake message failed caused by org.bouncycastle.crypto.InvalidCipherTextException: Invalid MAC.` exceptions

antoinedz (Thu, 07 Oct 2021 14:01:53 GMT):
and a lot of `org.hyperledger.besu.ethereum.p2p.rlpx.handshake.HandshakeException: Decrypting an incoming handshake message failed caused by org.bouncycastle.crypto.InvalidCipherTextException: Invalid MAC.` exceptions

SuzanaMaranhao (Thu, 07 Oct 2021 15:03:42 GMT):
The version is still 1.5.2. I know... we need to upgrade it!

SuzanaMaranhao (Thu, 07 Oct 2021 15:16:26 GMT):
What info do you want from the genesis file?

jyfregramer (Thu, 07 Oct 2021 17:45:05 GMT):
Has joined the channel.

nataliasofia (Thu, 07 Oct 2021 20:29:22 GMT):
Has joined the channel.

diegoll (Thu, 07 Oct 2021 22:03:28 GMT):
Could you try with the latest release?

diegoll (Thu, 07 Oct 2021 22:03:28 GMT):
`21.10` hasn't been released yet, are trying `21.10.0-RC1`?

diegoll (Thu, 07 Oct 2021 22:03:28 GMT):
`21.10` hasn't been released yet, are you trying `21.10.0-RC1`?

diegoll (Thu, 07 Oct 2021 22:03:51 GMT):
That's https://github.com/hyperledger/besu/releases/tag/21.7.4

yianco (Thu, 07 Oct 2021 22:28:22 GMT):
Has joined the channel.

ThinCrusts (Fri, 08 Oct 2021 01:37:33 GMT):
Has joined the channel.

macfarla (Fri, 08 Oct 2021 04:35:52 GMT):
we don't have a specific recommendation (the Alethio Lite Explorer is bundled with Besu but only serves basic information) but would love your feedback on what works and doesn't for you. We have an ongoing desire to support whatever you'd like to use!

jframe (Fri, 08 Oct 2021 04:41:29 GMT):
What version of Besu are you using? The behaviour of the block period timestamp has been improved in recent releases.

jframe (Fri, 08 Oct 2021 04:43:32 GMT):
This happens due to variability with the Java timer. Sometimes the timer delay can be shorter or longer than the specified value

jframe (Fri, 08 Oct 2021 04:43:44 GMT):
Also what OS are using as this might also be factor?

lucassaldanha (Fri, 08 Oct 2021 06:14:55 GMT):
As much as possible so we can try to reproduce the issue locally.

antoinedz (Fri, 08 Oct 2021 07:02:44 GMT):
yes, but same problem with 21.7

stephaneJ (Fri, 08 Oct 2021 07:50:44 GMT):
Has joined the channel.

Nithronium (Fri, 08 Oct 2021 10:32:45 GMT):
I have somehow enabled Blockscout and it seems to be working fine (except the internal transactions part I think(

Nithronium (Fri, 08 Oct 2021 10:33:02 GMT):
Let me share my env variables to make Blockscout usable for Besu

Nithronium (Fri, 08 Oct 2021 10:34:24 GMT):
``` SECRET_KEY NETWORK SUBNETWORK ETHEREUM_JSONRPC_VARIANT ETHEREUM_JSONRPC_TRACE_URL ETHEREUM_JSONRPC_HTTP_URL ETHEREUM_JSONRPC_WS_URL PORT COIN DATABASE_URL CHAIN_ID ```

Nithronium (Fri, 08 Oct 2021 10:34:41 GMT):
These compiled fine, I forgot the Chain_id env variable before I guess

Nithronium (Fri, 08 Oct 2021 10:35:31 GMT):
Ubuntu 20.04 (LTS) x64

Nithronium (Fri, 08 Oct 2021 10:36:00 GMT):
and I am using besu-21.7.4

Nithronium (Fri, 08 Oct 2021 10:37:13 GMT):
previously I was using Besu-21.1.2 with 4 different nodes running on 4 different devices with block interval of 2 seconds, I had no problem so far there and the network is still running.

Nithronium (Fri, 08 Oct 2021 10:37:39 GMT):
5 seconds block generation + 4 nodes on same devices seems to be the root cause of the issue. Though I haven't tried 21.7.4 on 4 different devices

Ishee (Fri, 08 Oct 2021 13:08:33 GMT):
Has joined the channel.

Ishee (Fri, 08 Oct 2021 13:08:35 GMT):
Hey Everyone, Currently, I have run the default structure of BESU. Which have 4 peers and 1 bootnode. But Blocks are created automatically without any external transaction and it also affects storage. after 1-2 days storage is fulled. How I can stop this continuous Block generation in BESU? Thanks.

Camilo12987 (Fri, 08 Oct 2021 15:21:30 GMT):
Has joined the channel.

jackmacloud (Sat, 09 Oct 2021 06:35:59 GMT):
Has joined the channel.

macfarla (Mon, 11 Oct 2021 01:58:11 GMT):
Thanks @Nithronium - are you saying you needed all of those environment variables defined for blockscout to work with Besu?

macfarla (Mon, 11 Oct 2021 02:10:07 GMT):
I just tested this locally - started a node that's producing blocks, it's up to 11000 blocks, started another node with an empty db and it returns true for eth_syncing while it's catching up (but only for the 5 or so seconds it takes to get to chain head). But once it's in sync (ie only importing the 1 or 2 blocks it's behind), it always returns false.

macfarla (Mon, 11 Oct 2021 02:10:24 GMT):
```➜ ~ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_syncing","params":[],"id":51}' http://127.0.0.1:8555 { "jsonrpc" : "2.0", "id" : 51, "result" : { "startingBlock" : "0x0", "currentBlock" : "0x24fe", "highestBlock" : "0x2cef" } }% ➜ ~ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_syncing","params":[],"id":51}' http://127.0.0.1:8555 { "jsonrpc" : "2.0", "id" : 51, "result" : false }% ```

lucassaldanha (Mon, 11 Oct 2021 02:15:04 GMT):
Thanks for checking this Sally. Maybe we should update the docs to clarify the behaviour of this method? Unless this isn't the expected behaviour?? :thinking:

lucassaldanha (Mon, 11 Oct 2021 02:18:25 GMT):
I've checked the Ethereum API spec and this is the expected behaviour.

lucassaldanha (Mon, 11 Oct 2021 02:18:48 GMT):
So yeah, it looks like a note on the docs is enough.

lucassaldanha (Mon, 11 Oct 2021 02:32:17 GMT):
https://github.com/hyperledger/besu-docs/pull/822

jframe (Mon, 11 Oct 2021 06:38:53 GMT):
Have seen this locally as well occasionally. Hopefully this doesn't happen too often. We have raised a ticket to look at increasing the accuracy of the block timer https://github.com/hyperledger/besu/issues/2798

Bhawikchawda (Mon, 11 Oct 2021 06:49:17 GMT):
Has joined the channel.

Bhawikchawda (Mon, 11 Oct 2021 07:02:09 GMT):
Hello Everyone, I am following this tutorial for private network creation : https://besu.hyperledger.org/en/stable/Tutorials/Examples/Private-Network-Example/. So, here i am trying to create one more validator but facing an issue inspite of getting result as true by all the running nodes.

OmarSaad (Mon, 11 Oct 2021 07:07:52 GMT):
Has joined the channel.

Ishee (Mon, 11 Oct 2021 08:58:59 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=5dHK4LGcjfvYKbzj6) Same, I'm also facing! Please can anyone guide here ? What is wrong there?

Sa_Block98 (Mon, 11 Oct 2021 14:01:59 GMT):
Has joined the channel.

chris2222 (Mon, 11 Oct 2021 14:07:16 GMT):
Has joined the channel.

chris2222 (Mon, 11 Oct 2021 14:07:23 GMT):
hi

phalves (Mon, 11 Oct 2021 14:44:33 GMT):
Hello everyone,

SuzanaMaranhao (Mon, 11 Oct 2021 15:32:30 GMT):
We have found a lot of files named “logBloom-??.cache” saved at data/cache in our Besu installation. Are these files used to optimize the search of events? Will we face slower queries if we delete them?

SuzanaMaranhao (Mon, 11 Oct 2021 15:34:10 GMT):
Thank you for your help

moorada (Mon, 11 Oct 2021 15:38:16 GMT):
Has joined the channel.

shemnon (Mon, 11 Oct 2021 15:57:49 GMT):
If you delete them Besu will re-generate them, possibly as late as the next restart. The queries will be generally slower until the cache is re-generated.

SuzanaMaranhao (Mon, 11 Oct 2021 16:55:39 GMT):
when including a new validator in an IBFT2.0 permissioned network using voting (https://besu.hyperledger.org/en/stable/HowTo/Configure/Consensus-Protocols/Add-Validators/), I can use ibft_getPendingVotes to check if the vote of a validator was computed or not. Is there a way to know what is the state of voting for all validators? I mean, how to make sure that the votes are happening, remember who still not vote etc.

SuzanaMaranhao (Mon, 11 Oct 2021 16:55:54 GMT):
Is there a dashboard where I check all votes until now?

MANARKASSOU (Mon, 11 Oct 2021 20:17:03 GMT):
Has joined the channel.

JoseeeM (Mon, 11 Oct 2021 22:04:27 GMT):
Has joined the channel.

macfarla (Mon, 11 Oct 2021 23:23:32 GMT):
Thanks @SuzanaMaranhao for the feedback, we do appreciate it! And @lucassaldanha for making the docs better :rocket:

macfarla (Mon, 11 Oct 2021 23:26:23 GMT):
Can you give some more info - exactly what step fails and what error are you getting?

jframe (Tue, 12 Oct 2021 00:28:57 GMT):
Unfortunately there is no dashboard that gives the overall state of the votes. Like you mentioned the best way is to check voting state for each the nodes using ibft_getPendingVotes.

Bhawikchawda (Tue, 12 Oct 2021 04:36:47 GMT):
https://besu.hyperledger.org/en/stable/Tutorials/Examples/Private-Network-Example/ I am following this tutorial and want to add one more validator. So, will you guide me how to do this?

zero0097 (Tue, 12 Oct 2021 04:50:24 GMT):
Has joined the channel.

macfarla (Tue, 12 Oct 2021 05:19:48 GMT):
So the quickstart docker image is designed to be self-contained, and enable you to play around with the RPCs and so on. The quickstart docker image has 4 validators and one bootnode. Are you trying to add a validator outside of the quickstart docker image?

Bhawikchawda (Tue, 12 Oct 2021 05:39:16 GMT):
yes from outside

Bhawikchawda (Tue, 12 Oct 2021 05:50:41 GMT):
Can you please guide me how to do add validator on this. And one more question in private network blocks are generated continously without any external transaction. So, how can i stop the block generation?

Nithronium (Tue, 12 Oct 2021 05:52:24 GMT):
Yes, these are required, I have set everything except the chain_id parameter, it didn't work

Nithronium (Tue, 12 Oct 2021 05:52:33 GMT):
after setting chain_id, it was working perfectly fine

chris2222 (Tue, 12 Oct 2021 08:56:16 GMT):
Is it possible to implement sidechain with besu?

ShaharinAhmed (Tue, 12 Oct 2021 09:46:52 GMT):
is it possible to check if pruning is enabled in a already running besu network?

prasadmnd (Tue, 12 Oct 2021 09:49:02 GMT):
Has joined the channel.

WeCanBeFriends (Tue, 12 Oct 2021 14:38:02 GMT):
Has joined the channel.

frostyfrog (Tue, 12 Oct 2021 20:23:39 GMT):
Has joined the channel.

bgravenorst (Wed, 13 Oct 2021 00:51:34 GMT):
Hi Chris, yes it is possible.

macfarla (Wed, 13 Oct 2021 03:39:40 GMT):
This tutorial steps through how to add a validator. https://besu.hyperledger.org/en/stable/Tutorials/Private-Network/Adding-removing-IBFT-validators/

Bhawikchawda (Wed, 13 Oct 2021 04:51:01 GMT):
Thanks @macfarla :innocent: Can you guide me in my one more issue, actually i have created private network but blocks are created continously without any external transaction and eating up the space of my system. So, is there any way to stop generating blocks automatically?

Ishee (Wed, 13 Oct 2021 05:10:42 GMT):
Hey @ShaharinAhmed, Did you find any solution for the Same? As I also faced the same issue about storage space.

Ishee (Wed, 13 Oct 2021 05:10:42 GMT):
Hey @ShaharinAhmed, Did you find any solution for the Same? As I also faced the same issue. My 100Gb disk usage keeps on growing and after 2-3 days It stops running!

axays007 (Wed, 13 Oct 2021 05:22:53 GMT):
Has joined the channel.

Ishee (Wed, 13 Oct 2021 05:36:08 GMT):
hey @VijayMichalik, is there any update related same? As I also faced the same issue as @ShaharinAhmed. I am working on production and my network was stopped because of a storage issue And I did restart the network then I lost all old DATA. Can you please guide me here? What I can do for that As I'm stuck between this.

Ishee (Wed, 13 Oct 2021 05:36:08 GMT):
hey @VijayMichalik, is there any update related same? As I also faced the same issue as @ShaharinAhmed I am working on production and my network was stopped because of a storage issue And I did restart the network then I lost all old DATA. Can you please guide me here? What I can do for that As I'm stuck between this.

axays007 (Wed, 13 Oct 2021 05:41:52 GMT):
hey! I'm also facing the same issue, any guide will be appreciated.

Bhawikchawda (Wed, 13 Oct 2021 06:51:52 GMT):
Hello, I am trying to use elethio lite explorer by following this article : https://besu.hyperledger.org/en/stable/HowTo/Deploy/Lite-Block-Explorer/ but when i runs it with node js it shows nothing on my http://localhost:3000/ only blank screen. Can anybody know, what may be the issue here? Thanks.

FrancescoUrbano (Wed, 13 Oct 2021 08:01:18 GMT):
Has joined the channel.

charlie.dev (Wed, 13 Oct 2021 13:11:11 GMT):
Can anyone share transaction lifecycle in besu ( Private Network - IBFT 2.0 ). I was trying to understand how the transaction will flow in a private network, I have searched everywhere but I didnt get it. Appreciate your help if any :)

charlie.dev (Wed, 13 Oct 2021 13:14:13 GMT):
Question 2: What are the best practices when we are deploying private network ( IBFT 2.0 ) in multiple data centers as active-active mode. Is it recommended to assign a node both boot node and validator node or we should keep them separate in production private network ?

Ilikecodes (Wed, 13 Oct 2021 17:04:56 GMT):
Has joined the channel.

priamv (Wed, 13 Oct 2021 18:11:35 GMT):
Has joined the channel.

Dazpel (Wed, 13 Oct 2021 18:19:00 GMT):
Has joined the channel.

bgravenorst (Wed, 13 Oct 2021 20:10:38 GMT):
Hi do you perhaps have access to the logs, perhaps you'll find something similar to: `2021-10-13 19:38:51.870+00:00 | StatePruning-0 | INFO | Pruner | Starting Pruner.` Alternatively if you have metrics enabled you should be able to see some metrics if pruning is enabled.

bgravenorst (Wed, 13 Oct 2021 20:28:13 GMT):
Here's a topic in the documentation that may help: https://besu.hyperledger.org/en/stable/Concepts/Privacy/Private-Transaction-Processing/

rolandtyler (Wed, 13 Oct 2021 20:43:37 GMT):
Has joined the channel.

bs (Wed, 13 Oct 2021 21:07:42 GMT):
Has joined the channel.

joshuafernandes (Wed, 13 Oct 2021 23:28:43 GMT):
Hi @charlie.dev could you clarify what you mean by active-active mode? Is that a validator in each DC?

joshuafernandes (Wed, 13 Oct 2021 23:31:49 GMT):
By and large there are no hard and fast rules re nodes, but the general practise is to work with the governance model of your org. For example validators are often sealed off and only allowed to talk to other validators, bootnodes and selected rpc nodes, but you can have them open to all. The general rule of thumb is to have seperation of concerns ie validators only produce blocks, specific nodes for txns and others may be for read only operations/bootnodes etc

joshuafernandes (Wed, 13 Oct 2021 23:32:39 GMT):
By and large there are no hard and fast rules re nodes, but the general practise is to work with the governance model of your org. For example validators are often sealed off and only allowed to talk to other validators, bootnodes and selected rpc nodes, but you can have them open to all. The general rule of thumb is to have seperation of concerns ie validators only produce blocks, specific nodes for txns and others may be for read only operations/bootnodes etc.

alekseishcherbin (Thu, 14 Oct 2021 07:22:56 GMT):
Has joined the channel.

iorveth (Thu, 14 Oct 2021 08:51:06 GMT):
Has joined the channel.

FrancescoMemola (Thu, 14 Oct 2021 09:50:57 GMT):
Has joined the channel.

Nithronium (Thu, 14 Oct 2021 11:58:39 GMT):
Lets see if we can get a fix on that. This wasn't an issue on 21.1.2, were there any changes related to the timers on the recent updates?

damianlluch (Thu, 14 Oct 2021 13:18:39 GMT):
Hello, a query. I have been testing Hyperledger Besu on my local machine. And now I need to deploy it on AWS instances. Now, I'm going to need to use Metamask and I don't know if I can do it if I choose a VPC type architecture, since it would be a private network. Can a VPC with a public gateway be used for these cases? I haven't found any guide. thanks

thejas.pavithran (Thu, 14 Oct 2021 14:35:31 GMT):
Has joined the channel.

SuzanaMaranhao (Thu, 14 Oct 2021 15:41:20 GMT):
We want to remove all the old blocks in our Besu testnet and start the generation of blocks all again. What is the best way to do that?

grace.hartley (Thu, 14 Oct 2021 16:38:12 GMT):
@chris2222 In fact, Palm NFT Studio runs a sidechain on Hyperledger besu for their network

EC983 (Thu, 14 Oct 2021 19:02:10 GMT):
Has joined the channel.

Librechain (Fri, 15 Oct 2021 01:26:09 GMT):
Has joined the channel.

Librechain (Fri, 15 Oct 2021 01:26:10 GMT):
Hey guys I have a comment on the documentation / code provided for securing for JSON RPC connections

Librechain (Fri, 15 Oct 2021 01:26:17 GMT):
Here: https://besu.hyperledger.org/en/stable/HowTo/Interact/APIs/Authentication/

Librechain (Fri, 15 Oct 2021 01:26:41 GMT):
Is there any particular reason for why the mandated algorithm is RSA-2048?

Librechain (Fri, 15 Oct 2021 01:28:01 GMT):
Given the fact we're dealing with cryptocurrencies to begin with, the departure from ecdsa / edwards' curves struck me as a bit strange (I'm guessing ecdsa is out bc rsa provides encryption); but I have an issue with the weakness of the algorithm mandated (since the documentation is about securing JSON RPC).

Librechain (Fri, 15 Oct 2021 01:29:32 GMT):
Recently, the NSA published renewed guidance affirming that RSA-2048 keys should be deprecated in favor of ones that are at least 3096-bits. That aside though the JWT protocol allows for the use of much stronger algorithms that can be executed by virtually any major cryptographic library (OpenSSL, libgcrypt, NaCL, libsodium, Botan, etc.)

hyper-curious (Fri, 15 Oct 2021 02:06:15 GMT):
Has joined the channel.

Nithronium (Fri, 15 Oct 2021 02:38:49 GMT):
AFAIK it is not mandated, it is mentioned; `The key must use an RSA private key of at least 2048 bits.` and the guide shows how to create one,

Nithronium (Fri, 15 Oct 2021 02:39:00 GMT):
you can change the settings for 4096 too, it is up to you

spaturu2305 (Fri, 15 Oct 2021 02:47:16 GMT):
Has joined the channel.

Librechain (Fri, 15 Oct 2021 04:11:35 GMT):
It is mandated.

Librechain (Fri, 15 Oct 2021 04:11:58 GMT):

Clipboard - October 15, 2021 12:11 AM

Librechain (Fri, 15 Oct 2021 04:12:11 GMT):
Verbatim, it states, "The key must use an RSA private key of at least 2048 bits"

Librechain (Fri, 15 Oct 2021 04:12:25 GMT):
Sorry I misspoke. It doesn't restrict it to that bit-size, but it does restrict the algo to RSA.

Librechain (Fri, 15 Oct 2021 04:14:03 GMT):
I don't want to be a dick, but that restriction honestly defeats the purpose of even provisioning any type of JWT-based API auth. for Besu. Using 3096+ bit keys in a world where smaller, more efficient, secure, and flexible algos are out there is a no-go for most if not all devs at this point.

Librechain (Fri, 15 Oct 2021 04:15:57 GMT):
Is there some drawback to allowing other key algos to be used for the generated JWT pubkey?

bgravenorst (Fri, 15 Oct 2021 04:31:20 GMT):
You can delete the data in Besu's data directory to restart generating from block zero. The data directory is configured in the `--data-path` CLI option https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#data-path

joshuafernandes (Fri, 15 Oct 2021 04:39:20 GMT):
Hi @damianlluch you can put the instance in a VPC but preferable in a public subnet so metamask can connect to it. Enable the 'public_ip' option when you spin it up. If you are deploying the instance in a private subnet you need a VPN or tunnel or equivalent that will resolve and connect to your instance

diegoll (Fri, 15 Oct 2021 12:39:18 GMT):
It may also be a good practice to change the `chainId` and probably something from your genesis like the `timestamp` to make sure you start building a completely different chain

cbfh (Fri, 15 Oct 2021 19:19:08 GMT):
Hi everyone. Sorry if this is a beginner question, but how do I build myself the besu docker images?

natedl98 (Sat, 16 Oct 2021 03:22:50 GMT):
Has joined the channel.

natedl98 (Sat, 16 Oct 2021 03:29:24 GMT):
Hi everybody, I've been diving into Besu for the past couple days, trying to get an Ethereum chain setup on AWS.

natedl98 (Sat, 16 Oct 2021 03:30:23 GMT):
I have one instance on HDD and one on SSD. One thing I noticed is that the eth_syncing return object is different between the two

natedl98 (Sat, 16 Oct 2021 03:30:59 GMT):
On HDD it has 2 extra keys, "pulledStates" and "knownStates". My SSD blockchain doesn't have those two keys in its object

natedl98 (Sat, 16 Oct 2021 03:31:55 GMT):
We wanted to make both nodes an archive node, but I am guessing we accidentally synced one of them in fast mode

natedl98 (Sat, 16 Oct 2021 03:33:07 GMT):
The other thing I noticed is that the HDD version (the one with the additional key-value pairs in its eth_syncing return object) seems to be syncing a lot faster than the SSD version (the one with out "pulledStates" and "knownStates"). Any idea why this might be?

natedl98 (Sat, 16 Oct 2021 03:34:24 GMT):
Also, it seems like the sync process times out sometimes. On my HDD node, it seems like it has gotten stuck on block 0x9d6fa0. I'm not sure if I should just let it continue or do something?

shemnon (Sat, 16 Oct 2021 03:47:48 GMT):
HDD is running in fast sync mode. Not useful as an archive node The block number is just the download over the p2p, no processing.

shemnon (Sat, 16 Oct 2021 03:48:07 GMT):
HDD won't be able to keep up with block processing at chain head. No client can on an HDD

NaufalAlexander (Sat, 16 Oct 2021 04:26:33 GMT):
Has joined the channel.

natedl98 (Sat, 16 Oct 2021 04:32:28 GMT):
Thanks for the quick reply. Yeah that's unfortunately what I was suspecting. Do you think it's possible to do the original sync on SSD and then convert the disk to HDD when the initial sync is complete? That was my plan because HDD is like 1/10th of the cost of SSD on AWS

kondo (Sat, 16 Oct 2021 05:05:52 GMT):
Has joined the channel.

ThomasTeo (Sat, 16 Oct 2021 08:09:32 GMT):
Has joined the channel.

ThomasTeo (Sat, 16 Oct 2021 08:21:42 GMT):
Hi I am new to Quorum and wanted to try it out. I followed the instruction on the guide --> https://consensys.net/quorum/products/guides/getting-started-with-consensys-quorum/ Unfortunately, along the way I encountered a difference between the instruction on the guide vs the actual execution. The guide mentioned that I should answer "Y" when prompted this question "Do you wish to enable support for logging with ELK (Elasticsearch, Logstash & Kibana)? [y/N]", however what I saw when in the actual execution is "Do you wish to enable support for logging with Splunk or ELK (Elasticsearch, Logstash & Kibana)? Default: [1] 1. None 2. Splunk 3. ELK " So I answer "3" since it is the closest to what the guide meant. Subsequently, it continues to run and ended with this error "Error response from daemon: invalid mount config for type "bind": bind source path does not exist: /Users/Thomas/work/quorum/quorum-test-network/logs/tessera" My system config as follows: - macOS Big Sur 11.6 - nodeJS v13.5.0

ThomasTeo (Sat, 16 Oct 2021 08:21:42 GMT):
Hi I am new to Quorum and wanted to try it out. I followed the instruction on the guide --> https://consensys.net/quorum/products/guides/getting-started-with-consensys-quorum/ Unfortunately, along the way I encountered a difference between the instruction on the guide vs the actual execution. The guide mentioned that I should answer "Y" when prompted this question "Do you wish to enable support for logging with ELK (Elasticsearch, Logstash & Kibana)? [y/N]", however what I saw when in the actual execution is "Do you wish to enable support for logging with Splunk or ELK (Elasticsearch, Logstash & Kibana)? Default: [1] 1. None 2. Splunk 3. ELK " So I answer "3" since it is the closest to what the guide meant. Subsequently, it continues to run and ended with this error "Error response from daemon: invalid mount config for type "bind": bind source path does not exist: /Users/Thomas/work/quorum/quorum-test-network/logs/tessera" My system config as follows: - macOS Big Sur 11.6 - nodeJS v13.5.0 - Docker 20.10.8, build 3967b7d Please help! thanks!

AyhanSunar (Sat, 16 Oct 2021 14:12:31 GMT):
Has joined the channel.

hellboy03 (Sat, 16 Oct 2021 18:18:02 GMT):
Has joined the channel.

kdahya (Sun, 17 Oct 2021 02:50:45 GMT):
Has joined the channel.

natedl98 (Sun, 17 Oct 2021 03:46:37 GMT):
So my HDD node had crawled to a halt around block 10,000,000. I killed the sync command and restarted it, and now it is syncing quickly again.

sagarmylavarapu (Sun, 17 Oct 2021 10:26:43 GMT):
Has joined the channel.

manvendra (Sun, 17 Oct 2021 19:19:42 GMT):
Has joined the channel.

joshuafernandes (Sun, 17 Oct 2021 21:25:42 GMT):
Hi @ThomasTeo what options did you select? Besu -> Privacy -> ELK ?

bgravenorst (Sun, 17 Oct 2021 22:59:33 GMT):
Hi, do you want to run a customised Besu docker image? Otherwise, instructions to run Besu using Docker can be found here: https://besu.hyperledger.org/en/latest/HowTo/Get-Started/Installation-Options/Run-Docker-Image/ You can also run the development version by replacing `latest` with `develop`

bgravenorst (Sun, 17 Oct 2021 23:28:45 GMT):
I'm able to replicate this behaviour. Are you able to run using the Docker image? Alethio isn't currently under active maintenance.

macfarla (Mon, 18 Oct 2021 00:59:21 GMT):
You raise a good point @Librechain - I don't think there's a good reason for this restriction. In theory, we can support whatever algorithms the JWT spec and Vertx can support. Would you create a GitHub issue for this and we can see where it fits in terms of priorities!

lfklupp (Mon, 18 Oct 2021 03:15:52 GMT):
Has joined the channel.

John.Greenan (Mon, 18 Oct 2021 04:38:47 GMT):
Has joined the channel.

Bhawikchawda (Mon, 18 Oct 2021 05:22:57 GMT):
yes, with docker i am running it successfully but not with node js

Bhawikchawda (Mon, 18 Oct 2021 05:32:10 GMT):

Screenshot 2021-10-18 at 11.00.43 AM.png

Bhawikchawda (Mon, 18 Oct 2021 05:32:10 GMT):

Screenshot 2021-10-18 at 11.00.43 AM.png

Bhawikchawda (Mon, 18 Oct 2021 05:32:10 GMT):

Screenshot 2021-10-18 at 11.00.43 AM.png

indong (Mon, 18 Oct 2021 06:08:00 GMT):
Has joined the channel.

starjara (Mon, 18 Oct 2021 08:10:16 GMT):
Has joined the channel.

lev_jac (Mon, 18 Oct 2021 09:50:26 GMT):
Has joined the channel.

Bhawikchawda (Mon, 18 Oct 2021 10:00:46 GMT):
Hello, How to add a new node in besu ?

ThomasTeo (Mon, 18 Oct 2021 12:27:44 GMT):
I followed exactly to the guide. I chose Besu and followed by - "N" for Codefi Orchestrate - "Y" for Private Transactions - "3" for ELK thanks

damianlluch (Mon, 18 Oct 2021 14:36:10 GMT):
Hello! Anyone who works with Hyperledger Besu? What is the best alternative to use as a block explorer? I have 4 nodes on two AWS instances working perfectly, and I would like to add the block explorer, I have seen several on github. And I have also seen blockscout on AWS which is available to deploy on one instance. Now, reviewing the blockskout documentation for manual deployment, I see it complicated, I think the documentation is not clear. Any other option? any clear blockskout tutorial? thanks

hossein.namazian (Mon, 18 Oct 2021 15:30:32 GMT):
Has joined the channel.

joshuafernandes (Mon, 18 Oct 2021 21:35:00 GMT):
Hi @Bhawikchawda Have you sent any transactions to the network? If you use the privacy examples that will send a few across. An uncle /ommer is a block that is orphaned becuase its not on the same longest chain - in the above your network doesn't have any - this is a good thing

joshuafernandes (Mon, 18 Oct 2021 21:37:08 GMT):
https://github.com/web3labs/epirus-free is an alternative. Blockscout is easy enough to deploy but is quite heavy on the RPC calls because of a lack of support for ws. Ultimately I think it depends on what would you like the blockexplorer to do - each has pros/cons

joshuafernandes (Mon, 18 Oct 2021 21:37:08 GMT):
https://github.com/web3labs/epirus-free is an alternative. Blockscout is easy enough to deploy but is quite heavy on the RPC calls so use the ws. Ultimately I think it depends on what would you like the blockexplorer to do - each has pros/cons

joshuafernandes (Mon, 18 Oct 2021 21:39:55 GMT):
Can you confirm you've raised memory for docker to cater for ELK please?

joshuafernandes (Mon, 18 Oct 2021 21:40:44 GMT):

Clipboard - October 19, 2021 7:40 AM

joshuafernandes (Mon, 18 Oct 2021 21:41:05 GMT):

Clipboard - October 19, 2021 7:41 AM

joshuafernandes (Mon, 18 Oct 2021 21:42:30 GMT):
https://besu.hyperledger.org/en/latest/Tutorials/Private-Network/Create-IBFT-Network/#7-start-node-2 Hi @Bhawikchawda the new node just needs the same genesis file and access to the bootnodes

joshuafernandes (Mon, 18 Oct 2021 21:43:14 GMT):

Clipboard - October 19, 2021 7:43 AM

joshuafernandes (Mon, 18 Oct 2021 21:49:43 GMT):
The docker deployment is the easiest of the lot and you connect to a load balancer https://docs.blockscout.com/for-developers/information-and-settings/docker-integration-local-use-only

lawrenceabeyta (Mon, 18 Oct 2021 21:53:11 GMT):
Has joined the channel.

Vanderscycle (Mon, 18 Oct 2021 22:30:20 GMT):
Has joined the channel.

macfarla (Tue, 19 Oct 2021 00:37:53 GMT):
For IBFT2, QBFT, Clique and ethash, besu creates blocks even without transactions being submitted. You can increase the timing so that there's more time between blocks but you can't stop Besu from creating empty blocks.

multijik (Tue, 19 Oct 2021 03:18:18 GMT):
Has joined the channel.

pattycode (Tue, 19 Oct 2021 05:03:11 GMT):
Has joined the channel.

Bhawikchawda (Tue, 19 Oct 2021 05:06:23 GMT):
Yes, I have done dozens of transaction but dont know why explorer is showing 0 transaction.

Bhawikchawda (Tue, 19 Oct 2021 05:14:28 GMT):
Thanks @macfarla, I got my answer.

Bhawikchawda (Tue, 19 Oct 2021 05:21:24 GMT):
https://besu.hyperledger.org/en/stable/Tutorials/Examples/Private-Network-Example/ I am following this tutorial. So, can you guide me how to add new node in this ? Thanks

Bhawikchawda (Tue, 19 Oct 2021 05:21:24 GMT):
https://besu.hyperledger.org/en/stable/Tutorials/Examples/Private-Network-Example/ I am following this tutorial. So, can you guide me how to add new node in this ? Thanks

indongkim (Tue, 19 Oct 2021 06:29:53 GMT):
Has joined the channel.

amitchandra01 (Tue, 19 Oct 2021 08:08:24 GMT):
Has joined the channel.

mateokurti (Tue, 19 Oct 2021 08:41:26 GMT):
Has joined the channel.

Luis_Manuel_Cortes_Tirado (Tue, 19 Oct 2021 10:43:46 GMT):
Has joined the channel.

EliasKim (Tue, 19 Oct 2021 13:57:36 GMT):
Has joined the channel.

david.liu (Tue, 19 Oct 2021 16:47:32 GMT):
Has joined the channel.

joshuafernandes (Tue, 19 Oct 2021 22:15:33 GMT):
Hi @Bhawikchawda so how far have you got ie is your network up? In general to add a node you need : 1. the new node to have the same genesis file as the existing network 2. be able to connect to the bootnodes & as many other nodes as possible. 3. If you use permissions then you need to add the new node's enode to the permissions file of every existing node

joshuafernandes (Tue, 19 Oct 2021 22:21:58 GMT):
So with the quickstart you have permissions being used and you have a couple of options to go: - run another container standalone via `docker run -d network=quorum-dev-quickstart -p -v ./loca/path/to/genesis:/config/genesis.json hyperledger/besu:latest --genesis /config/genesis.json --rpc --bootnodes= --p2p-port=30304 --rpc-http-enabled --rpc-http-api=ETH,NET,IBFT --host-allowlist="*" --rpc-http-cors-origins="all" --rpc-http-port=8546` Alter the list of commands to suit and put in the bootnode enodes and you need to mount the genesis.json file

joshuafernandes (Tue, 19 Oct 2021 22:21:58 GMT):
So with the quickstart you have permissions being used and you have a couple of options to go: 1. Run another container standalone via `docker run -d network=quorum-dev-quickstart -p -v ./loca/path/to/genesis:/config/genesis.json hyperledger/besu:latest --genesis /config/genesis.json --rpc --bootnodes= --p2p-port=30304 --rpc-http-enabled --rpc-http-api=ETH,NET,IBFT --host-allowlist="*" --rpc-http-cors-origins="all" --rpc-http-port=8546` Alter the list of commands to suit and put in the bootnode enodes and you need to mount the genesis.json file

joshuafernandes (Tue, 19 Oct 2021 22:25:01 GMT):
In the logs for this node, you will get an enode which you now need to update all the existing nodes with either by adding it to the permissions file https://github.com/ConsenSys/quorum-dev-quickstart/blob/master/files/besu/config/besu/permissions_config.toml . This file should be in the config directory of where you do the ./run.sh command from. Once added you need to restart all the existing nodes

joshuafernandes (Tue, 19 Oct 2021 22:26:03 GMT):
Alternatively instead of restarting make an API call to each node via https://besu.hyperledger.org/en/latest/Reference/API-Methods/#perm_addnodestoallowlist

joshuafernandes (Tue, 19 Oct 2021 22:33:36 GMT):
2. Create another node similar to the rpcnode (https://github.com/ConsenSys/quorum-dev-quickstart/blob/master/templates/besu/docker-compose.yml#L423) in the compose file itself and give it a known set of keys (https://github.com/ConsenSys/quorum-dev-quickstart/tree/master/files/common/config/nodes) and a known IP. Add the enode to the permissions file https://github.com/ConsenSys/quorum-dev-quickstart/blob/master/files/besu/config/besu/permissions_config.toml and restart the docker-compose file This is the simpler of the two. In real networks, the former is generally done

OsamaAzmy (Tue, 19 Oct 2021 22:48:03 GMT):
Has joined the channel.

ralvarezalvarez (Wed, 20 Oct 2021 03:25:43 GMT):
Has joined the channel.

subin8899 (Wed, 20 Oct 2021 04:34:00 GMT):
Has joined the channel.

nbAmit (Wed, 20 Oct 2021 04:52:25 GMT):
Has joined the channel.

DarshilPatel (Wed, 20 Oct 2021 11:19:50 GMT):
Has joined the channel.

deepakgerawipro (Wed, 20 Oct 2021 12:13:08 GMT):
Has joined the channel.

webspeller (Wed, 20 Oct 2021 19:44:54 GMT):
Has joined the channel.

alieghmazi (Wed, 20 Oct 2021 21:07:41 GMT):
Has joined the channel.

jason_jaan (Wed, 20 Oct 2021 22:54:52 GMT):
Has joined the channel.

leonfrank (Thu, 21 Oct 2021 07:24:13 GMT):
Has joined the channel.

tpluck (Thu, 21 Oct 2021 07:56:07 GMT):
Has joined the channel.

garthr (Thu, 21 Oct 2021 08:34:40 GMT):
Has joined the channel.

garthr (Thu, 21 Oct 2021 08:36:22 GMT):
hi all, I was wondering if CODEFI Assets (https://github.com/ConsenSys/UniversalToken) runs on Hyperledger Besu

garthr (Thu, 21 Oct 2021 08:36:29 GMT):
can anyone assist?

garthr (Thu, 21 Oct 2021 08:36:33 GMT):
new to all this :)

CristianLorenzetto (Thu, 21 Oct 2021 09:43:33 GMT):
hi

CristianLorenzetto (Thu, 21 Oct 2021 09:43:59 GMT):
how can i integrate sovrin framework in besu ?

sjana0 (Thu, 21 Oct 2021 10:34:40 GMT):
Has joined the channel.

outsidethecode (Thu, 21 Oct 2021 13:20:11 GMT):
Has joined the channel.

weihong.ou (Thu, 21 Oct 2021 18:00:10 GMT):
Has joined the channel.

lukasgem (Thu, 21 Oct 2021 20:46:16 GMT):
Has joined the channel.

cvarjao (Thu, 21 Oct 2021 22:24:45 GMT):
Has joined the channel.

macfarla (Thu, 21 Oct 2021 23:12:17 GMT):
You can definitely run the Codefi UniversalToken on Besu!

macfarla (Thu, 21 Oct 2021 23:13:32 GMT):
if it runs on ethereum it can run on besu :)

sfiguereo (Fri, 22 Oct 2021 01:11:55 GMT):
Has joined the channel.

andra1996 (Fri, 22 Oct 2021 08:25:46 GMT):
Has joined the channel.

NikunjPurohit (Fri, 22 Oct 2021 13:47:05 GMT):
Has joined the channel.

khamdb (Fri, 22 Oct 2021 13:47:56 GMT):
Has joined the channel.

NikunjPurohit (Fri, 22 Oct 2021 13:48:31 GMT):
Hi all, Is there a way to set the minimum number of transactions for a block in besu? I am using the IBFT 2.0 protocol and there are a lot of empty blocks that are created when are no transactions on the network!

NikunjPurohit (Fri, 22 Oct 2021 13:48:50 GMT):
They use too much space and I would like to make it more efficient

GeluUngur (Fri, 22 Oct 2021 18:05:31 GMT):
Has joined the channel.

acantrell (Fri, 22 Oct 2021 19:12:44 GMT):
Has joined the channel.

palacios (Fri, 22 Oct 2021 19:48:36 GMT):
Has joined the channel.

BrianBauska (Sat, 23 Oct 2021 05:16:31 GMT):
Has joined the channel.

marchelbudi.k (Sat, 23 Oct 2021 05:47:39 GMT):
Has joined the channel.

marchelbudi.k (Sat, 23 Oct 2021 05:55:04 GMT):
Hi all, how do you allow metamask to interact with the network with the rpc-http-cors-origin option other than using "all" or "*". metamask was not able to connect to the network since i made rpc-http-cors-origins=["https://remix.ethereum.org"] instead of using "*"

marchelbudi.k (Sat, 23 Oct 2021 05:55:04 GMT):
Hi all, how do you allow metamask to interact with the network with the rpc-http-cors-origin option other than using "all" or "*". metamask was not able to connect to the network since i made rpc-http-cors-origins=["https://remix.ethereum.org"] instead of using "all"

marchelbudi.k (Sat, 23 Oct 2021 05:55:04 GMT):
Hi all, how do you allow metamask to interact with a private network with the rpc-http-cors-origin option other than using "all" or "*". metamask was not able to connect to the network since i made rpc-http-cors-origins=["https://remix.ethereum.org"] instead of using "all". i am now using the quorum quickstart network and changing the cors origin configuration in the configuration.toml

KiranLakhotia (Sat, 23 Oct 2021 08:49:55 GMT):
Has joined the channel.

webzest (Sat, 23 Oct 2021 12:29:03 GMT):
Has joined the channel.

jrojek (Sun, 24 Oct 2021 05:27:44 GMT):
Has joined the channel.

jrd10 (Sun, 24 Oct 2021 06:04:32 GMT):
Has joined the channel.

lincyaw (Sun, 24 Oct 2021 08:03:37 GMT):
Has joined the channel.

amankr1619 (Sun, 24 Oct 2021 20:21:37 GMT):
Has joined the channel.

madelinemurray (Sun, 24 Oct 2021 22:16:07 GMT):
hi @NikunjPurohit - not at this stage. This is a possible future enhancement for QBFT.

macfarla (Sun, 24 Oct 2021 23:41:33 GMT):
Adding `https://remix.ethereum.org` would allow you to use remix with your besu node. Are you trying to use remix, or metamask? Or both? To allow a client to connect via metamask, you need to add the client domain https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#rpc-http-cors-origins

marchelbudi.k (Mon, 25 Oct 2021 04:22:29 GMT):
Right now I am trying to use both metamask and remix as I want to allow remix to interact to the network through metamask. the problem that i encounter is that im not sure for what the client domain is for metamask. I tried adding the url extension `chrome-extension://nkbihfbeogaeaoehlefnkodbefgpgknn` however its still not working for me

marchelbudi.k (Mon, 25 Oct 2021 04:22:29 GMT):
Right now I am trying to use both metamask and remix as I want to allow remix to interact to the network through metamask. the problem that i encounter is that im not sure for what the client domain is for metamask. I tried adding the url extension `chrome-extension://nkbihfbeogaeaoehlefnkodbefgpgknn` however its still not working for me

marchelbudi.k (Mon, 25 Oct 2021 04:22:29 GMT):
Hi @macfarla, right now I am trying to use both metamask and remix as I want to allow remix to interact to the network through metamask. the problem that i encounter is that im not sure for what the client domain is for metamask. I tried adding the url extension `chrome-extension://nkbihfbeogaeaoehlefnkodbefgpgknn` however its still not working for me

marchelbudi.k (Mon, 25 Oct 2021 04:22:29 GMT):
Hi @macfarla, right now I am trying to use both metamask and remix as I want to allow remix to interact to the network through metamask. the problem that i encounter is that im not sure for what the client domain is for metamask. I tried adding the url extension `chrome-extension://nkbihfbeogaeaoehlefnkodbefgpgknn` based on this https://metamask.zendesk.com/hc/en-us/articles/360015290012-Using-a-Local-Node however its still not working for me

JorgeLuisAcosta (Mon, 25 Oct 2021 07:00:46 GMT):
Has joined the channel.

dovanan95 (Mon, 25 Oct 2021 08:26:33 GMT):
Has joined the channel.

Bhawikchawda (Mon, 25 Oct 2021 10:01:51 GMT):
Hello @NikunjPurohit Have a look on this: https://besu.hyperledger.org/en/1.3.5/HowTo/Configure/Consensus-Protocols/IBFT/

Bhawikchawda (Mon, 25 Oct 2021 10:01:51 GMT):
Hello @NikunjPurohit Have a look on this: https://besu.hyperledger.org/en/1.3.5/HowTo/Configure/Consensus-Protocols/IBFT/ There is one property in genesis file i.e blockperiodsecond.

Bhawikchawda (Mon, 25 Oct 2021 10:01:51 GMT):
Hello @NikunjPurohit Have a look on this: https://besu.hyperledger.org/en/1.3.5/HowTo/Configure/Consensus-Protocols/IBFT/ There is one property in genesis file i.e blockperiodseconds.

AtlasSMT (Mon, 25 Oct 2021 10:11:08 GMT):
Has joined the channel.

Bhawikchawda (Mon, 25 Oct 2021 10:43:44 GMT):
hello @joshuafernandes, docker run -d network=quorum-dev-quickstart -p -v ./loca/path/to/genesis:/config/genesis.json hyperledger/besu:latest --genesis /config/genesis.json --rpc --bootnodes= --p2p-port=30304 --rpc-http-enabled --rpc-http-api=ETH,NET,IBFT --host-allowlist="*" --rpc-http-cors-origins="all" --rpc-http-port=8546 I am getting this as error: Invalid reference format.

shadiayoub (Mon, 25 Oct 2021 11:24:53 GMT):
Has joined the channel.

shadiayoub (Mon, 25 Oct 2021 11:29:53 GMT):
Hello, all... I created 4 nodes on 2 servers.. First server is Bootnode and node2. The second server (2 nodes) connects to the bootnode smoothly. But the "peers" count are: Bootnode: 3 peers, node2: 1 peer, node3: 2 peers, node4: 2 peers. What am I doing incorrectly? Shouldn't it show 4 peers for all nodes?

joshuafernandes (Mon, 25 Oct 2021 11:49:39 GMT):
Hi @Bhawikchawda can you confirm that you have a genesis file at `./local/path/to/genesis.json` - you need to provide the relative path to the genesis file here. https://besu.hyperledger.org/en/latest/Reference/CLI/CLI-Syntax/#genesis-file Also `--bootnodes=` needs to the actual enodes ie enode://abcd......@w.x.y.z:30303 https://besu.hyperledger.org/en/latest/Reference/CLI/CLI-Syntax/#bootnodes

joshuafernandes (Mon, 25 Oct 2021 11:51:31 GMT):
Have a look in the compose file how we configure the nodes. https://besu.hyperledger.org/en/latest/HowTo/Configure/Using-Configuration-File/ We use a config file `config.toml` and cli args are sometimes added depending on the type of node

joshuafernandes (Mon, 25 Oct 2021 11:56:27 GMT):
They should show 3 for all of them if peered right ( total - self). Generally they will get to 3 in time after they gossip for a while. Sometimes its depends on how they've been started ie if they all come up at the same time node 3 may not see node 4 from the bootnodes, I'd suggest bringing up them up in sequence and waiting 30s in between for them to communicate and start. ie bootnode first -> node 1 -> node 2 and so on. With each successive node that joins the bootnode will report them as peers to the next joining node

shadiayoub (Mon, 25 Oct 2021 11:58:09 GMT):
Thanks for response.. OK, I will wait a while. I started them as shown in the setup guide. Will update here in both cases.

shadiayoub (Mon, 25 Oct 2021 12:13:16 GMT):
How can I know which peers I am connected to?

Bhawikchawda (Mon, 25 Oct 2021 12:30:21 GMT):
Hello, How can i run my config.toml file through docker?

Bhawikchawda (Mon, 25 Oct 2021 12:37:03 GMT):
Can i simply use config.toml file to run node in docker, if yes then how? Thanks :innocent:

joshuafernandes (Mon, 25 Oct 2021 13:16:17 GMT):
https://besu.hyperledger.org/en/latest/Reference/API-Methods/#admin_peers

joshuafernandes (Mon, 25 Oct 2021 13:18:12 GMT):
You can mount it to a volume and then call besu an pass it the path. Its what we do for all the nodes in the quickstart. Please have a look at https://www.npmjs.com/package/quorum-dev-quickstart

joshuafernandes (Mon, 25 Oct 2021 13:19:40 GMT):
https://github.com/ConsenSys/quorum-dev-quickstart/blob/master/templates/besu/docker-compose.yml#L370

joshuafernandes (Mon, 25 Oct 2021 13:30:48 GMT):
Yep, sure can https://chat.hyperledger.org/channel/besu?msg=ZrJPpCvyGSCtgH2tL

joshuafernandes (Mon, 25 Oct 2021 13:31:17 GMT):
https://chat.hyperledger.org/channel/besu?msg=QmaNGHTDd8g3aHoRy

jean-claudedalot (Mon, 25 Oct 2021 13:50:08 GMT):
Has joined the channel.

flaviocal (Mon, 25 Oct 2021 14:24:36 GMT):
Has joined the channel.

spunkymandar (Mon, 25 Oct 2021 16:50:38 GMT):
Has joined the channel.

dmimaz (Mon, 25 Oct 2021 17:36:09 GMT):
Has joined the channel.

macfarla (Tue, 26 Oct 2021 01:31:24 GMT):
I've just created a ticket to clarify the requirements for this scenario since I'm not sure of the answer off the top of my head. https://github.com/hyperledger/besu/issues/2949

Tenno (Tue, 26 Oct 2021 03:42:20 GMT):
Has joined the channel.

madelinemurray (Tue, 26 Oct 2021 04:10:28 GMT):
Welcome to the new members :-) Let us know if you've got any questions about getting started with Hyperledger Besu.

macfarla (Tue, 26 Oct 2021 04:12:54 GMT):
:wave: The quickstart is a good place to start!

Bhawikchawda (Tue, 26 Oct 2021 07:11:23 GMT):
Hello @joshuafernandes , sudo docker run -p 8549:8549 hyperledger/besu:latest --config-file=/config/besu/myconfig.toml I am executing above command but it always gives me an error that file not found, however i have checked thousand of time to ensure that file path is correct and its absolutely correct here. can you guide what may be the issue here? Thanks

kamalraj2000 (Tue, 26 Oct 2021 07:17:43 GMT):
Has joined the channel.

dheerajbudhiraja (Tue, 26 Oct 2021 08:09:02 GMT):
Has joined the channel.

damianlluch (Tue, 26 Oct 2021 09:33:32 GMT):
Hi, to change the block generation time of a project that is already started, I should just stop the nodes and change the blockperiodseconds value in the genesis file and run the nodes again, right? thanks

Bhawikchawda (Tue, 26 Oct 2021 10:51:44 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=MopdsLmNxfdv4ut4F) You should resume the network if you dont want any data loss.

Bhawikchawda (Tue, 26 Oct 2021 10:53:13 GMT):
You should resume the network if you dont want any data loss.

shadiayoub (Tue, 26 Oct 2021 11:33:15 GMT):
Hello... To start a boot node we start it like node-1 in the guide? Would it recognize the other nodes in this way? Else, how do we setup additional bootnodes? Because from I get, we do not provide the other enode id when we start a boot node ...

shadiayoub (Tue, 26 Oct 2021 11:33:15 GMT):
Hello... To start a boot node we start it like node-1 in the guide? Would it recognize the other nodes in this way? Else, how do we setup additional bootnodes? Because from I get, we do not provide the other enode id when we start a boot node ... Or what the answer to this:

shadiayoub (Tue, 26 Oct 2021 11:33:15 GMT):
Hello... To start a boot node we start it like node-1 in the guide? Would it recognize the other nodes in this way? Else, how do we setup additional bootnodes? Because from I get, we do not provide the other enode id when we start a boot node ... Or what's the answer to this: what defines a boot node.?

shadiayoub (Tue, 26 Oct 2021 11:49:26 GMT):
Thanks!!

shadiayoub (Tue, 26 Oct 2021 11:57:48 GMT):
I think it runs on port 25000 by default.

shadiayoub (Tue, 26 Oct 2021 13:28:48 GMT):
Thanks @joshuafernandes ... I setup a vpc with a private and a public network, and put nodes in both. Private nodes connect with just the public node, and the public is open to the Internet.

shadiayoub (Tue, 26 Oct 2021 17:19:19 GMT):
Aahh.. It's the bootnodes file.. Thanks, and please correct me if that's wrong.

artemgorev (Tue, 26 Oct 2021 18:18:08 GMT):
Has joined the channel.

trilawney (Tue, 26 Oct 2021 19:08:54 GMT):
Has joined the channel.

tomaspozo (Tue, 26 Oct 2021 21:55:29 GMT):
Has joined the channel.

joshuafernandes (Tue, 26 Oct 2021 22:10:38 GMT):
Nice work @shadiayoub! on the public node would also recommend setting the CIDR to allow traffic to your IP only and not the world else you could get a bunch of unneeded reqs come through. ie open 8545 etc to your IP instead of 0.0.0.0/0

joshuafernandes (Tue, 26 Oct 2021 22:12:28 GMT):
Yep @damianlluch , normally do one validator at a time in a rolling restart manner (what we do for updates to Besu versions). This keeps the network live and producing blocks and doesn't take it down.

joshuafernandes (Tue, 26 Oct 2021 22:17:21 GMT):
Yep, that makes sense. How do you mount the genesis file in the above command? ie the file may exist locally on your machine but how does it get into the container. Refer to https://docs.docker.com/storage/volumes/ . In the command above I gave you ` -v ./loca/path/to/genesis.json:/config/genesis.json` did that and you need to edit the path as per your setup

Eric.Lin (Tue, 26 Oct 2021 23:27:04 GMT):
Has joined the channel.

macfarla (Wed, 27 Oct 2021 01:12:44 GMT):
yeah you got it - there's nothing about the node itself that makes it a bootnode, it's that other nodes have it in their bootnodes file

lyc9702 (Wed, 27 Oct 2021 06:36:20 GMT):
Has joined the channel.

shadiayoub (Wed, 27 Oct 2021 07:51:02 GMT):
Thanks!

shadiayoub (Wed, 27 Oct 2021 07:55:12 GMT):
In fact, it says in the documentations that: blocktime is one of the attributes that cannot be changed after starting a network. So I believe you'll need to restart it as a new network after you change blocktime. "The blockperiodseconds, blockreward, and miningbeneficiary properties cannot be updated once your network is started." https://besu.hyperledger.org/en/stable/HowTo/Configure/Consensus-Protocols/IBFT/#genesis-file

Ferdinand.wittmann (Wed, 27 Oct 2021 09:39:25 GMT):
Has joined the channel.

MontassarNAGHMOUCHI (Wed, 27 Oct 2021 11:35:53 GMT):
Has joined the channel.

viktor.pulyak (Wed, 27 Oct 2021 15:31:36 GMT):
Has joined the channel.

rolandw (Wed, 27 Oct 2021 17:09:36 GMT):
Has joined the channel.

shadiayoub (Wed, 27 Oct 2021 20:51:35 GMT):
Hello Is there a way to produce the accountkey file content from the public/private keys for a node? I am referring to the files in /config/nodes folder in the quickstart after running the setup. I want to use the quickstart to create a network what does not use the default keys for nodes.

shadiayoub (Wed, 27 Oct 2021 20:54:51 GMT):
Thanks @joshuafernandes :) Yeah, on the public node's private interface, there has to be a rule to allow certain ports from specific ip's. Thanks for the addition.

joshuafernandes (Wed, 27 Oct 2021 21:55:05 GMT):
Yes I've added a script in the `extra` folder which you can use, docs should be up in a couple of days

joshuafernandes (Wed, 27 Oct 2021 21:55:05 GMT):
Yes I've added a script in the `extra` folder which you can use, docs should be up in a couple of days https://github.com/ConsenSys/quorum-dev-quickstart/blob/master/files/common/extra/generate_node_details.js

joshuafernandes (Wed, 27 Oct 2021 21:55:41 GMT):
You'll likely need to get the latest version of the quickstart 0.0.41 I think which has this functionality

joshuafernandes (Wed, 27 Oct 2021 21:59:10 GMT):
The accountkey specifically is only needed for goQuorum - Besu doesn't do account management so you'll need to use something like ethsigner https://docs.ethsigner.consensys.net/en/latest/Tutorials/Start-EthSigner/ or QKM https://github.com/ConsenSys/quorum-key-manager

joshuafernandes (Wed, 27 Oct 2021 22:01:20 GMT):
:thumbsup:

shadiayoub (Wed, 27 Oct 2021 22:12:57 GMT):
Thank you very much!

joshuafernandes (Thu, 28 Oct 2021 04:25:29 GMT):
It shows the transactions for the block from memory, if you know the hash of the block enter that in the search bar and it'll pop open the block view which details all txns in there

joshuafernandes (Thu, 28 Oct 2021 04:25:49 GMT):
Same for a txn - you can search by txn hash

Jotenks (Thu, 28 Oct 2021 10:16:27 GMT):
Has joined the channel.

important (Thu, 28 Oct 2021 11:05:10 GMT):
Has joined the channel.

shadiayoub (Thu, 28 Oct 2021 11:06:57 GMT):
What is a recommended approach to use Quickstart for setting up a network on two computers? So the second setup should use the first node as a bootnode.

yukesong (Thu, 28 Oct 2021 12:20:46 GMT):
Has joined the channel.

SuzanaMaranhao (Thu, 28 Oct 2021 13:11:13 GMT):
Hello, is it possible to change the duration of block generation after starting the network? Will it work if all nodes update the genesis file?

shadiayoub (Thu, 28 Oct 2021 14:11:36 GMT):
I believe you will need to restart as a new network in case of changing blocktime.

shadiayoub (Thu, 28 Oct 2021 14:16:23 GMT):
This is a caution from Besu's website: The blockperiodseconds, blockreward, and miningbeneficiary properties cannot be updated once your network is started. https://besu.hyperledger.org/en/stable/HowTo/Configure/Consensus-Protocols/IBFT/#genesis-file

Acarcan (Thu, 28 Oct 2021 14:17:47 GMT):
Has joined the channel.

AlessandroPagliaro (Thu, 28 Oct 2021 15:06:02 GMT):
Has joined the channel.

Mellywins (Thu, 28 Oct 2021 15:28:18 GMT):
Has joined the channel.

TaylorBelk1 (Thu, 28 Oct 2021 16:57:52 GMT):
Has joined the channel.

SuzanaMaranhao (Thu, 28 Oct 2021 18:20:46 GMT):
Hello, a very basic question: How to do a backup in my Besu node? I know one possibility would be to have another node in my institution. But, if I want to store this backup offline, together with other storages, should I only copy the block files? Is it common to do that?

macfarla (Thu, 28 Oct 2021 19:58:36 GMT):
It's basically the data-path dir - does this page help at all? https://besu.hyperledger.org/en/stable/HowTo/Backup/Backup/#data-backups

chadmott (Thu, 28 Oct 2021 20:49:49 GMT):
Has joined the channel.

SuzanaMaranhao (Thu, 28 Oct 2021 21:01:29 GMT):
yes, thank you

KaranKulwal (Fri, 29 Oct 2021 05:07:15 GMT):
Has joined the channel.

hblockchain (Fri, 29 Oct 2021 05:50:01 GMT):
Has joined the channel.

BabitaBisht1 (Fri, 29 Oct 2021 07:54:34 GMT):
Has joined the channel.

MikaLammi (Fri, 29 Oct 2021 08:01:00 GMT):
Has joined the channel.

BabitaBisht1 (Fri, 29 Oct 2021 08:20:03 GMT):
Hi all, I am creating ibft2.0 based private besu network with 4 nodes, the network is working fine but am not able to access the node (neither from host machine nor from inside the same container) getting the error - 'Host not authorized' . I have already provided 'BESU_HOST_WHITELIST="*"' env variabel in all the containers, still the issue is same.

iffathossain (Fri, 29 Oct 2021 09:56:08 GMT):
Can you share the command that you used to start the nodes?

iffathossain (Fri, 29 Oct 2021 09:56:22 GMT):
What is the EVM version of besu?

BabitaBisht1 (Fri, 29 Oct 2021 09:57:18 GMT):
I am using docker-compose, this is configuration of one of the node - version: "3" services: Node-1: image: 'hyperledger/besu:latest' environment: - BESU_DATA_PATH=data - BESU_GENESIS_FILE=data/genesis/genesis.json - BESU_RPC_HTTP_ENABLED=true - BESU_RPC_HTTP_API=ETH,NET,IBFT,WEB3 - BESU_HOST_ALLOWLIST="*" - BESU_RPC_HTTP_CORS_ORIGINS="all" - BESU_P2P_PORT=30303 - BESU_HOST_WHITELIST="*" ports: - "8545:8545" working_dir: /opt/besu volumes: - ./genesis:/opt/besu/data/genesis - ./Node-1/data/:/opt/besu/data container_name: node_1 networks: besu: ipv4_address: 172.16.1.2 restart: always

marcus.schoeller (Fri, 29 Oct 2021 10:17:04 GMT):
Has joined the channel.

hailx (Fri, 29 Oct 2021 12:59:32 GMT):
Has joined the channel.

Natinasss (Fri, 29 Oct 2021 13:07:38 GMT):
Has joined the channel.

shemnon (Fri, 29 Oct 2021 13:40:53 GMT):
Besu's EVM supports all of the Mainnet forks and all of the Classic forks. So London is probably the answer you are looking for.

RajeshNavagare (Fri, 29 Oct 2021 16:39:54 GMT):
Has joined the channel.

deoalade (Fri, 29 Oct 2021 17:16:53 GMT):
Has joined the channel.

shadiayoub (Fri, 29 Oct 2021 17:42:10 GMT):
How can I set the quickstart to use IBFT instead of QBFT?

omago123 (Sat, 30 Oct 2021 06:56:59 GMT):
Has joined the channel.

Kazuya.N (Sat, 30 Oct 2021 07:31:27 GMT):
Has joined the channel.

efrain (Sat, 30 Oct 2021 09:28:40 GMT):
Has joined the channel.

edouardfrance (Sat, 30 Oct 2021 14:40:05 GMT):
Has joined the channel.

Santiagotwm99 (Sat, 30 Oct 2021 21:18:54 GMT):
Has joined the channel.

JeremyChou0314 (Sun, 31 Oct 2021 11:12:35 GMT):
Has joined the channel.

tleonard1941 (Sun, 31 Oct 2021 17:06:14 GMT):
Has joined the channel.

macfarla (Mon, 01 Nov 2021 01:44:18 GMT):
where are you getting the 'Host not authorized' - eg are you trying to send an RPC call?

macfarla (Mon, 01 Nov 2021 01:45:02 GMT):
also you don't need both BESU_HOST_ALLOWLIST and BESU_HOST_ALLOWLIST - they are aliases for the same option. you can just use BESU_HOST_ALLOWLIST

macfarla (Mon, 01 Nov 2021 02:03:01 GMT):
BESU_CONS_ALGO here -> https://github.com/ConsenSys/quorum-dev-quickstart/blob/e537dfff19beb16eaeec99656a342bcbe06fbbd7/files/common/.env

macfarla (Mon, 01 Nov 2021 02:05:41 GMT):
Welcome new members 🙂 Let us know if you've got any questions about getting started with Hyperledger Besu. The quickstart is a good place to start!

rohan333 (Mon, 01 Nov 2021 03:55:24 GMT):
Has joined the channel.

macfarla (Mon, 01 Nov 2021 07:49:15 GMT):
New issue: https://github.com/hyperledger/besu/issues/2981

shadiayoub (Mon, 01 Nov 2021 10:01:36 GMT):
Thanks a lot

szbalazs (Mon, 01 Nov 2021 11:12:11 GMT):
Has joined the channel.

pperez (Mon, 01 Nov 2021 11:23:58 GMT):
Has joined the channel.

pperez (Mon, 01 Nov 2021 11:26:33 GMT):
Cheers! I was wondering if there was a OpenAPI / Swagger file for the Hyperledger Besu API. I wasn't able to find one. Thanks in advance!

andreolf1 (Mon, 01 Nov 2021 14:05:51 GMT):
Welcome everybody!

keithyweethy (Mon, 01 Nov 2021 16:52:11 GMT):
Has joined the channel.

keithyweethy (Mon, 01 Nov 2021 16:52:18 GMT):
good day all!

keithyweethy (Mon, 01 Nov 2021 16:53:06 GMT):
I currently have an application I've built on besu private instance, and I was curious if anyone has explored with taking a private (or public) besu project and attempted a bridge to polygon yet.

keithyweethy (Mon, 01 Nov 2021 16:53:15 GMT):
WOuld anyone be open to helping me spec this out?

shadiayoub (Mon, 01 Nov 2021 17:25:20 GMT):
Hello... I would start by looking for existing Ethereum to Polygon bridges and take it from there...

shadiayoub (Mon, 01 Nov 2021 17:49:26 GMT):
When we change the nodes key files in quickstart, we still have to update the extradata in genesis file, correct? Given that we update all the related files that contain the enodes.

shadiayoub (Mon, 01 Nov 2021 17:49:26 GMT):
When we change the nodes keys and use quickstart, we still have to update the extradata in genesis file, correct? Given that we update all the related files that contain the enodes.

shadiayoub (Mon, 01 Nov 2021 17:49:26 GMT):
What are the correct steps to using QuickStart with new keys, please? 1. Generate keys 2. Update enode addresses in relevant files. 3. Export code for 'extradata' field in Genesis. Network is still not coming up. Explorer shows -1

SuzanaMaranhao (Mon, 01 Nov 2021 20:06:46 GMT):
We have a permissioned network in operation for 1 year in contantinopleFixBlock. I am trying to discover for what hard fork should I upgrade. I have seen that https://eips.ethereum.org/meta contains a list of hardforks. Looking to this site, I concluded that I should go to Hardfork Meta: Muir Glacier (It is the last one in Final category). Berlim still appears as Draft. What is the best link to provide me with info to decide the protocol upgrade of a Besu network?

shemnon (Mon, 01 Nov 2021 20:20:03 GMT):
London.

SuzanaMaranhao (Mon, 01 Nov 2021 20:22:49 GMT):
Thanks, @shemnon. Is there a site with the list of all hardforks and their starting block?

shemnon (Mon, 01 Nov 2021 20:24:26 GMT):
https://github.com/ethereum/execution-specs#ethereum-protocol-releases

SuzanaMaranhao (Mon, 01 Nov 2021 20:37:29 GMT):
That is exactly what I need. Thank you. I think it is a good idea to include this link in protocol upgrade documentation.

SuzanaMaranhao (Mon, 01 Nov 2021 20:40:44 GMT):
Should I update the network from Constantinople to London directly, right?

shemnon (Mon, 01 Nov 2021 20:52:44 GMT):
Is it a zero wei/gas network? There may be a second flag you may need to turn off the fee market. Berlin doesn't have the fee market and has all the functional gains (and most of the gas schedule changes).

SuzanaMaranhao (Mon, 01 Nov 2021 20:58:08 GMT):
Yes, zero wei/gas net. What flag are you talking about?

shemnon (Mon, 01 Nov 2021 21:26:21 GMT):
There were some second-price fee market chagnes in London. I think some of the private network consensus team members should chime in on how it impacts private networks. @macfarla / @lucassaldanha

shadiayoub (Mon, 01 Nov 2021 22:14:49 GMT):
I generated keys for nodes using the key generator in extra data (nice work). Then changed the enode addresses in all the relevant files. And exported the node addresses to RLP, and put the output in extradata field in genesis. But when running the network, it never comes up. Explorer says -1.

shadiayoub (Mon, 01 Nov 2021 22:14:49 GMT):
I generated keys for nodes using the key generator in extra data (nice work). Then changed the enode addresses in all the relevant files. And exported the node addresses to RLP, and put the output in extradata field in genesis. But when running the network, it never comes up. Explorer says -1. What's is missing please?

taccatisid (Mon, 01 Nov 2021 23:11:59 GMT):
For private networks London is not yet supported, so Berlin would be the hard fork of choice.

macfarla (Mon, 01 Nov 2021 23:30:35 GMT):
No we haven't done this for Besu. Besu docs are pretty good though! https://besu.hyperledger.org/en/stable/Reference/API-Methods/

macfarla (Mon, 01 Nov 2021 23:33:59 GMT):
@SuzanaMaranhao in answer to your question. We have this on our list of things to do but it isn't near the top right now. Is this going to be a problem for your use case?

teerakiat (Tue, 02 Nov 2021 05:00:40 GMT):
Has joined the channel.

Rigwarl (Tue, 02 Nov 2021 06:26:36 GMT):
Has joined the channel.

vinodhini (Tue, 02 Nov 2021 06:32:40 GMT):
Has joined the channel.

Rigwarl (Tue, 02 Nov 2021 06:37:35 GMT):
Has left the channel.

y8l (Tue, 02 Nov 2021 11:57:15 GMT):
Has joined the channel.

kaveri (Tue, 02 Nov 2021 13:42:31 GMT):

Endpoint_error_message

kaveri (Tue, 02 Nov 2021 13:43:10 GMT):
Hi, I am deploying Besu v21.1.1. I am able to send the private transactions using web3js-quorum library method *generateAndSendRawTransaction* [https://consensys.github.io/web3js-quorum/latest/module-priv.html#~generateAndSendRawTransaction]. While interacting with my deployed contract, via express app, I am getting the following error message:

kaveri (Tue, 02 Nov 2021 13:49:20 GMT):
Hi, I am deploying Besu v21.1.1. I am able to send the private transactions using web3js-quorum method *generateAndSendRawTransaction*. While interacting with my deployed contract, via express app, I am getting the following error message: "The method eth_sendTransaction is not supported. Use eth_sendRawTransaction to send a signed transaction to Besu." Any piece of advice will be appreciated. Thank you.

kaveri (Tue, 02 Nov 2021 13:49:20 GMT):
Hi, I am deploying Besu v21.1.1. I am able to send the private transactions using web3js-quorum method *_generateAndSendRawTransaction_*. While interacting with my deployed contract, via express app, I am getting the following error message: "The method eth_sendTransaction is not supported. Use eth_sendRawTransaction to send a signed transaction to Besu." I understand from the documentation that the above mentioned method uses *_eea_sendRawTransaction_* to generate the privacy marker transaction and distribute the private transaction. How can I interact with my deployed contract using *_generateAndSendRawTransaction_*? In the versions 21.7.0 and above of Besu Documentation I can see the the guidelines for "Interacting with Deployed Smart Contracts" [ https://besu.hyperledger.org/en/stable/Tutorials/Contracts/Calling-Contract-Functions/ ] but not in the 21.1.1 version. Any piece of advice will be appreciated. Thank you.

kaveri (Tue, 02 Nov 2021 13:49:20 GMT):
Hi, I am deploying Besu v21.1.1. I am able to send the private transactions using web3js-quorum method *generateAndSendRawTransaction*. While interacting with my deployed contract, via express app, I am getting the following error message: "The method eth_sendTransaction is not supported. Use eth_sendRawTransaction to send a signed transaction to Besu." I understand from the documentation that the above mentioned method uses *eea_sendRawTransaction* to generate the privacy marker transaction and distribute the private transaction. How can I interact with my deployed contract using *generateAndSendRawTransaction*? In the versions 21.7.0 and above of Besu Documentation I can see the the guidelines for "Interacting with Deployed Smart Contracts" [ https://besu.hyperledger.org/en/stable/Tutorials/Contracts/Calling-Contract-Functions/ ] but not in the 21.1.1 version. Any piece of advice will be appreciated. Thank you.

kaveri (Tue, 02 Nov 2021 13:49:20 GMT):
Hi, I am deploying Besu v21.1.1. I am able to send the private transactions using web3js-quorum method `generateAndSendRawTransaction`. While interacting with my deployed contract, via express app, I am getting the following error message: "The method eth_sendTransaction is not supported. Use eth_sendRawTransaction to send a signed transaction to Besu." I understand from the documentation that the above mentioned method uses `eea_sendRawTransaction` to generate the privacy marker transaction and distribute the private transaction. How can I interact with my deployed contract using `generateAndSendRawTransaction`? In the versions 21.7.0 and above of Besu Documentation I can see the the guidelines for "Interacting with Deployed Smart Contracts" [ https://besu.hyperledger.org/en/stable/Tutorials/Contracts/Calling-Contract-Functions/ ] but not in the 21.1.1 version. Any piece of advice will be appreciated. Thank you.

kaveri (Tue, 02 Nov 2021 14:40:57 GMT):
Hi, I am deploying Besu v21.1.1. I am able to send the private transactions using web3js-quorum method *generateAndSendRawTransaction*. While interacting with my deployed contract, via express app, I am getting the following error message: "The method eth_sendTransaction is not supported. Use eth_sendRawTransaction to send a signed transaction to Besu." I understand from the documentation that the above mentioned method uses *eea_sendRawTransaction* to generate the privacy marker transaction and distribute the private transaction. How can I interact with my deployed contract using *generateAndSendRawTransaction*? I am using `https://web3js.readthedocs.io/en/v1.2.11/web3-eth-contract.html#web3-eth-contract` In the versions 21.7.0 and above of Besu Documentation I can see the the guidelines for "Interacting with Deployed Smart Contracts" [ https://besu.hyperledger.org/en/stable/Tutorials/Contracts/Calling-Contract-Functions/ ] but not in the 21.1.1 version. Any piece of advice will be appreciated. Thank you.

rafaadan6 (Tue, 02 Nov 2021 18:08:34 GMT):
Has joined the channel.

imillar99 (Tue, 02 Nov 2021 20:43:53 GMT):
Has joined the channel.

aarjav (Tue, 02 Nov 2021 20:54:47 GMT):
Has joined the channel.

ElisJacobson (Tue, 02 Nov 2021 23:06:13 GMT):
Has joined the channel.

macfarla (Tue, 02 Nov 2021 23:48:48 GMT):
Hi @kaveri , you will be able to follow the same (21.7.0) instructions to use generateAndSendRawTransaction with your version of Besu. That method generates, signs and sends the transaction using eth_sendRawTransaction. (the difference in docs is because we deprecated web3js-eea client lib and changed the docs to use web3js-quorum)

macfarla (Tue, 02 Nov 2021 23:49:01 GMT):
You would only get that error if you are sending tx via eth_sendTransaction (which Besu does not support). If you're still having trouble, can you share the code that you're using to send the tx to Besu?

terexitarius (Wed, 03 Nov 2021 02:45:43 GMT):
Has joined the channel.

Howie001 (Wed, 03 Nov 2021 02:48:24 GMT):
Has joined the channel.

frankliawesome (Wed, 03 Nov 2021 03:37:57 GMT):
Has joined the channel.

jaysonr (Wed, 03 Nov 2021 03:39:30 GMT):
Has joined the channel.

frankliawesome (Wed, 03 Nov 2021 03:42:42 GMT):
Hey @marchelbudi.k thanks for reaching out, can you please share some more details on how your application works? If the end call being made is from metamask the remix domain wouldn't need to be added

SriniGovindaswamy (Wed, 03 Nov 2021 06:01:00 GMT):
Has joined the channel.

efrain (Wed, 03 Nov 2021 07:25:32 GMT):
Does Hyperledger besu and Goquorum have the same features, only differing in implementation language (java vs Go)? Or do they differ in features too? If I start a ethereum network with Besu, can I join it with a Goquorum node?

shadiayoub (Wed, 03 Nov 2021 07:36:46 GMT):
I once found this comparison.

shadiayoub (Wed, 03 Nov 2021 07:36:48 GMT):
https://medium.com/@yashukla47/quorum-vs-hyperledger-besu-a-2020-comparison-841da514d205#:~:text=Definitions&text=Quorum%20is%20an%20enterprise%20blockchain,enhancements%20to%20support%20business%20needs.&text=Besu%20represents%20the%20growing%20interest,use%20cases%20for%20their%20applications.

Luis_Manuel_Cortes_Tirado (Wed, 03 Nov 2021 07:37:03 GMT):
Has left the channel.

shadiayoub (Wed, 03 Nov 2021 07:40:05 GMT):
Has anyone been successful in changes the Allocation in the quickstart? I changed all the possible attributes, and yet, when it runs it fetches the default allocations and puts them in the Genesis. And I cannot know where it gets the values from, specially after updating all the original genesis files with new wallets.

shadiayoub (Wed, 03 Nov 2021 07:40:05 GMT):
Has anyone been successful in changing the Allocation in the quickstart? I changed all the possible attributes, and yet, when it runs it fetches the default allocations and puts them in the Genesis. And I cannot know where it gets the values from, specially after updating all the original genesis files with new wallets.

efrain (Wed, 03 Nov 2021 07:42:41 GMT):
Thank you @shadiayoub

efrain (Wed, 03 Nov 2021 07:49:42 GMT):
I was running into the same problem. Changed the alloc section public keys in all the Genesis files. Still the network starts with the default values. The solution that worked for me is to change the settings in .env file. And also change the Genesis file.

shadiayoub (Wed, 03 Nov 2021 07:52:09 GMT):
I appreciate this! Will try it.

efrain (Wed, 03 Nov 2021 08:50:46 GMT):
Can I change the asset name from ETH to a custom one? I used the quickstart tutorial to create the network. https://docs.goquorum.consensys.net/en/stable/Tutorials/Quorum-Dev-Quickstart/Using-the-Quickstart/

kaveri (Wed, 03 Nov 2021 09:17:42 GMT):

Besu-PrivateTx

kaveri (Wed, 03 Nov 2021 09:17:42 GMT):

Besu-PrivateTx

marchelbudi.k (Wed, 03 Nov 2021 11:56:29 GMT):
Hi @frankliawesome as of right now I'm just playing around with the quickstart network with IBFT2.0 and privacy disabled. I was just trying to test out how a web application such as Remix interact with the network. recently I was playing around with the the http cors origin option to find out if i can only allow certain websites to interact with the network. I tried on the block explorer that is on my localhost which was provided by the quickstart and it works. next i was just testing if i can do this with Dapps such as the pet shop which is hosted locally and remix which uses injected web3 that interacts with the network with metamask, however metamask seems to be unable to connect to the network when the http cors origin is specified for remix or the petshop.

marchelbudi.k (Wed, 03 Nov 2021 11:56:29 GMT):
Hi @frankliawesome as of right now I'm just playing around with the quickstart network with IBFT2.0 and privacy disabled. I was just trying to test out how a web application such as Remix interact with the network. recently I was playing around with the the http cors origin option to find out if i can allow only certain websites to interact with the network. I tried on the block explorer that is on my localhost which was provided by the quickstart and it works. next i was just testing if i can do this with Dapps such as the pet shop which is hosted locally and remix which uses injected web3 that interacts with the network with metamask, however metamask seems to be unable to connect to the network when the http cors origin is specified for remix or the petshop.

hhgfgg (Wed, 03 Nov 2021 12:05:55 GMT):
Has joined the channel.

marchelbudi.k (Wed, 03 Nov 2021 12:18:52 GMT):
Hi, I was wondering what does the extra data represents other than the validators in the genesis file. the documentation shows extraData - RLP([32 bytes Vanity, List, No Vote, Round=Int(0), 0 Seals]) in https://besu.hyperledger.org/en/stable/HowTo/Configure/Consensus-Protocols/IBFT/#minimum-number-of-validators . I'm not sure what it meant. also for the quickstart what does the extraData represents?

marchelbudi.k (Wed, 03 Nov 2021 12:18:52 GMT):
Hi, I was wondering what does the extra data represents other than the validators in the genesis file. the documentation shows extraData - RLP([32 bytes Vanity, List, No Vote, Round=Int(0), 0 Seals]) in https://besu.hyperledger.org/en/stable/HowTo/Configure/Consensus-Protocols/IBFT/#minimum-number-of-validators . I'm not sure what it meant, also for the quickstart what does the extraData represents?

SuzanaMaranhao (Wed, 03 Nov 2021 14:02:42 GMT):
As far as I have checked looking at https://github.com/ethereum/execution-specs#ethereum-protocol-releases, the new EIPs from London are all related to gas. Since we are not using it, I think it is not a problem to go with Berlin. Perhaps I am missing some important info, though. Thank you for the answers

JiriPeinlich (Wed, 03 Nov 2021 14:35:25 GMT):
Has joined the channel.

SuzanaMaranhao (Wed, 03 Nov 2021 14:48:55 GMT):
Based on Q/A above, I understood that I need to update my private net from constantinopleFixBlock to Berlin. So, how exactly should I update the genesis file? Today, I have "config": { .... "constantinopleFixBlock": 0, ...... } After changing it, the new genesis file would be like this? "config": { .... "constantinopleFixBlock": 0, "london": "####numer_of_the_first_block_using_london###", ...... }

SuzanaMaranhao (Wed, 03 Nov 2021 14:48:55 GMT):
Based on Q/A above, I understood that I need to update my private net from constantinopleFixBlock to Berlin. So, how exactly should I update the genesis file? Today, I have "config": { .... "constantinopleFixBlock": 0, ...... } After changing it, would the new genesis file be like this? "config": { .... "constantinopleFixBlock": 0, "london": "####numer_of_the_first_block_using_london###", ...... }

SuzanaMaranhao (Wed, 03 Nov 2021 14:48:55 GMT):
Based on Q/A above, I understood that I need to update my private net from constantinopleFixBlock to Berlin. So, how exactly should I update the genesis file? Today, I have "config": { .... "constantinopleFixBlock": 0, ...... } After changing it, would the new genesis file be like this? "config": { .... "constantinopleFixBlock": 0, "beriln": "####numer_of_the_first_block_using_london###", ...... }

shemnon (Wed, 03 Nov 2021 16:57:58 GMT):
"berlinBlock": 7654321

shemnon (Wed, 03 Nov 2021 16:58:13 GMT):
where 7654321 is a block in the future yout network will transition to.

shemnon (Wed, 03 Nov 2021 16:58:24 GMT):
It's always "Block"

Stevedimaras (Wed, 03 Nov 2021 17:05:20 GMT):
Has joined the channel.

shadiayoub (Wed, 03 Nov 2021 17:18:50 GMT):
Question: Can a blockchain start as permissionless, then along the way update it to permissioned? Assuming we're able to restart all nodes in case of an update (without losing data).

shadiayoub (Wed, 03 Nov 2021 17:18:50 GMT):
Question: Can a blockchain start as permissionless, then along the way update it to permissioned? Assuming we're able to restart all nodes in case of an update (without losing data). Update: No. It's set in the genesis file before starting the network.

alfahami (Wed, 03 Nov 2021 17:55:32 GMT):
Has joined the channel.

hellipps (Wed, 03 Nov 2021 18:03:46 GMT):
Has joined the channel.

cemmurphy (Wed, 03 Nov 2021 21:59:32 GMT):
Has joined the channel.

macfarla (Thu, 04 Nov 2021 03:56:50 GMT):
You can run Besu and GoQuorum together, using Clique or QBFT. The quickstart by default runs either Besu nodes or GoQuorum, but it would be easy enough to modify it to have some of each. If you're using privacy, Besu can run GoQuorum compatible privacy https://besu.hyperledger.org/en/stable/HowTo/Use-Privacy/Use-GoQuorum-compatible-privacy/#goquorum-compatible-private-transactions

macfarla (Thu, 04 Nov 2021 03:58:40 GMT):
What do you mean by changing the asset name? GoQuorum will use ethereum as the platform but you can deploy your own stuff on top

macfarla (Thu, 04 Nov 2021 04:01:16 GMT):
There's a diagram here that might help https://besu.hyperledger.org/en/stable/HowTo/Configure/Consensus-Protocols/Clique/#extra-data

macfarla (Thu, 04 Nov 2021 04:02:06 GMT):
The extraData is slightly different depending on the consensus algo being used. But in all cases the main thing is the representation of the validators.

macfarla (Thu, 04 Nov 2021 04:05:42 GMT):
thanks @SuzanaMaranhao !

frankliawesome (Thu, 04 Nov 2021 05:43:36 GMT):
gotcha, in your use case it sounds like the only failing step is metamask interacting with the contract through Besu. I've given the url `chrome-extension://nkbihfbeogaeaoehlefnkodbefgpgknn` a go (adding it to my allowed cors-origin array) and I could use metamask as normal.

frankliawesome (Thu, 04 Nov 2021 05:45:16 GMT):
I'll get you to try this for me: spin up your quickstart nodes with 'rpc-http-cors-origins=["chrome-extension://nkbihfbeogaeaoehlefnkodbefgpgknn"]' in the config.toml file (or however you want to pass the option in) and make sure you can do something as simple as sending eth between two addresses with metamask.

frankliawesome (Thu, 04 Nov 2021 05:45:16 GMT):
I'll get you to try this for me: spin up your quickstart nodes with 'rpc-http-cors-origins=["chrome-extension://nkbihfbeogaeaoehlefnkodbefgpgknn"]' in the config.toml file (or however you want to pass the option in) and make sure you can do something as simple as sending eth between two addresses with metamask. @marchelbudi.k let me know how you go!

frankliawesome (Thu, 04 Nov 2021 05:53:38 GMT):
Is anyone getting email notifications from mentions here in the chat? (I'm not receiving any even though it's configured in my preferences)

shadiayoub (Thu, 04 Nov 2021 09:08:56 GMT):
Great news. Thanks for sharing.

minsecprisoner (Thu, 04 Nov 2021 09:53:48 GMT):
Has joined the channel.

CarlosGarcia.Briones (Thu, 04 Nov 2021 10:26:27 GMT):
Has joined the channel.

marchelbudi.k (Thu, 04 Nov 2021 11:19:26 GMT):
OH it seems to be working now @frankliawesome , I'm not sure why last time it didn't work it seems that I needed to change the network first in Metamask instead of using the retry button when it is unable to connect. now I'm confused to how to allow truffle to deploy contract to the network since it also uses rpc http api. so, what client domain need to be used for the cors origin to allow truffle to deploy contracts?

frankliawesome (Thu, 04 Nov 2021 11:35:21 GMT):
I think truffle runs on a custom port on localhost, and this can be changed under `truffle-config.js`, so try something like `http://127.0.0.1:22000` replace the port with your actual port number?

frankliawesome (Thu, 04 Nov 2021 11:41:06 GMT):
Did you need the `chrome-extension://nkbihfbeogaeaoehlefnkodbefgpgknn` for metamask to work? @marchelbudi.k

frankliawesome (Thu, 04 Nov 2021 12:12:02 GMT):
Hoping to update https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#rpc-http-cors-origins this section of the besu docs coming out of our discussion here :)

marchelbudi.k (Thu, 04 Nov 2021 12:48:02 GMT):
yup it seems that i need to add chrome-extension://nkbihfbeogaeaoehlefnkodbefgpgknn to get metamask working

marchelbudi.k (Thu, 04 Nov 2021 12:48:02 GMT):
yup it seems that i need to add chrome-extension://nkbihfbeogaeaoehlefnkodbefgpgknn to get metamask working @frankliawesome

marchelbudi.k (Thu, 04 Nov 2021 12:48:02 GMT):
yup it seems that i need to add chrome-extension://nkbihfbeogaeaoehlefnkodbefgpgknn to get metamask working @frankliawesome oh and a side note i notice that this url only works for chrome extension and would not work or edge extension

marchelbudi.k (Thu, 04 Nov 2021 12:48:02 GMT):
yup it seems that i need to add chrome-extension://nkbihfbeogaeaoehlefnkodbefgpgknn to get metamask working @frankliawesome oh and a side note i notice that this url only works for chrome extension and would not work for edge extension

marchelbudi.k (Thu, 04 Nov 2021 12:48:02 GMT):
yup it seems that i need to add chrome-extension://nkbihfbeogaeaoehlefnkodbefgpgknn to get metamask working @frankliawesome oh and a side note i notice that this url only works for chrome extension and would not work for Microsot Edge extension unless it is downloaded from the chrome rom the chrome web store

marchelbudi.k (Thu, 04 Nov 2021 12:48:02 GMT):
yup it seems that i need to add chrome-extension://nkbihfbeogaeaoehlefnkodbefgpgknn to get metamask working @frankliawesome oh and a side note i notice that this url only works for chrome extension and would not work for Microsoft Edge extension unless it is downloaded from the chrome web store

marchelbudi.k (Thu, 04 Nov 2021 14:23:36 GMT):
Hi, @frankliawesome could you show me where i can find or change the custom port for truffle. I cant seem to find it in the docs

SuzanaMaranhao (Thu, 04 Nov 2021 14:36:28 GMT):
What about Besu version? What is the most recent Besu version that you recommend to use in a permissioned network using IBFT2? I heard that your new permissioning layer prevents forwarding a transaction to other nodes when it is not allowed to be sent. Is it correct? I think it is very important!

marchelbudi.k (Thu, 04 Nov 2021 15:02:38 GMT):
nvm it seems that truffle does not need cors origin

mafer_027 (Thu, 04 Nov 2021 15:38:06 GMT):
Has joined the channel.

macfarla (Thu, 04 Nov 2021 20:24:38 GMT):
Are you talking about writing your own permissioning plugin? https://besu.hyperledger.org/en/stable/Concepts/Permissioning/Plugin-Permissioning/

macfarla (Thu, 04 Nov 2021 20:25:23 GMT):
https://github.com/hyperledger/besu/pull/2218

macfarla (Thu, 04 Nov 2021 20:29:12 GMT):
We recommend using the most recent version of Besu unless you have a reason not to!

jframe (Thu, 04 Nov 2021 23:13:20 GMT):
For the genesis block the important information in the extra data is the list of the validators all other details have essentially empty values. For blocks other the genesis block this extra data holds additional information that is required for the consensus mechanism. In addition to the current list of validators it contains the seals of the validators (list of signed block hash from the validators that committed the block), any votes and the round the block was created on. This article has some more details https://consensys.net/blog/enterprise-blockchain/scaling-consensus-for-enterprise-explaining-the-ibft-algorithm/

macfarla (Fri, 05 Nov 2021 01:34:36 GMT):
My permissions were set at default, I changed it to "mentions" - will see if I get emails!

macfarla (Fri, 05 Nov 2021 01:34:36 GMT):
My permissions were set at default, I changed it to "mentions" - will see if I get emails! @frankliawesome

deathdealer007 (Fri, 05 Nov 2021 03:11:16 GMT):
Has joined the channel.

deathdealer007 (Fri, 05 Nov 2021 03:11:26 GMT):
Unknown option: '-–rpc-http-port=8545'

deathdealer007 (Fri, 05 Nov 2021 03:11:33 GMT):
how is this even possible ?

deathdealer007 (Fri, 05 Nov 2021 03:14:50 GMT):
like this is from your examples on your website, they don't even work , How do you people get money from the Linux foundation and have some many broken things on all your projects ?

lucassaldanha (Fri, 05 Nov 2021 03:40:49 GMT):
Hi @deathdealer007, I've checked and this is the right option. Could you please share the full command that you are executing? Maybe there is something wrong in the command. Also if you could share the link to the docs page that you looked, I can take a look to see if anything is missing. Last but not least, if you have already figure out what is wrong and want to help us improve our docs, a PR to https://github.com/hyperledger/besu-docs will be more than welcome!

ksgr5566 (Fri, 05 Nov 2021 04:30:16 GMT):
Has joined the channel.

alvone01 (Fri, 05 Nov 2021 06:58:44 GMT):
Has joined the channel.

surabhi17 (Fri, 05 Nov 2021 08:45:59 GMT):
Has joined the channel.

tperes (Fri, 05 Nov 2021 10:56:14 GMT):
Has joined the channel.

Makabongwe (Fri, 05 Nov 2021 14:39:29 GMT):
Has joined the channel.

elDanielain (Fri, 05 Nov 2021 15:59:55 GMT):
Has joined the channel.

Nithronium (Fri, 05 Nov 2021 17:41:45 GMT):
Hi, does anyone have link for the EthSigner Discord server? The links on the website seems broken.

Nithronium (Fri, 05 Nov 2021 17:43:23 GMT):
My issue is specifically with `eth_sign` function of the EthSigner. The current method accepts only string as input and doesn't detect input starting with `0x` as hex.

marchelbudi.k (Fri, 05 Nov 2021 18:50:03 GMT):

Clipboard - November 6, 2021 1:49 AM

marchelbudi.k (Fri, 05 Nov 2021 18:50:27 GMT):
Hi, I am currently facing an issue with the onchain permissioning shown here https://besu.hyperledger.org/en/stable/Tutorials/Permissioning/Getting-Started-Onchain-Permissioning/ . I tried applying this to the quorum quickstart network and when I tried to add a node to the allow list in the Dapp it seems to have an error with a message of "could not add node was unable to be added. please try again later". and when I check the browser console it seems to have a metamask - RPC Error. The others for account and admin is working fine and only the node permissioning I am having issues with.

marchelbudi.k (Fri, 05 Nov 2021 18:50:27 GMT):
Hi, I am currently facing an issue with the onchain permissioning shown here https://besu.hyperledger.org/en/stable/Tutorials/Permissioning/Getting-Started-Onchain-Permissioning/ . I tried applying this to the quorum quickstart network and when I tried to add a node to the allow list in the Dapp it seems to have an error with a message of "could not add node was unable to be added. please try again later". and when I check the browser console it seems to have a metamask - RPC Error. The others for account and admin is working fine and only the node permissioning I am having issues with. The steps that I took are: - start quorum quickstart - clone git onchain permission - yarn install - yarn run build - yarn truffle migrate --reset - yarn start I haven't enable permission-nodes-contract as it still uses permissions-nodes-config-file.

marchelbudi.k (Fri, 05 Nov 2021 18:51:00 GMT):

Clipboard - November 6, 2021 1:50 AM

marchelbudi.k (Fri, 05 Nov 2021 19:08:58 GMT):
Hi, @frankliawesome so I find out something odd and if it is true the documentation might slightly misleading. when i allowed metamask to interact with the network with `chrome-extension://nkbihfbeogaeaoehlefnkodbefgpgknn` to the cors origin, any Dapp that uses web3 injected or relies on Metamask to connect to the network such as the pet shop Dapp will be able to interact with the network without the need to add the Dapp client domain to the cors origin, therefore it does not require for the client domain to be added to cors-origin to interact to metamask as metamask accepts any domain that intreracts with metamask . Im not sure if this is only for my case.

marchelbudi.k (Fri, 05 Nov 2021 19:08:58 GMT):
Hi, @frankliawesome so I find out something odd and if it is true the documentation might slightly misleading. It is stated in the rpc-http-cors-origins option documentation with the note that To allow a specific domain to use MetaMask with the Besu node, set --rpc-http-cors-origins to the client domain. However when I allowed metamask to interact with the network with `chrome-extension://nkbihfbeogaeaoehlefnkodbefgpgknn` to the cors origin, any Dapp that uses web3 injected or relies on Metamask to connect to the network such as the pet shop Dapp will be able to interact with the network without the need to add the Dapp client domain to the cors origin, therefore it does not require for the client domain to be added to cors-origin to interact to metamask as metamask accepts any domain that intreracts with metamask . Im not sure if this is only for my case.

marchelbudi.k (Fri, 05 Nov 2021 19:08:58 GMT):
Hi, @frankliawesome so I find out something odd and if it is true the documentation might slightly misleading. It is stated in the rpc-http-cors-origins option documentation with the note that `To allow a specific domain to use MetaMask with the Besu node, set --rpc-http-cors-origins to the client domain`. However when I allowed metamask to interact with the network with `chrome-extension://nkbihfbeogaeaoehlefnkodbefgpgknn` to the cors origin, any Dapp that uses web3 injected or relies on Metamask to connect to the network such as the pet shop Dapp will be able to interact with the network without the need to add the Dapp client domain to the cors origin, therefore it does not require for the client domain to be added to cors-origin to interact to metamask as metamask accepts any domain that intreracts with metamask . Im not sure if this is only for my case.

marchelbudi.k (Fri, 05 Nov 2021 19:08:58 GMT):
Hi, @frankliawesome so I find out something odd and if it is true the documentation might slightly misleading. It is stated in the rpc-http-cors-origins option documentation with the note that `To allow a specific domain to use MetaMask with the Besu node, set --rpc-http-cors-origins to the client domain`. However when I allowed metamask to interact with the network with `chrome-extension://nkbihfbeogaeaoehlefnkodbefgpgknn` to the cors origin, any Dapp that uses web3 injected or relies on Metamask to connect to the network such as the pet shop Dapp will be able to interact with the network without the need to add the Dapp client domain to the cors origin. Im not sure if this is only for my case.

marchelbudi.k (Fri, 05 Nov 2021 19:08:58 GMT):
Hi, @frankliawesome so I find out something odd and if it is true the documentation might slightly misleading. It is stated in the rpc-http-cors-origins option documentation with the note that `To allow a specific domain to use MetaMask with the Besu node, set --rpc-http-cors-origins to the client domain`. However when I allowed metamask to interact with the network with `chrome-extension://nkbihfbeogaeaoehlefnkodbefgpgknn` added to the cors origin, any Dapp that uses web3 injected or relies on Metamask to connect to the network such as the pet shop Dapp will be able to interact with the network without the need to add the Dapp client domain to the cors origin. Im not sure if this is only for my case.

marchelbudi.k (Fri, 05 Nov 2021 19:13:29 GMT):
for web application such as the block explorer that connects the network directly will still need cors origin

shadiayoub (Fri, 05 Nov 2021 22:42:43 GMT):
Hello... Where in the following code can I set block time please? }, "coinbase": "0x0000000000000000000000000000000000000000", "config": { "homesteadBlock": 0, "byzantiumBlock": 0, "constantinopleBlock": 0, "petersburgBlock": 0, "istanbulBlock": 0, "privacyEnhancementsBlock": 0, "eip150Block": 0, "eip150Hash": "0x0000000000000000000000000000000000000000000000000000000000000000", "eip155Block": 0, "eip158Block": 0, "maxCodeSizeConfig": [ { "block": 0, "size": 32 } ], "chainId": 1342, "isQuorum": true, "istanbul": { "epoch": 30000, "policy": 0 } },

shadiayoub (Fri, 05 Nov 2021 22:44:24 GMT):
Hello.. Where in the following code can the blocktime be defined please? "chainId": 1342, "isQuorum": true, "istanbul": { "epoch": 30000, "policy": 0 }

shadiayoub (Fri, 05 Nov 2021 22:44:24 GMT):
Hello.. Where in the following code can the blocktime be defined please? "chainId": 1342, "isQuorum": true, "istanbul": { "epoch": 30000, "policy": 0 } UPDATE: by adding the following under Istanbul: "blockperiod: 5,

shadiayoub (Fri, 05 Nov 2021 22:44:24 GMT):
Hello.. Where in the following code can the blocktime be defined please? "chainId": 1342, "isQuorum": true, "istanbul": { "epoch": 30000, "policy": 0 } UPDATE: by adding the following under Istanbul: "blockperiod": 5,

EmcLab (Sat, 06 Nov 2021 05:03:40 GMT):
Hi all, after making change in config.toml, do I have to restart the node to sync up? I mean if I leave the node running, will it eventually sync up by itself with other nodes?

macfarla (Sat, 06 Nov 2021 09:24:41 GMT):
Have you tried a) refreshing your browser b) resetting your account in MetaMask

macfarla (Sat, 06 Nov 2021 09:24:42 GMT):
https://metamask.zendesk.com/hc/en-us/articles/360015488891-How-to-reset-your-wallet

lucassaldanha (Sat, 06 Nov 2021 18:29:20 GMT):
If you have made changes in your config file you should restart your node to pickup the updated config. AFAIK Besu only reads the config file during startup.

shadiayoub (Sat, 06 Nov 2021 19:32:31 GMT):
Is there any paid special training for Besu and GoQuorum?

SySagar (Sun, 07 Nov 2021 04:25:26 GMT):
Has joined the channel.

suisingLai (Sun, 07 Nov 2021 14:07:21 GMT):
Has joined the channel.

ceejaymi (Sun, 07 Nov 2021 18:42:13 GMT):
Has joined the channel.

usmansaleem (Sun, 07 Nov 2021 23:58:08 GMT):
Hi @Nithronium, you can access join Consensys discord server. You can post in web3signer channel for EthSigner questions as well. https://discord.gg/Qjt9gVPQ . Will take a look into updating EthSigner doc to fix discord server and/or create EthSigner specific channel again.

usmansaleem (Sun, 07 Nov 2021 23:58:08 GMT):
Hi @Nithronium, you can join Consensys discord server and post in web3signer or Besu channel for EthSigner questions as well. https://discord.gg/Qjt9gVPQ . Will take a look into updating EthSigner doc to fix discord server and/or create EthSigner specific channel again.

usmansaleem (Mon, 08 Nov 2021 00:04:53 GMT):
Regarding eth_sign, it is by design i.e. https://docs.ethsigner.consensys.net/en/stable/Reference/API-Methods/#eth_sign ... the input string is converted to ethereum specific signature and signed as: sign(keccak256("\x19Ethereum Signed Message:\n" + len(message) + message)))

Ezzah 1 (Mon, 08 Nov 2021 01:10:36 GMT):
Has joined the channel.

usmansaleem (Mon, 08 Nov 2021 02:27:44 GMT):
@Nithronium Let me verify this behavior with Geth. It might be a bug in EthSigner.

Jangto (Mon, 08 Nov 2021 03:27:46 GMT):
Has joined the channel.

macfarla (Mon, 08 Nov 2021 03:42:18 GMT):
LFR - sonar as a separate step https://github.com/hyperledger/besu/pull/3016

BabitaBisht1 (Mon, 08 Nov 2021 04:11:45 GMT):
am trying to hit this curl request - curl -X POST --data '{"jsonrpc":"2.0","method":"ibft_getValidatorsByBlockNumber","params":["latest"], "id":1}' localhost:8545

BabitaBisht1 (Mon, 08 Nov 2021 04:12:07 GMT):
from the host machine

indongkim (Mon, 08 Nov 2021 05:19:11 GMT):
pkiexception

ffendt (Mon, 08 Nov 2021 06:19:26 GMT):
Has left the channel.

ThinhPhan (Mon, 08 Nov 2021 07:28:00 GMT):
Has joined the channel.

usmansaleem (Mon, 08 Nov 2021 07:53:57 GMT):
https://github.com/ConsenSys/ethsigner/pull/392 should fix this issue.

jframe (Mon, 08 Nov 2021 08:30:37 GMT):
There is now a ethsigner channel on discord you can use for ethsigner discussions https://discord.gg/jCk2XuYtrp

sristhiassudani (Mon, 08 Nov 2021 09:22:21 GMT):
Has joined the channel.

NSagar (Mon, 08 Nov 2021 12:25:57 GMT):
Has joined the channel.

Nithronium (Mon, 08 Nov 2021 15:32:33 GMT):
Thanks a lot for the update! It ate my friday night I had my own fork of the working code but I am not a java dev so I was just saving the day. This seems like this'll do the job :)

RyanJJones10 (Mon, 08 Nov 2021 17:13:45 GMT):
Has joined the channel.

usmansaleem (Mon, 08 Nov 2021 19:29:41 GMT):
PRs are always welcome @Nithronium :).

Nithronium (Tue, 09 Nov 2021 05:38:09 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=4nwRPMD8bhMFuvDra) My code wouldn't be accepted as I wrote something that'd just do what I need and not in any form of acceptable code! :sweat_smile:

Nithronium (Tue, 09 Nov 2021 05:38:25 GMT):
I'm not a java dev soooo :D

BabitaBisht1 (Tue, 09 Nov 2021 06:07:42 GMT):
Hi, I am facing issue with besu network. Metamask is not able to connect with besu node - Error at metamask- Could not fetch chain ID. Is your RPC URL correct?

shin1yama (Tue, 09 Nov 2021 07:02:16 GMT):
Has joined the channel.

LakshmiMurali (Tue, 09 Nov 2021 07:50:21 GMT):
Has joined the channel.

Luis_Manuel_Cortes_Tirado (Tue, 09 Nov 2021 10:51:42 GMT):
Has joined the channel.

usmansaleem (Tue, 09 Nov 2021 11:57:59 GMT):
the fix has been merged to master branch.

Aljone (Tue, 09 Nov 2021 15:58:35 GMT):
Has joined the channel.

rockson (Tue, 09 Nov 2021 17:02:09 GMT):
Has joined the channel.

knguyenBC (Tue, 09 Nov 2021 17:17:59 GMT):
Has joined the channel.

ghastly (Tue, 09 Nov 2021 17:32:50 GMT):
Has joined the channel.

shadiayoub (Tue, 09 Nov 2021 17:34:24 GMT):
Welcome everyone. If you want a more active chat channel join the Discord server.. Search for consensys

sdunstan (Tue, 09 Nov 2021 20:47:43 GMT):
Has joined the channel.

LEOISHere (Wed, 10 Nov 2021 00:03:22 GMT):
Has joined the channel.

lucassaldanha (Wed, 10 Nov 2021 01:47:32 GMT):
Hi! When you start your Besu node, you need to ensure the RPC configuration is correctly set, exposing the port that you want, and listening in the correct interface. Take a look at the `rpc-http-*` options in the docs to find what you could be missing. If you want to share the config file that you are using to start your node we can try to help identifying what could be missing.

lucassaldanha (Wed, 10 Nov 2021 01:48:35 GMT):
There is also a note in our docs re using Besu with Metamask (how to configure the cors settings correctly). Take a look into it: https://besu.hyperledger.org/en/latest/Reference/CLI/CLI-Syntax/#rpc-http-cors-origins

ffabregas (Wed, 10 Nov 2021 03:56:07 GMT):
Has joined the channel.

DeepromSomkiadcharoen (Wed, 10 Nov 2021 03:56:07 GMT):
Has joined the channel.

nikolas (Wed, 10 Nov 2021 08:24:56 GMT):
Hi, can someone confirm if RLPX is used by default in permissioned networks and communication between the peers is encrypted? Thank you!

Luis_Manuel_Cortes_Tirado (Wed, 10 Nov 2021 12:32:16 GMT):
Hello, I've deployed a private network using the IBFT 2.0 consensus protocol (Proof of Authority) following the article below: https://besu.hyperledger.org/en/21.10.1/Tutorials/Private-Network/Create-IBFT-Network/ Now I want to connect Metamask from another computer but port 8545 is only listening on 127.0.0.1. How can I open the port to be accessible from other computers? Thanks.

diegoll (Wed, 10 Nov 2021 12:41:25 GMT):
Hi! You have to bind the HTTP interface to a public one in your instance. Take a look at the [rpc-http-host](https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#rpc-http-host) flag

Luis_Manuel_Cortes_Tirado (Wed, 10 Nov 2021 12:46:50 GMT):
Then I have to stop the boot-node with CTRL+C and restart it including the --rpc-http-host=0.0.0.0 flag, right?

Luis_Manuel_Cortes_Tirado (Wed, 10 Nov 2021 12:50:28 GMT):
Only boot-node (Node-1) or all 4 Nodes?

diegoll (Wed, 10 Nov 2021 13:10:26 GMT):
exactly, you have to restart it. You only need to do it in the node you want to connect externally

Luis_Manuel_Cortes_Tirado (Wed, 10 Nov 2021 13:12:01 GMT):
All right, thank you very much!

Strohhut (Wed, 10 Nov 2021 17:27:06 GMT):
Has joined the channel.

loziniak (Thu, 11 Nov 2021 00:32:27 GMT):
Has joined the channel.

loziniak (Thu, 11 Nov 2021 00:36:59 GMT):
Hello. I've discovered IBFT2 has problem with scalability. I want to scale to about 1000 validators. Is it possible with any of Besu's algorithms? I found that there is a YAC algorithm in HL Iroha, that scales well. Are there perhaps any plan to implement it in Besu?

jframe (Thu, 11 Nov 2021 01:35:13 GMT):
You are correct in that IBFT2 is not designed to work with such a large set of validators.

jframe (Thu, 11 Nov 2021 01:35:15 GMT):
Why do you need such a large number of validators?

jframe (Thu, 11 Nov 2021 01:36:16 GMT):
There are no plans to implement the YAC algorithm in Besu at the moment. Is the scaling of validator nodes in YAC the main reason for wanting YAC in Besu?

ChangmingLiu (Thu, 11 Nov 2021 01:38:01 GMT):
Has joined the channel.

jframe (Thu, 11 Nov 2021 01:38:13 GMT):
The only consensus mechanism in Besu that might work with such a large set of validators is Clique but then you have forks and give up finality and byzantine fault tolerance. So probably not something you would want to use in a production network. Mostly just mentioning it for completeness.

loziniak (Thu, 11 Nov 2021 02:50:06 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=7DWd7SLWq3ydQnyGa) exactly that.

loziniak (Thu, 11 Nov 2021 02:50:44 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=7DWd7SLWq3ydQnyGa) yes, exactly.

newbieTech (Thu, 11 Nov 2021 02:56:28 GMT):
Has joined the channel.

BabitaBisht1 (Thu, 11 Nov 2021 06:25:18 GMT):
thanks!

BabitaBisht1 (Thu, 11 Nov 2021 06:33:27 GMT):
Hey, I am trying to invoke smart contract through web3js in besu private IBFT network. I am using ethereumjs-tx dependency, The problem is when trying to invoke the contract it throwing error - 'Error in createRawTransaction Error: Chain with name 1337 not supported'

lucassaldanha (Thu, 11 Nov 2021 06:34:58 GMT):
Hi! RLPx is used by default in permissioned networks. The only exception is if you are using TLS for DevP2P. We recently introduced the option of using TLS for DevP2P connections. In this case, the RLPx encryption isn't needed anymore (because all packets are already encrypted by TLS). More info: https://besu.hyperledger.org/en/latest/HowTo/Configure/TLS/P2P-TLS/

lucassaldanha (Thu, 11 Nov 2021 06:37:07 GMT):
I'm not sure how your code looks like. It seems it is trying to map your chainId configuration to a network name (maybe one of the "standard" names like ropsten, rinkeby or mainnet). I'd suggest double-checking your ethereumjs-tx initialization in your scripts. If you want to share your scripts someone might be able to help spot what's going on.

BabitaBisht1 (Thu, 11 Nov 2021 06:42:03 GMT):
this is the part of the script where is the issue - const ethTx = require("ethereumjs-tx").Transaction; const { config } = require("./config"); const web3 = require("./web3Object"); /** * Convert Payload into Raw transactions signed by Private Key * @param {String(hex)} to * @param {String(hex)} from * @param {Object} data * @param {Number} value * @param {Number} gasLimit * @param {Number*} gasPrice * @param {String(hex)} privateKey */ const createRawTransaction = async ( to, from, data, value, gasLimit, gasPrice, privateKey ) => { console.log( "createRawTransaction -------------------->>>>>>>>>>", to, from, data, value, gasLimit, gasPrice, privateKey ); try { console.log("IN createRawTransaction"); let nonce = await web3.eth.getTransactionCount(from, "pending"); const txParams = { nonce: web3.utils.toHex(nonce), gasPrice: web3.utils.toHex(gasPrice), gasLimit: web3.utils.toHex(gasLimit), to: to, value: web3.utils.toHex(value), data: data, }; console.log("txParam", txParams); const tx = new ethTx(txParams, { chain: `${config.chain}`, network: `${config.network}`, }); privateKey = new Buffer.from(privateKey, "hex"); tx.sign(privateKey); let serializedTx = tx.serialize(); let rawTxn = "0x" + serializedTx.toString("hex"); return rawTxn; } catch (error) { console.log("Error in createRawTransaction", error); error.code = 801; throw error; } }; const createTask = async (_content, _userAddress) => { try { console.log(toDoContract.methods) let result = await toDoContract.methods.createTask(_content); let payload = result.encodeABI(); let eg = await helper.estimateGas({ from: _userAddress, to: config.contract.address, data: payload, value: 0 }); let gasPrice = await helper.getGasPrice(); console.log(eg); let rawTxn = await createRawTransaction(config.contract.address, _userAddress, payload, 0, eg * 2, gasPrice, "8f2a55949038a9610f50fb23b5883af3b4ecb3c3bb792cbcefbd1542c692be63"); let txn = await helper.submitSignedTx(rawTxn); return txn; } catch (error) { console.log(error); return error } } createTask("hello")

BabitaBisht1 (Thu, 11 Nov 2021 06:42:03 GMT):
this is the part of the script where is the issue - const ethTx = require("ethereumjs-tx").Transaction; const { config } = require("./config"); const web3 = require("./web3Object"); /** * Convert Payload into Raw transactions signed by Private Key * @param {String(hex)} to * @param {String(hex)} from * @param {Object} data * @param {Number} value * @param {Number} gasLimit * @param {Number*} gasPrice * @param {String(hex)} privateKey */ const createRawTransaction = async ( to, from, data, value, gasLimit, gasPrice, privateKey ) => { console.log( "createRawTransaction -------------------->>>>>>>>>>", to, from, data, value, gasLimit, gasPrice, privateKey ); try { console.log("IN createRawTransaction"); let nonce = await web3.eth.getTransactionCount(from, "pending"); const txParams = { nonce: web3.utils.toHex(nonce), gasPrice: web3.utils.toHex(gasPrice), gasLimit: web3.utils.toHex(gasLimit), to: to, value: web3.utils.toHex(value), data: data, }; console.log("txParam", txParams); const tx = new ethTx(txParams, { chain: `${config.chain}`, network: `${config.network}`, }); privateKey = new Buffer.from(privateKey, "hex"); tx.sign(privateKey); let serializedTx = tx.serialize(); let rawTxn = "0x" + serializedTx.toString("hex"); return rawTxn; } catch (error) { console.log("Error in createRawTransaction", error); error.code = 801; throw error; } }; const createTask = async (_content, _userAddress) => { try { console.log(toDoContract.methods) let result = await toDoContract.methods.createTask(_content); let payload = result.encodeABI(); let eg = await helper.estimateGas({ from: _userAddress, to: config.contract.address, data: payload, value: 0 }); let gasPrice = await helper.getGasPrice(); console.log(eg); let rawTxn = await createRawTransaction(config.contract.address, _userAddress, payload, 0, eg * 2, gasPrice, "8f2a55949038a9610f50fb23b5883af3b4ecb3c3bb792cbcefbd1542c692be63"); let txn = await helper.submitSignedTx(rawTxn); return txn; } catch (error) { console.log(error); return error } } createTask("hello")

uguroney (Thu, 11 Nov 2021 08:38:29 GMT):
Has joined the channel.

BabitaBisht1 (Thu, 11 Nov 2021 09:51:27 GMT):
thanks!

Monavari (Thu, 11 Nov 2021 11:18:16 GMT):
Has joined the channel.

IgorSim (Thu, 11 Nov 2021 12:48:16 GMT):
Has joined the channel.

IgorSim (Thu, 11 Nov 2021 13:01:22 GMT):
Hi, i restarted full node connected to Ropsten testnet and now i see these messages in the log, for ex: _Downloaded 7800000 world state nodes. At least 13961106 nodes remaining. Downloaded 7900000 world state nodes. At least 13879115 nodes remaining ......._ Executing 'eth_blockNumber' returns the value before i restarted the node and right now is ~500 blocks behind and keep increasing. Can someone explain what exactly is going on and why chain height stays the same? Thanks.

IgorSim (Thu, 11 Nov 2021 13:01:22 GMT):
Hi, i restarted full node connected to Ropsten testnet and now i see these messages in the log, for ex: Downloaded 7800000 world state nodes. At least 13961106 nodes remaining. Downloaded 7900000 world state nodes. At least 13879115 nodes remaining ....... Executing 'eth_blockNumber' returns the value before i restarted the node and right now is ~500 blocks behind and keep increasing. Can someone explain what exactly is going on and why chain height stays the same? Thanks.

shadiayoub (Thu, 11 Nov 2021 13:32:48 GMT):
@IgorSim Hello.. Perhaps you'd want to join the Discord server as well. https://discord.gg/sqXastKG

leostereo (Thu, 11 Nov 2021 13:42:39 GMT):
Has joined the channel.

anuj-kh (Thu, 11 Nov 2021 14:01:40 GMT):
Has joined the channel.

sebposselt (Thu, 11 Nov 2021 14:44:53 GMT):
Has joined the channel.

fab-10 (Thu, 11 Nov 2021 15:10:10 GMT):
Has joined the channel.

ricc.zappoli (Thu, 11 Nov 2021 16:03:22 GMT):
Has left the channel.

ArhangelSky999 (Thu, 11 Nov 2021 16:47:21 GMT):
Has joined the channel.

knichols (Thu, 11 Nov 2021 21:59:13 GMT):
Has joined the channel.

EmcLab (Fri, 12 Nov 2021 00:07:22 GMT):
Hi all, after enable http authorization and verified JWT token on jet.io with publicly, the node1 throws error of invalid JWT token:

EmcLab (Fri, 12 Nov 2021 00:07:25 GMT):
2021-11-12 08:02:19.020+08:00 | vert.x-eventloop-thread-0 | DEBUG | B3PropagatorExtractorMultipleHeaders | Invalid TraceId in B3 header: null'. Returning INVALID span context. 2021-11-12 08:02:19.021+08:00 | vert.x-eventloop-thread-0 | DEBUG | AuthenticationUtils | Invalid JWT token java.lang.RuntimeException: Signature verification failed at io.vertx.ext.jwt.JWT.decode(JWT.java:311) at io.vertx.ext.auth.jwt.impl.JWTAuthProviderImpl.authenticate(JWTAuthProviderImpl.java:122) at org.hyperledger.besu.ethereum.api.jsonrpc.authentication.AuthenticationUtils.getUser(AuthenticationUtils.java:84) at org.hyperledger.besu.ethereum.api.jsonrpc.JsonRpcHttpService.handleJsonRPCRequest(JsonRpcHttpService.java:548) at io.vertx.ext.web.impl.RouteState.handleContext(RouteState.java:1038) at io.vertx.ext.web.impl.RoutingContextImplBase.iterateNext(RoutingContextImplBase.java:101) at io.vertx.ext.web.impl.RoutingContextImpl.next(RoutingContextImpl.java:132) at org.hyperledger.besu.ethereum.api.handlers.TimeoutHandler.processHandler(TimeoutHandler.java:75)

EmcLab (Fri, 12 Nov 2021 00:08:17 GMT):
Here is the config.toml for jwt token

EmcLab (Fri, 12 Nov 2021 00:08:38 GMT):
#jwt token rpc-http-authentication-enabled=true rpc-http-authentication-jwt-public-key-file="/home/besu_network/publicKeyRSA.pem"

EmcLab (Fri, 12 Nov 2021 00:08:49 GMT):
connection object on client is:

EmcLab (Fri, 12 Nov 2021 00:10:50 GMT):
connection : { url: 'http://server-ip:80', headers: { Authorization: 'Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJwZXJtaXNzaW9ucyI6WyIqpYXQiOjE2MzY2NzUzMzh9.UCgLVzwtFNUxjGezAIaG256rBpnYtNmVmiXZUI1wrdH3ik9BkXMcJ0rWZWkaBXOhhcPBy7fbBZe0rL1K7eBQ9hLESrT3GDLLprg77yuWxDCT2DhNfZshR8C2QuJkSWk4SOppD6OwtIaM1-1tYWoA-Jcpgc88YMuOjI5Z8wgfNa_T87inU8cH8JECe5tVu22x0d7Cpj5Fkn5leq_glpc7sxXVYoAHcB0CmIOQCRkbIVqtWQRmLx6VaOFwzAJuL4NF7emRenpIaYkHdsIrZwx2mCxViALlAku0Mf2p00XgcBKg4GoJczg' } }

EmcLab (Fri, 12 Nov 2021 00:12:42 GMT):
What could cause the error of invalid JWT token if the token itself is verified?

frankliawesome (Fri, 12 Nov 2021 00:28:06 GMT):
Hey there wanna PM through your public key file and I'll see if I can replicate the issue?

frankliawesome (Fri, 12 Nov 2021 00:29:54 GMT):
Hey @marchelbudi.k we have since updated the doc, I agree with you - it should make more sense now :)

maurorambo (Fri, 12 Nov 2021 00:34:02 GMT):
Has joined the channel.

frankliawesome (Fri, 12 Nov 2021 00:40:58 GMT):
My notification setting for rocketchat is still a bit funky, when you get to it can you send through your toml file as well as your public key over to frank.li@consensys.net and I'll take a look at this :)

frankliawesome (Fri, 12 Nov 2021 00:40:58 GMT):
My notification setting for rocketchat is still a bit funky, when you get to it can you send through your toml file as well as your public key over to frank.li@consensys.net and I'll take a look at this :) @EmcLab

ChrisPaterson (Fri, 12 Nov 2021 02:35:32 GMT):
Has joined the channel.

EmcLab (Fri, 12 Nov 2021 03:24:58 GMT):
Hi Frank, JWT token and public key were sent to you by email. Please check .Thanks.

Shubham-koli (Fri, 12 Nov 2021 05:04:22 GMT):
Has joined the channel.

frankliawesome (Fri, 12 Nov 2021 06:11:43 GMT):
Thanks, I couldn't replicate this so it's likely something with your API call has gone wrong - this is what I've done:

frankliawesome (Fri, 12 Nov 2021 06:13:36 GMT):
1. Latest Besu master repo, built 2. Running from build/install/besu/bin/besu (should be the same as running a fresh Besu binary) with the command line arg config-file=config.toml (your file) and the public key is under root as well 3. Tested POST `{"jsonrpc":"2.0","method":"net_listening","params":[],"id":53}` which is a auth protected route with your JWT, got the correct result, altered one character in the JWT, got unauthorized.

EmcLab (Fri, 12 Nov 2021 06:18:36 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=8Zf9qhykGG7N9N9ZX) a reverse proxy is used to route the call. Here is the setup on the nginx reverse proxy.

EmcLab (Fri, 12 Nov 2021 06:18:46 GMT):
server { listen 80; location / { proxy_pass http://127.0.0.1:8545; } server { listen 80; location / { proxy_pass http://127.0.0.1:8545; }

EmcLab (Fri, 12 Nov 2021 06:20:58 GMT):
The whole setup was tested before.What else can cause Besu returns invalid jwt token?

EmcLab (Fri, 12 Nov 2021 06:20:58 GMT):
The whole setup was tested before.What else can cause Besu return invalid jwt token?

frankliawesome (Fri, 12 Nov 2021 06:21:54 GMT):
I'm not too familiar with proxies and networking things - all I can say for sure is that the JWT and pub key pair is fine, and the JWT library works as intended :)

EmcLab (Fri, 12 Nov 2021 06:23:44 GMT):
What is your connection object used on client?

EmcLab (Fri, 12 Nov 2021 06:30:12 GMT):
Here is the error on client side. ethersjs 5.x is used.

EmcLab (Fri, 12 Nov 2021 06:30:42 GMT):
Connection mainchain error Error: bad response (status=401, headers={"server":"nginx/1.21.4","date":"Fri, 12 Nov 2021 00:02:19 GMT","content-type":"application/json","content-length":"107","connection":"close"}, body="{\n \"jsonrpc\" : \"2.0\",\n \"id\" : 42,\n \"error\" : {\n \"code\" : -40100,\n \"message\" : \"Unauthorized\"\n }\n}", requestBody="{\"method\":\"eth_blockNumber\",\"params\":[],\"id\":42,\"jsonrpc\":\"2.0\"}", requestMethod="POST", url="http://my-ip:80", code=SERVER_ERROR, version=web/5.3.0)

EmcLab (Fri, 12 Nov 2021 06:41:13 GMT):
tried curl command below and it returned "unauthorized"

EmcLab (Fri, 12 Nov 2021 06:41:52 GMT):
curl -X POST -H 'Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJwZXJtaXNzaW9ucyI6WyIqOioiXSwiZXhwIjoxNjM4NzQ4OTM4LCJpYXQiOjE2MzY2NzUzMzh9.UCgLVzwtFNUxjGezAIaG256rBpnYtNmVmiXZUI1wrdH3ik9BkXMcJ0rWZWkaBXOhhcPBy7fbBZe0rL1K7eBQ9hLENn1IK8JSAZ5MS3lkYIhBXlf91QbPZaXk-AiSrT3GDLLprg77yuWxDCT2DhNfZshR8C2QuJkSWk4SOppD6OwtIaM1-1tYWoA-Jcpgc88YMuOjI5Z8wgfNa_T87inU8cH8JECe5tVu22x0d7Cpj5Fkn5leq_glpc7sxXVYoAHcB0CmIOQCRkbIVqtWQRmLx6VaOFwzAJuL4NF7emRenpIaYkHdsIrZwx2mCxViALlAku0Mf2p00XgcBKg4GoJczg' -d '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}' http://myip:80

EmcLab (Fri, 12 Nov 2021 06:42:25 GMT):
{ "jsonrpc" : "2.0", "id" : 1, "error" : { "code" : -40100, "message" : "Unauthorized" } }

sekinosekai (Fri, 12 Nov 2021 09:17:01 GMT):
Has joined the channel.

RomanBorisov (Fri, 12 Nov 2021 14:04:59 GMT):
Has joined the channel.

somaningp (Fri, 12 Nov 2021 14:29:25 GMT):
Has joined the channel.

loziniak (Fri, 12 Nov 2021 15:04:07 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=8sTkxvGvHiRyFuWwm) I'm working on a network, where all nodes are validators, distributed geographically and organizationally. more validators means more stability and security.

loziniak (Fri, 12 Nov 2021 15:27:01 GMT):
Is it possible to transition to another consensus mechanism during operation, for example by restarting all nodes with a "transition" added to genesis file?

Andrewval (Fri, 12 Nov 2021 16:46:22 GMT):
Has joined the channel.

ChheunPhearaeun (Fri, 12 Nov 2021 17:48:40 GMT):
Has joined the channel.

Clippo 3 (Fri, 12 Nov 2021 17:56:22 GMT):
Has joined the channel.

Clippo 3 (Fri, 12 Nov 2021 17:56:40 GMT):
Hey , hello sorry guys 4 bother

Clippo 3 (Fri, 12 Nov 2021 17:57:24 GMT):
I want to interact with smart contracts in a besu network is any chance that i can be with an rest api y dont got the bridge that it'll have

matt.nelson.csi (Fri, 12 Nov 2021 20:56:07 GMT):
Has joined the channel.

EmcLab (Fri, 12 Nov 2021 21:37:27 GMT):
Hi 'frankliawesome`, I log the Authorization header on nginx proxy server and verified the jwt token in the log on jwt.io. The token's signature was verified successfully. It seems that something happened on besu server made the signature verification failed. the besu version is 21.10.0 which is the latest. What can go wrong with token verification on besu?

loziniak (Fri, 12 Nov 2021 21:43:49 GMT):
Your question is hard to understand.

EmcLab (Fri, 12 Nov 2021 21:46:40 GMT):
Here is the nginx log file

EmcLab (Fri, 12 Nov 2021 21:46:57 GMT):
[13/Nov/2021:05:28:34 +0800] "POST / HTTP/1.1" 401 106 "-" "curl/7.64.1" "-""127.0.0.1:8545" "127.0.0.1:8545""Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJwZXJtaXNzaW9ucyI6WyIqOioiXSwiZXhwIjoxNjM4ODI0ODExLCJpYXQiOjE2MzY3NTEyMTF9.iCAIokCGHW2-AB4PQ-HvvxTWTblXeO_X-OdAofyWT8BJZuHdD8yKGIq1xDIl1Np5BKQfGb9bYXWYR_q9jmWxMmKK66sxCmnZRQr9FrAh0yXK2g2gSYV83_ppeF7fvtj34vgznHHrdHBRj5PzeCpdm4OhKlxLUEwJopWXEr4zwdws9HHrdzoum0aQxcf9xsDBYQ14FdsHb-a4oXYtS3HLLJSgxEIKIZPHBqTUfT_ljIDf7aXpQPHxlbFHoogIq4hgW0vYVdaY5_n1yZ2qGL4E_pk3z0MNKhYaYed51SJz2zrpeFz-6jNg99yoWvMCOZPN24Gxu6Gm0Be4wdWD5_vxEA" "http_authorization"

luoyu 1 (Fri, 12 Nov 2021 22:32:26 GMT):
Has joined the channel.

EmcLab (Sat, 13 Nov 2021 01:21:29 GMT):
Hi team, why it is so hard for 21.10.1 to start and sync, with reboot or systemctl. Some releases could be synced up very quickly but not 21.10.1

EmcLab (Sat, 13 Nov 2021 01:27:15 GMT):
2021-11-13 09:26:07.513+08:00 | main | DEBUG | NativeLibrary | Adding system paths: [/usr/lib/x86_64-linux-gnu, /lib/x86_64-linux-gnu, /usr/lib64, /lib64, /usr/lib, /lib, /usr/lib/x86_64-linux-gnu/libfakeroot] 2021-11-13 09:26:07.514+08:00 | main | DEBUG | NativeLibrary | Trying libsecp256k1.so 2021-11-13 09:26:07.514+08:00 | main | DEBUG | NativeLibrary | Loading failed with message: libsecp256k1.so: cannot open shared object file: No such file or directory 2021-11-13 09:26:07.514+08:00 | main | DEBUG | NativeLibrary | Looking for version variants

EmcLab (Sat, 13 Nov 2021 02:57:19 GMT):
Hi 'frankliawesome`, the jwt token starts to work after upgrading to 21.10.1. It was 21.10.0

chandra100100 (Sat, 13 Nov 2021 06:58:25 GMT):
Has joined the channel.

Beshir (Sat, 13 Nov 2021 08:44:54 GMT):
Has joined the channel.

VladimirRadeski (Sat, 13 Nov 2021 09:32:26 GMT):
Has joined the channel.

Clippo 3 (Sun, 14 Nov 2021 03:29:52 GMT):
Hey , hi

Clippo 3 (Sun, 14 Nov 2021 03:31:15 GMT):
I want to create a dapp for interact with a smart contract that is in the private network , i already try to use python but i got this error cause the private chain is PoA

Clippo 3 (Sun, 14 Nov 2021 03:32:17 GMT):
Mmm so what i want to do is create this dapp withouth the need of using metamask , i will give the provate key to it , or any thoughts of how can i extract that from the blockchain or the only path is to use java script?

manolaz (Sun, 14 Nov 2021 04:51:26 GMT):
Has joined the channel.

shadiayoub (Sun, 14 Nov 2021 06:15:18 GMT):
What is the error? BSC is PoA, and I figure you can deploy on BSC, so this may not be the issue. Anyway, in the Quorum-Dev-Quickstart you can find an example of a private transactions with a private key in it. This may help as an example.

shadiayoub (Sun, 14 Nov 2021 06:15:18 GMT):
What is the error? BSC is PoA, and I figure you can deploy on BSC, so this may not be the issue. Anyway, in the Quorum-Dev-Quickstart you can find an example of a private transactions with a private key in it. This may help as an example. @Clippo 3

Clippo 3 (Sun, 14 Nov 2021 18:35:57 GMT):
The error was that the hex was to large maybe u are using a PoA chain

Clippo 3 (Sun, 14 Nov 2021 18:36:30 GMT):
Sooo i give up in web3.py

Clippo 3 (Sun, 14 Nov 2021 18:43:18 GMT):
Yeah in docs there are examples but i can integrate that in to an api.rest? sorry i'm a little bit lost in it

shadiayoub (Sun, 14 Nov 2021 18:47:07 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=9HZ8k3oQcEuSmveDF) Can you try deploying it on BSC ?

Clippo 3 (Sun, 14 Nov 2021 20:04:33 GMT):
Sorry i don't get u

ivicaa (Sun, 14 Nov 2021 21:01:19 GMT):
With IBFT2.0, is it possible to change blockreward and blocktime via "transitions" after the network has started?

ivicaa (Sun, 14 Nov 2021 21:25:14 GMT):
There is a caution block in the documention: "The blockreward and miningbeneficiary properties cannot be updated once your network is started." Not sure if this is only in combination with miningbeneficiary or in general.

ivicaa (Sun, 14 Nov 2021 21:55:56 GMT):
looks like it's working. Just tried with one signer node to change blocktime and reward.

jframe (Sun, 14 Nov 2021 22:26:10 GMT):
It is possible using transitions to change the block period and mining block reward. Changing the block period was only just added in the in the most recent of Besu 21.10.1.

jframe (Sun, 14 Nov 2021 22:30:02 GMT):
That caution in the docs applies to either blockreward or miningbeneficary or in combination.

frankliawesome (Mon, 15 Nov 2021 00:20:30 GMT):
Very interesting, we have another patch on JWT coming soon, if it works on the latest version I would go with that first

GarySchulte (Mon, 15 Nov 2021 01:04:24 GMT):
It looks like x86-64 linux. What network are you trying to sync? Do you have any static peers set?

GarySchulte (Mon, 15 Nov 2021 01:07:14 GMT):
are you running in docker?

xeon123 (Mon, 15 Nov 2021 08:54:54 GMT):
Has joined the channel.

Salt4f (Mon, 15 Nov 2021 09:46:53 GMT):
Has joined the channel.

ivicaa (Mon, 15 Nov 2021 10:05:56 GMT):
changing the blockrewards also worked fine.. so that's what is confusing me. for miningbeneficary it looks like this is not taken into the account on a transition.

ybuser (Mon, 15 Nov 2021 12:06:48 GMT):
Has joined the channel.

matijasipek (Mon, 15 Nov 2021 12:21:34 GMT):
Has joined the channel.

amit1nayak (Mon, 15 Nov 2021 12:33:31 GMT):
Has joined the channel.

RajaDhanushkodi (Mon, 15 Nov 2021 12:48:59 GMT):
Has joined the channel.

sidharthan.j (Mon, 15 Nov 2021 14:08:36 GMT):
Has joined the channel.

MarioMichel (Mon, 15 Nov 2021 14:19:46 GMT):
Has joined the channel.

MarioMichel (Mon, 15 Nov 2021 14:20:56 GMT):
Hello can someone help me with setting up the Hyperledger Explorer and the stats page ? I already have this deployed and working https://grafana.mariomichel.com/d/5S-6O8VZk/hyperledger-besu-node-at-ethereum-classic?orgId=1&from=now-12h&to=now

matejstern (Mon, 15 Nov 2021 14:57:24 GMT):
Has joined the channel.

elenaizaguirre (Mon, 15 Nov 2021 15:54:06 GMT):
Has joined the channel.

matisalimba (Mon, 15 Nov 2021 17:24:38 GMT):
Has joined the channel.

RyanKoch (Mon, 15 Nov 2021 19:51:01 GMT):
Has joined the channel.

AlexTran (Mon, 15 Nov 2021 20:58:47 GMT):
Has joined the channel.

jframe (Mon, 15 Nov 2021 22:45:30 GMT):
I should have clarified that blockrewards is also supported for transitions, documentation is coming soon for that we only just added that feature. So it is possible to change the validators, block period and block reward for IBFT2 and QBFT. Yes it isn't possible for change the mining beneficiary using a transition right now.

panicstyle (Tue, 16 Nov 2021 01:02:10 GMT):
Has joined the channel.

lucassaldanha (Tue, 16 Nov 2021 02:16:01 GMT):
I am not familiar with Hyperledger Explorer but it looks like it works with Fabric and Iroha. I don't know if it supports Besu. The best place to ask for help will be: https://chat.hyperledger.org/channel/hyperledger-explorer

mamba2017 (Tue, 16 Nov 2021 02:24:05 GMT):
Has joined the channel.

shadiayoub (Tue, 16 Nov 2021 08:16:41 GMT):
I too don't think they support Besu. I use Expedition explorer but it needs some UI work to look prettier.

shadiayoub (Tue, 16 Nov 2021 08:19:13 GMT):
Try to deploy the same contract to BSC. As it's PoA... And see if it gives you the same error. Just a suggestion to troubleshoot

PHAGUNJAIN (Tue, 16 Nov 2021 08:43:43 GMT):
Has joined the channel.

MiguelCabeza (Tue, 16 Nov 2021 10:17:07 GMT):
Has joined the channel.

Helsonkumar (Tue, 16 Nov 2021 13:49:35 GMT):
Has joined the channel.

xlswirlds (Tue, 16 Nov 2021 15:31:16 GMT):
Has joined the channel.

Clippo 3 (Tue, 16 Nov 2021 16:43:15 GMT):
Hey can someone help with interacting with deployed contracts in besu docs don't do nothing

smannathan (Tue, 16 Nov 2021 17:11:28 GMT):
Has joined the channel.

diegoll (Tue, 16 Nov 2021 17:13:12 GMT):
There is nothing specific in Besu for interacting with your contracts. If you have [RPC enabled](https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#rpc-http-enabled) you can use any 3rd party library to interact through JSON-RPC with your contract. E.g. [ethers](https://docs.ethers.io/) and [web3.js](https://web3js.readthedocs.io)

ivicaa (Tue, 16 Nov 2021 20:16:35 GMT):
Regarding on-chain permissioning for nodes/accounts: the howto is with predefined ingress contracts in the genesis file. Is it possible to start unpermissioned and then deploy onchain permissioning later? I.e. without predefined ingress contracts in genesis, but later regularly deployed?

lucassaldanha (Tue, 16 Nov 2021 21:14:01 GMT):
Yes. You can start the network without permissioning, deploy your contract, and then restart the nodes with permissioning enabled, using the deployed contract address.

lucassaldanha (Tue, 16 Nov 2021 21:16:58 GMT):
If you are doing this, it is probably a good idea to start the network with a single node. After the contract and the rules are ready, you add more nodes to the network, and they will sync up the chain and start using the rules.

ivicaa (Tue, 16 Nov 2021 21:18:17 GMT):
great.. thanks. I was afraid that the predefined ingress contract in the genesis file are mandatory.

hegde.rahul (Wed, 17 Nov 2021 01:20:10 GMT):
Has joined the channel.

Bert (Wed, 17 Nov 2021 01:53:41 GMT):
Has joined the channel.

Arjen (Wed, 17 Nov 2021 09:23:29 GMT):
Has joined the channel.

reddevil (Wed, 17 Nov 2021 10:52:01 GMT):
Hi there, does Besu have a local transaction journal that can be recovered from the disk? I'm trying to determine if, like geth, there's a local journal that can be copied over when a node is being restored from another node's database backup

reddevil (Wed, 17 Nov 2021 10:53:49 GMT):
`geth` generates a `transactions.rlp`, which contains pending/queued txns submitted to the node and that file can be restored in lieu of resubmitting transactions after a node is restored using a manual recovery (for example, using backup from another node)

beeraaron81 (Wed, 17 Nov 2021 13:01:11 GMT):
Has joined the channel.

beeraaron81 (Wed, 17 Nov 2021 13:03:54 GMT):
Has left the channel.

ivicaa (Wed, 17 Nov 2021 13:09:35 GMT):
For IBFT2.0.. I assume since it's PBFT-like voting mechanism, the complexity for voting messages increases O(n^2)? what would be a good enough sweet spot in regard to complexity/performance vs decentralization? Something between 10 - 20 validators?

samsonlarsson (Wed, 17 Nov 2021 14:02:08 GMT):
Has joined the channel.

EmilioFL (Wed, 17 Nov 2021 22:13:16 GMT):
Has joined the channel.

Clippo 3 (Wed, 17 Nov 2021 22:27:16 GMT):
Error: Returned error: The method eth_sendTransaction is not supported. Use eth_sendRawTransaction to send a signed transaction to Besu.

Clippo 3 (Wed, 17 Nov 2021 22:27:51 GMT):
im a little stuck in it , the docs says i should use eth signer but seriously i dont get it

shemnon (Wed, 17 Nov 2021 22:32:34 GMT):
Besu doesn't manage private keys. EthSigner does and serves as an intemediary between your node and your client code.

Clippo 3 (Wed, 17 Nov 2021 22:45:11 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=Ti32okpEyguNz4vgw) I don't get how i can use that , cause to use eth signer to do a v3vaultkey and what do u do with that cause it's only the private and a password , how can u do that with a deployed contract , cause the rawmethod of besu rpc-json only take one parameter to work.

shemnon (Wed, 17 Nov 2021 22:53:04 GMT):
The raw parameter is the fully signed transaction. eth_signTransaction takes all those pieces, adds a signature from your private key, and generates the single parameter then feeds it into the same logic as eth_sendRawTransaction.

shemnon (Wed, 17 Nov 2021 22:53:42 GMT):
EthSigner does the same, but instead of seding it to an interlal method for eth_sendRawTransaction it sends that byte array to the besu node via eth_sendRawTransaction

macfarla (Wed, 17 Nov 2021 23:16:13 GMT):
@Clippo 3 it might help to look at the web3js-quorum examples to see how they work - you can follow the examples to sign and send the tx https://besu.hyperledger.org/en/stable/HowTo/Interact/Client-Libraries/web3js-quorum/ - or you can run EthSigner alongside Besu and just send your eth_sendTransaction to EthSigner and it will sign and send to Besu.

MarioMichel (Wed, 17 Nov 2021 23:37:52 GMT):
@shadiayoub Thanks for the info but seems that I can't even make the RPC available :( {"message":"Host not authorized."}root@mm-nrb-srv-01:~/etc# curl http://localhost:8545

MarioMichel (Wed, 17 Nov 2021 23:38:37 GMT):
version: '3.3' networks: web: external: true back-tier: null services: besu: ports: - '8545:8545' - '30303:30303' - '9545:9545' image: 'hyperledger/besu:21.10.2' volumes: - '/mnt/tank/besu/classic/:/var/lib/besu/' environment: - BESU_NETWORK=classic - BESU_DATA_PATH=/var/lib/besu/ - BESU_MAX_PEERS=1000 - BESU_METRICS_ENABLED=true - BESU_METRICS_HOST=0.0.0.0 - BESU_METRICS_PORT=9545 - BESU_HOST_ALLOWLIST="*" - BESU_RPC_HTTP_ENABLED=true - BESU_RPC_HTTP_HOST=0.0.0.0 - BESU_RPC_HTTP_CORS_ORIGINS="all" - BESU_RPC_HTTP_AUTHENTICATION_ENABLED=false - BESU_RPC_WS_ENABLED=true - BESU_RPC_WS_API=ETH,NET,WEB3 - BESU_GRAPHQL_HTTP_ENABLED=true - BESU_GRAPHQL_HTTP_HOST=0.0.0.0

MarioMichel (Wed, 17 Nov 2021 23:38:37 GMT):
version: '3.3' networks: web: external: true back-tier: null services: besu: ports: - '8545:8545' - '30303:30303' - '9545:9545' image: 'hyperledger/besu:21.10.2' volumes: - '/mnt/tank/besu/classic/:/var/lib/besu/' environment: - BESU_NETWORK=classic - BESU_DATA_PATH=/var/lib/besu/ - BESU_MAX_PEERS=1000 - BESU_METRICS_ENABLED=true - BESU_METRICS_HOST=0.0.0.0 - BESU_METRICS_PORT=9545 - BESU_HOST_ALLOWLIST="*" - BESU_RPC_HTTP_ENABLED=true - BESU_RPC_HTTP_HOST=0.0.0.0 - BESU_RPC_HTTP_PORT=8545 - BESU_RPC_HTTP_CORS_ORIGINS="all" - BESU_RPC_HTTP_AUTHENTICATION_ENABLED=false - BESU_RPC_WS_ENABLED=true - BESU_RPC_WS_API=ETH,NET,WEB3

shadiayoub (Thu, 18 Nov 2021 06:14:56 GMT):
This has been happening with me too. I cannot figure it out still. I cannot get the api running and not figuring out the reason. It works only when running the quickstart, Quorum's and Dev's.

damianlluch (Thu, 18 Nov 2021 10:19:41 GMT):
Hi, we have a problem with our Besu nodes, they run out of space after a while, they consume a lot of disk space. I have read somewhere that with the use of Merklee Trees it is possible to solve this issue. I have not found anything in the documentation about this issue, is it possible with Hyperledger Besu to work with this technology? Thanks

madelinemurray (Thu, 18 Nov 2021 10:33:52 GMT):
Yes, the message complexity is O(n^2) where n is the number of validators.

joymondal (Thu, 18 Nov 2021 10:34:15 GMT):
Has joined the channel.

damianlluch (Thu, 18 Nov 2021 11:00:27 GMT):
Hi, we have a blockscout problem with our Besu nodes, the AWS instance where we have running the block explorer run out of space after a while, we hardly use the nodes, and it consumes a lot of disk space. Any idea how to solve this problem? Thanks

MarioMichel (Thu, 18 Nov 2021 11:22:20 GMT):
Hmmm I do use all docker in a docker-compose file. https://github.com/MrMarioMichel/hyperledger-besu-etc-node/blob/main/docker-compose.yml

loziniak (Thu, 18 Nov 2021 13:13:40 GMT):
We have this problem also. Perhaps it's possible to produce only populated blocks, omitting empty ones. We're investigating this.

diegoll (Thu, 18 Nov 2021 13:29:53 GMT):
I don't know exactly the requirements behind blockscout in terms of services provided by the node. But if it barely needs a client to emit events for every block to put them into some indexed storage for their frontend, you can give it a try to sync a Besu node using the Bonsai data storage. You can read a little more about it in a [recent post](https://consensys.net/blog/news/bonsai-tries-a-big-update-for-small-state-storage-in-hyperledger-besu/) from the Consensys blog

RoboCopsGoneMad (Thu, 18 Nov 2021 14:22:39 GMT):
No, Besu does not do this. Can you tell me a little bit about this use case? Is this for a Clique network?

ArneGebert (Thu, 18 Nov 2021 14:31:05 GMT):
Has joined the channel.

ArneGebert (Thu, 18 Nov 2021 14:35:54 GMT):
Hi there! Quick question: is it possible to set the `blockperiodseconds` in IBFT 2.0 to a value smaller than <1 second? I tried doing so (I set it to 0.99, was 1 before) but based on what I observe I _think_ for values smaller than <1 second, or non-integers in general, Besu (latest release, 21.10.2) just uses a default value instead (but I don't see anything about this happening in the logs).

ArneGebert (Thu, 18 Nov 2021 14:35:54 GMT):
Hi there! Quick question: is it possible to set the `blockperiodseconds` in [IBFT 2.0](https://besu.hyperledger.org/en/stable/HowTo/Configure/Consensus-Protocols/IBFT/#block-time) to a value smaller than <1 second? I tried doing so (I set it to 0.99, was 1 before) but based on what I observe I _think_ for values smaller than <1 second, or non-integers in general, Besu (latest release, 21.10.2) just uses a default value instead (but I don't see anything about this happening in the logs).

shadiayoub (Thu, 18 Nov 2021 14:36:46 GMT):
I set it to 0.5 and it worked.

ArneGebert (Thu, 18 Nov 2021 14:39:29 GMT):
Hmm, and are you certain that it actually uses 0.5? I was using 1s before and when I use 0.99s I see a lot of timeouts that I didn't see before

ayushraj8271 (Thu, 18 Nov 2021 15:52:47 GMT):
Has joined the channel.

reddevil (Thu, 18 Nov 2021 16:42:47 GMT):
No, this is for an IBFT network (running in Kaleido). For Quorum, when there's a situation where chaindata in a node is unrecoverable due to errors, we restore the node by using a backup. We also restore the `transactions.rlp` that is copied out before restoring, to ensure that any locally submitted transactions get re-submitted on start up. In Besu, we recently ran into ``` 2021-11-15 19:19:38.244+00:00 | main | INFO | DatabaseMetadata | Lookup database metadata file in data directory: /qdata/ethereum 2021-11-15 19:19:38.421+00:00 | main | INFO | RocksDBKeyValueStorageFactory | Existing database detected at /qdata/ethereum. Version 1 org.rocksdb.RocksDBException: SST file is ahead of WALs ``` for which restoring the node from a backup or have it catch up all the way from the start is the solution

hitesh.sharma.06 (Thu, 18 Nov 2021 17:03:45 GMT):
Has joined the channel.

shadiayoub (Thu, 18 Nov 2021 17:05:02 GMT):
It's producing blocks every 0.5 sec, so I suppose it's working.

AshokkumarMdx (Thu, 18 Nov 2021 17:46:21 GMT):
Has joined the channel.

LEOISHere (Thu, 18 Nov 2021 19:11:05 GMT):
Hi everyone. Have recently joined and going through besu docs to get better idea of the framework. I've looked at the contribution docs and was wondering if this is a good project for first time open source contribution?

LEOISHere (Thu, 18 Nov 2021 19:12:33 GMT):
perhaps someone has a good first issue they'd be interested in pointing me in that direction and any prereqs?

LEOISHere (Thu, 18 Nov 2021 19:15:01 GMT):
suffering from a bit of information overload the past few days lol

Adyntec (Thu, 18 Nov 2021 20:09:37 GMT):
Has joined the channel.

MarioMichel (Thu, 18 Nov 2021 20:13:53 GMT):
Hello I am getting a "Host Not Authorized" from the Besu RPC API and this is my config ````` ` environment: - BESU_NETWORK=classic - BESU_DATA_PATH=/var/lib/besu/ - BESU_MAX_PEERS=1000 - BESU_METRICS_ENABLED=true - BESU_METRICS_HOST=0.0.0.0 - BESU_METRICS_PORT=9545 - BESU_HOST_ALLOWLIST=127.0.0.1 - BESU_HOST_WHITELIST=127.0.0.1 - BESU_HOST_ALLOWLIST="*" - BESU_RPC_HTTP_ENABLED=true - BESU_RPC_HTTP_HOST=0.0.0.0 - BESU_RPC_HTTP_PORT=8545 - BESU_RPC_HTTP_CORS_ORIGINS="all" - BESU_RPC_HTTP_API=ETH,NET,WEB3 - BESU_RPC_HTTP_AUTHENTICATION_ENABLED=false - BESU_RPC_WS_ENABLED=true - BESU_RPC_WS_API=ETH,NET,WEB3 ` ```

bgravenorst (Thu, 18 Nov 2021 20:20:34 GMT):
Hi @LEOISHere :wave: Besu is a good project for your first time time contribution. And there's a helpful bunch of documenters available to help should you get stuck :) You mentioned that you've looked at the contribution docs? If you get stuck with any of the steps, give us a shout and we'll get you unstuck. https://wiki.hyperledger.org/display/BESU/First+contribution *Important*: Each commit you make must include your signature to avoid DCO errors. See https://wiki.hyperledger.org/display/BESU/DCO

bgravenorst (Thu, 18 Nov 2021 20:21:01 GMT):
We generally label issues as "Good first issue" for folks that want something less complicated to document. You can find that list here. I'll go through the backlog and see if any others can be marked as such. https://github.com/hyperledger/besu-docs/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22

shemnon (Thu, 18 Nov 2021 20:22:08 GMT):
Use only one of allowlist and whitelist. Drop the whitelist. Also, opening rpc to "*" is not advised in production.

MarioMichel (Thu, 18 Nov 2021 20:23:25 GMT):
@shemnon I just tried to find the issue with that "*" option

jframe (Thu, 18 Nov 2021 22:39:34 GMT):
There are some results on performance testing that was done on IBFT2 on the wiki https://wiki.hyperledger.org/display/BESU/Maximum+Validator+count+for+an+IBFT2+Network

jframe (Thu, 18 Nov 2021 22:41:56 GMT):
IBFT2 was able to safely handle up to 30 validators beyond that there was some performance degradation. So IBFT2 should be handle 10-20 validators without any issue.

gad0lim (Fri, 19 Nov 2021 01:22:34 GMT):
Has joined the channel.

gad0lim (Fri, 19 Nov 2021 01:22:35 GMT):
missing some basic thing - I had one bootnode and started 2 nodes (clique), nodes connect but they only import and not produce - what;s the magic I am missing?

indongkim (Fri, 19 Nov 2021 01:39:20 GMT):
I want to translate this page to Korean 'https://besu.hyperledger.org/en/stable/' . Is there any way to do contribute?

bgravenorst (Fri, 19 Nov 2021 03:48:58 GMT):
Hi @indongkim, we currently don't have any translations for Hyperledger Besu, and therefore no real process to contribute as yet. However if it's something you are eager to pursue then we'll gladly try and help. Is it the entire document that you would like to translate? Or is it just that first page?

frankliawesome (Fri, 19 Nov 2021 05:04:20 GMT):
Hey @LEOISHere I started this month working on Besu and this was my first PR https://github.com/hyperledger/besu/pull/2970 start with looking at issues tagged with 'good first issue' and find ones you're comfortable with, if you get stuck you can always reach out here.

SanjayRS (Fri, 19 Nov 2021 07:44:05 GMT):
Has joined the channel.

NicolasMassart (Fri, 19 Nov 2021 10:04:00 GMT):
Hi @indongkim , also you can easily automatically translate using translation tools like Google Translate. Have you tried https://besu-hyperledger-org.translate.goog/en/stable/?_x_tr_sl=auto&_x_tr_tl=ko&_x_tr_hl=en-GB&_x_tr_pto=nui ? It's probably not as good as a manual translation, but Besu doc sentences are very simple and should not be too hard to understand for these robots.

ArneGebert (Fri, 19 Nov 2021 10:32:45 GMT):
Hmm, alright, I'm not sure why I'm seeing what I'm seeing then. Thank you nonetheless!

maciej_ol (Fri, 19 Nov 2021 10:41:31 GMT):
Has joined the channel.

bondasoup (Fri, 19 Nov 2021 12:43:12 GMT):
Has joined the channel.

SuzanaMaranhao (Fri, 19 Nov 2021 13:55:45 GMT):
I saw that it is possible to define a log filter in Besu using eth_newFilter. I did not find a method to remove this kind of log filter. How to do it?

NicolasMassart (Fri, 19 Nov 2021 14:00:58 GMT):
This seems to be only in latest doc version, but there's a `eth_uninstallFilter` method: https://besu.hyperledger.org/en/latest/Reference/API-Methods/#eth_uninstallfilter

NicolasMassart (Fri, 19 Nov 2021 14:00:58 GMT):
~This seems to be only in latest doc version, but~ there's a `eth_uninstallFilter` method: https://besu.hyperledger.org/en/latest/Reference/API-Methods/#eth_uninstallfilter~

NicolasMassart (Fri, 19 Nov 2021 14:00:58 GMT):
~This seems to be only in latest doc version, but~ there's a `eth_uninstallFilter` method: https://besu.hyperledger.org/en/latest/Reference/API-Methods/#eth_uninstallfilter

SuzanaMaranhao (Fri, 19 Nov 2021 14:02:45 GMT):
It really is!!! I was looking for removeFilter or changeFilter, things like that. Thanks

NicolasMassart (Fri, 19 Nov 2021 14:06:20 GMT):
You may try it with the satable besu version 21.10.2, sometimes it's just that doc takes some time to be completely up to date.

NicolasMassart (Fri, 19 Nov 2021 14:06:20 GMT):
You may try it with the stable Besu version 21.10.2, sometimes it's just that doc takes some time to be completely up to date.

NicolasMassart (Fri, 19 Nov 2021 14:06:20 GMT):
~You may try it with the stable Besu version 21.10.2, sometimes it's just that doc takes some time to be completely up to date.~

SuzanaMaranhao (Fri, 19 Nov 2021 14:07:25 GMT):
Does it only work on version 21.10.2 and above?

NicolasMassart (Fri, 19 Nov 2021 14:07:45 GMT):
Let me check ;)

NicolasMassart (Fri, 19 Nov 2021 14:10:54 GMT):
Yes I think it's in the API since ... forever...

SuzanaMaranhao (Fri, 19 Nov 2021 14:11:17 GMT):
:-)

NicolasMassart (Fri, 19 Nov 2021 14:14:11 GMT):
Forget what I said about the doc not being up to date (I hope I did not made my colleagues who wrote it too angry), it's in the doc since forever too, I did not search correctly probably...

NicolasMassart (Fri, 19 Nov 2021 14:14:11 GMT):
Forget what I said about the doc not being up to date (I hope I did not make my colleagues who wrote it too angry), it's in the doc since forever too, I did not search correctly probably...

SuzanaMaranhao (Fri, 19 Nov 2021 14:25:29 GMT):
great, thanks

shadiayoub (Fri, 19 Nov 2021 14:46:47 GMT):
Did you try something like 0.5 ?

gad0lim (Fri, 19 Nov 2021 17:22:58 GMT):
missing some basic thing - I had one bootnode and started 2 nodes (clique), nodes connect but they only import and not produce - what;s the magic I am missing?

gad0lim (Fri, 19 Nov 2021 17:22:58 GMT):
LMTA, I have one bootnode and started 2 nodes. Those nodes connect to bootnode, import blocks fine, but never producer block? Is there sth basic I am missing?

gad0lim (Fri, 19 Nov 2021 17:22:58 GMT):
let me give it one more shot. asking for quick clarification. I have one bootnode and started 2 nodes. Those nodes connect to bootnode, import blocks fine, but never producer block? Is there sth basic I am missing?

gad0lim (Fri, 19 Nov 2021 17:22:58 GMT):
let me give it one more shot. asking for quick clarification. I have one bootnode and started 2 nodes. Those nodes connect to bootnode, import blocks fine, but never produce block? I was expecting they would take turns. Is there sth basic I am missing?

gad0lim (Fri, 19 Nov 2021 17:22:58 GMT):
Asking for quick clarification. I have one bootnode and started 2 nodes. Those nodes connect to bootnode, import blocks fine, but never produce block? I was expecting they would take turns. Is there sth basic I am missing?

shadiayoub (Fri, 19 Nov 2021 17:59:01 GMT):
Perhaps it's an election thing. So it's kinda normal. But let's wait for the experts' opinion

NicolasMassart (Fri, 19 Nov 2021 18:00:02 GMT):
Bootnodes != validators or miner nodes. What consensus are you using? PoW, IBFT2?

shadiayoub (Fri, 19 Nov 2021 18:00:49 GMT):
I suppose Clique.. Since they're 3 nodes

NicolasMassart (Fri, 19 Nov 2021 18:02:09 GMT):
Not sure we can deduce that but yes you are right, Clique is also an option. So Clique, PoW (Eth) or IBFT2?

Tim98390383 (Fri, 19 Nov 2021 20:53:22 GMT):
Has joined the channel.

uvdsl (Fri, 19 Nov 2021 22:24:46 GMT):
Has joined the channel.

MarioMichel (Fri, 19 Nov 2021 22:45:40 GMT):
can I somewhere see a list of all enode connected ?

gad0lim (Sat, 20 Nov 2021 05:39:41 GMT):
Clique

gad0lim (Sat, 20 Nov 2021 05:40:12 GMT):
hey, sorry missed the indent question. Private network with Clique

Kanishk-Kumar24 (Sat, 20 Nov 2021 05:45:19 GMT):
Has joined the channel.

ivicaa (Sat, 20 Nov 2021 06:50:51 GMT):
I hoped an easy way to access besu IBFT API would be to use goquorum and attach it to besu RPC port: `docker run --rm -it --name goquorum --network container:besu_node quorumengineering/quorum attach http://localhost:8545`. However, I can not see ibft or any other additional api being offered when calling `web3` on console.

ivicaa (Sat, 20 Nov 2021 06:50:51 GMT):
I hoped an easy way to access besu IBFT API would be to use goquorum and attach it to besu RPC port: `docker run --rm -it --name goquorum --network container:besu_node quorumengineering/quorum attach http://localhost:8545`. However, I can not see ibft or any other additional api being offered when calling `web3` on the console.

ivicaa (Sat, 20 Nov 2021 06:50:51 GMT):
I hoped an easy way to access besu IBFT API would be to use goquorum and attach it to besu RPC port: `docker run --rm -it --name goquorum --network container:besu_node quorumengineering/quorum attach http://localhost:8545`. However, I can not see ibft or any other additional api being offered when calling `web3` on the goethereum console.

ivicaa (Sat, 20 Nov 2021 06:52:49 GMT):
Another question regarding mixing goquorum and besu in a IBFT2 network: can goquorum also handle transitions in the same way like besu can?

ivicaa (Sat, 20 Nov 2021 06:59:16 GMT):
I just noticed the JSON RPC methods for ibft in goquroum and besu are called differently..

ArneGebert (Sat, 20 Nov 2021 10:03:28 GMT):
Yeah, I tried 0.5. I actually ended up opening an issue/bug report: https://github.com/hyperledger/besu/issues/3088

lonis (Sat, 20 Nov 2021 18:09:02 GMT):
Has joined the channel.

MarioMichel (Sat, 20 Nov 2021 21:06:25 GMT):
does someone use Besu with Expedition ? can some one help me thanks!

markatag (Sun, 21 Nov 2021 10:02:24 GMT):
hi..has anyone created an explorer using blockscout for private network?

markatag (Sun, 21 Nov 2021 10:05:14 GMT):
I searched here and seems others are having issues...we need it for the same reason others do..display of ERC tokens and similar

markatag (Sun, 21 Nov 2021 10:05:14 GMT):
I searched here and seems others are having issues...we need it for the same reason others do..display of ERC tokens and similar, and Alethio Light doesn;t do all that

shadiayoub (Sun, 21 Nov 2021 13:09:56 GMT):
I use Expedition and Epirus free. Both work like a charm.

shadiayoub (Sun, 21 Nov 2021 13:10:19 GMT):
I have.

shadiayoub (Sun, 21 Nov 2021 13:10:19 GMT):
I have. I hope I can help..

shadiayoub (Sun, 21 Nov 2021 13:17:04 GMT):
Is there a web wallet for Ethereum, other than MEW, that's open source?

lucassaldanha (Sun, 21 Nov 2021 20:12:31 GMT):
Could you clarify what do you mean by "handle transitions in the same way like besu can"? Are you talking about some specific feature re transactions? Or are you considering performance?

ivicaa (Sun, 21 Nov 2021 22:10:23 GMT):
@lucassaldanha besu can add transitions in the genesis file to reconfigure network parameters like blockrewards and blocktimes. If goquorum and besu ibft are compatible, are there similar transition mechanisms in goquorum like in besu?

lucassaldanha (Mon, 22 Nov 2021 00:40:22 GMT):
Ah sorry, I believe I misread transition (I thought you were asking about transactions). My bad! I'll ask someone from the GoQuorum team about this and get back to you.

indongkim (Mon, 22 Nov 2021 01:28:49 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=Big9qwBCL43mQEzd8) I started studying Besu a while ago. There is very little Besu information in Korean, so it will be helpful for other Korean developers to translate while studying. I want contribute to all page.

ShumanCapote (Mon, 22 Nov 2021 05:12:12 GMT):
Has joined the channel.

ThomasRitter (Mon, 22 Nov 2021 05:28:23 GMT):
Has joined the channel.

frankliawesome (Mon, 22 Nov 2021 06:17:26 GMT):
https://besu.hyperledger.org/en/stable/Reference/API-Methods/#admin_peers is this what you're looking for?

saurabhSAG (Mon, 22 Nov 2021 08:31:14 GMT):
Has joined the channel.

antonydenyer (Mon, 22 Nov 2021 08:45:41 GMT):
GoQuorum does not support the notion of transitions. You can not 'fork' the network with a new Genesis, there is an exception to this. You can migrate from IBFT to QBFT at a specific block height (testQBFTBlock). https://docs.goquorum.consensys.net/en/stable/HowTo/Configure/Consensus-Protocols/QBFT/#migrating-from-ibft-to-qbft

Sharonmunyao (Mon, 22 Nov 2021 09:46:40 GMT):
Has joined the channel.

ArneGebert (Mon, 22 Nov 2021 13:53:16 GMT):
Is there a recommended way to do off-chain storage with Besu? As far as I understand, using private transactions essentially achieves off-chain storage but adds a lot of complexity due to also having to configure and deploy the Tessera nodes and due to needing to send private transactions. Are there other recommended alternatives if I don't need the privacy features?

Clippo 3 (Mon, 22 Nov 2021 15:00:28 GMT):
Hey i'm trying to do the same and i'm on it for two weeks and still not find a way to do it in a rigth way

loziniak (Mon, 22 Nov 2021 15:02:20 GMT):
This is probably similar to off-chain storage in every other Ethereum client, so there's plenty documentation out there. IPFS seems to be very popular for the purpose.

Joesv (Mon, 22 Nov 2021 16:24:44 GMT):
Has joined the channel.

ArneGebert (Mon, 22 Nov 2021 16:41:07 GMT):
Thanks, that is helpful :) Do you, or anyone, else know whether Tessera or IPFS will tend to give a better overall latency/performance (given that whatever we store off-chain, we also have to retrieve..)?

krishnabayanna (Mon, 22 Nov 2021 17:14:52 GMT):
Has joined the channel.

TheoKneen (Mon, 22 Nov 2021 17:25:27 GMT):
Has joined the channel.

MarioMichel (Mon, 22 Nov 2021 17:52:36 GMT):
Yes sems so but i do get this response :( `}root@mm-nrb-srv-01:~# curl -X POST --data '{"jsonrpc":"2.0","id":"1","method":"admin_peers","params":[]}' http://127.0.0.1:8545 { "jsonrpc" : "2.0", "id" : "1", "error" : { "code" : -32604, "message" : "Method not enabled" } `

MarioMichel (Mon, 22 Nov 2021 17:52:36 GMT):
Yes sems so but i do get this response :( `}root@mm-nrb-srv-01:~# curl -X POST --data '{"jsonrpc":"2.0","id":"1","method":"admin_peers","params":[]}' http://127.0.0.1:8545 { "jsonrpc" : "2.0", "id" : "1", "error" : { "code" : -32604, "message" : "Method not enabled" } `

MarioMichel (Mon, 22 Nov 2021 17:52:36 GMT):
Yes sems so but i do get this response :( ```}root@mm-nrb-srv-01:~# curl -X POST --data '{"jsonrpc":"2.0","id":"1","method":"admin_peers","params":[]}' http://127.0.0.1:8545 { "jsonrpc" : "2.0", "id" : "1", "error" : { "code" : -32604, "message" : "Method not enabled" } ```

MarioMichel (Mon, 22 Nov 2021 17:52:36 GMT):
Yes sems so but i do get this response :( ```root@mm-nrb-srv-01:~# curl -X POST --data '{"jsonrpc":"2.0","id":"1","method":"admin_peers","params":[]}' http://127.0.0.1:8545 { "jsonrpc" : "2.0", "id" : "1", "error" : { "code" : -32604, "message" : "Method not enabled" } ```

MarioMichel (Mon, 22 Nov 2021 17:54:37 GMT):
```` ```

MarioMichel (Mon, 22 Nov 2021 17:54:37 GMT):
``` ```

MarioMichel (Mon, 22 Nov 2021 17:54:37 GMT):
``` - BESU_NETWORK=classic - BESU_DATA_PATH=/var/lib/besu/ - BESU_MAX_PEERS=1000 - BESU_METRICS_ENABLED=true - BESU_METRICS_HOST=0.0.0.0 - BESU_METRICS_PORT=9545 - BESU_RPC_HTTP_ENABLED=true - BESU_RPC_HTTP_HOST=0.0.0.0 # - BESU_HOST_ALLOWLIST=167.86.100.59,127.0.0.1 - BESU_HOST_WHITELIST=167.86.100.59,127.0.0.1,192.168.96.3 # - BESU_HOST_ALLOWLIST="*" # - BESU_HOST_WHITELIST="*" # - BESU_LOGGING=DEBUG - BESU_HOST_ALLOWLIST="*" - BESU_RPC_HTTP_PORT=8545 - BESU_RPC_HTTP_CORS_ORIGINS="all" - BESU_RPC_HTTP_API=ETH,NET,WEB3 - BESU_RPC_HTTP_AUTHENTICATION_ENABLED=false - BESU_RPC_WS_ENABLED=true - BESU_RPC_WS_API=ETH,NET,WEB3 # - BESU_GRAPHQL_HTTP_ENABLED=true # - BESU_GRAPHQL_HTTP_HOST=0.0.0.0 ```

MarioMichel (Mon, 22 Nov 2021 17:56:09 GMT):
Does it work for you ? I do have I guess found the issue from me or did you configure something special ? https://github.com/xops/expedition/issues/12

shadiayoub (Mon, 22 Nov 2021 17:58:23 GMT):
Works out of the box.

MarioMichel (Mon, 22 Nov 2021 17:59:17 GMT):
Hmmmm do you have it setup on bare bone or via e.g Docker ?

MarioMichel (Mon, 22 Nov 2021 17:59:55 GMT):
can you do for me ``curl -X POST --data '{"jsonrpc":"2.0","id":"1","method":"admin_peers","params":[]}' http://127.0.0.1:8545 curl -X POST --data '{"jsonrpc":"2.0","id":"1","method":"eth_blockNumber","params":[]}' http://127.0.0.1:8545``

MarioMichel (Mon, 22 Nov 2021 17:59:55 GMT):
can you do for me ````curl -X POST --data '{"jsonrpc":"2.0","id":"1","method":"admin_peers","params":[]}' http://127.0.0.1:8545 curl -X POST --data '{"jsonrpc":"2.0","id":"1","method":"eth_blockNumber","params":[]}' http://127.0.0.1:8545`````` ```

MarioMichel (Mon, 22 Nov 2021 17:59:55 GMT):
can you do for me ````curl -X POST --data '{"jsonrpc":"2.0","id":"1","method":"admin_peers","params":[]}' http://127.0.0.1:8545 curl -X POST --data '{"jsonrpc":"2.0","id":"1","method":"eth_blockNumber","params":[]}' http://127.0.0.1:8545````

MarioMichel (Mon, 22 Nov 2021 17:59:55 GMT):
can you do for me ````curl -X POST --data '{"jsonrpc":"2.0","id":"1","method":"admin_peers","params":[]}' http://127.0.0.1:8545 curl -X POST --data '{"jsonrpc":"2.0","id":"1","method":"eth_blockNumber","params":[]}' http://127.0.0.1:8545```

MarioMichel (Mon, 22 Nov 2021 18:00:54 GMT):
I want to see if I found the issue or i am looking at the wrong

shadiayoub (Mon, 22 Nov 2021 18:01:07 GMT):
Barebone, as in the README

MarioMichel (Mon, 22 Nov 2021 18:01:23 GMT):
hmmm mabye therefore.

shadiayoub (Mon, 22 Nov 2021 18:01:50 GMT):
http://scan.oho.ai

shadiayoub (Mon, 22 Nov 2021 18:01:59 GMT):
https://scan.dexioprotocol.com/

shadiayoub (Mon, 22 Nov 2021 18:02:19 GMT):
Really did nothing special.

MarioMichel (Mon, 22 Nov 2021 18:03:14 GMT):
German ?

MarioMichel (Mon, 22 Nov 2021 18:06:35 GMT):
do you want to share your environment settings ?

shadiayoub (Mon, 22 Nov 2021 18:07:22 GMT):
Not German. Sure. What do you want me to share?

MarioMichel (Mon, 22 Nov 2021 18:07:52 GMT):
`` environment: - BESU_NETWORK=classic - BESU_DATA_PATH=/var/lib/besu/ - BESU_MAX_PEERS=1000 - BESU_METRICS_ENABLED=true - BESU_METRICS_HOST=0.0.0.0 - BESU_METRICS_PORT=9545 - BESU_RPC_HTTP_ENABLED=true - BESU_RPC_HTTP_HOST=0.0.0.0 # - BESU_HOST_ALLOWLIST=167.86.100.59,127.0.0.1 - BESU_HOST_WHITELIST=167.86.100.59,127.0.0.1,192.168.96.3 # - BESU_HOST_ALLOWLIST="*" # - BESU_HOST_WHITELIST="*" # - BESU_LOGGING=DEBUG - BESU_HOST_ALLOWLIST="*" - BESU_RPC_HTTP_PORT=8545 - BESU_RPC_HTTP_CORS_ORIGINS="all" - BESU_RPC_HTTP_API=ETH,NET,WEB3 - BESU_RPC_HTTP_AUTHENTICATION_ENABLED=false - BESU_RPC_WS_ENABLED=true - BESU_RPC_WS_API=ETH,NET,WEB3 # - BESU_GRAPHQL_HTTP_ENABLED=true # - BESU_GRAPHQL_HTTP_HOST=0.0.0.0 ``

MarioMichel (Mon, 22 Nov 2021 18:07:52 GMT):
```` environment: - BESU_NETWORK=classic - BESU_DATA_PATH=/var/lib/besu/ - BESU_MAX_PEERS=1000 - BESU_METRICS_ENABLED=true - BESU_METRICS_HOST=0.0.0.0 - BESU_METRICS_PORT=9545 - BESU_RPC_HTTP_ENABLED=true - BESU_RPC_HTTP_HOST=0.0.0.0 # - BESU_HOST_ALLOWLIST=167.86.100.59,127.0.0.1 - BESU_HOST_WHITELIST=167.86.100.59,127.0.0.1,192.168.96.3 # - BESU_HOST_ALLOWLIST="*" # - BESU_HOST_WHITELIST="*" # - BESU_LOGGING=DEBUG - BESU_HOST_ALLOWLIST="*" - BESU_RPC_HTTP_PORT=8545 - BESU_RPC_HTTP_CORS_ORIGINS="all" - BESU_RPC_HTTP_API=ETH,NET,WEB3 - BESU_RPC_HTTP_AUTHENTICATION_ENABLED=false - BESU_RPC_WS_ENABLED=true - BESU_RPC_WS_API=ETH,NET,WEB3 # - BESU_GRAPHQL_HTTP_ENABLED=true # - BESU_GRAPHQL_HTTP_HOST=0.0.0.0 `` ```

MarioMichel (Mon, 22 Nov 2021 18:08:05 GMT):
I do have e.g these all

MarioMichel (Mon, 22 Nov 2021 18:08:05 GMT):
I do have e.g these all for Besu

MarioMichel (Mon, 22 Nov 2021 18:13:19 GMT):

Clipboard - November 22, 2021 7:13 PM

MarioMichel (Mon, 22 Nov 2021 18:13:23 GMT):
https://explorer-etc.mariomichel.com/?network=Ethereum%20Classic

shadiayoub (Mon, 22 Nov 2021 18:13:35 GMT):
If you mean Besu, it's run as docker. Reachable via api https

MarioMichel (Mon, 22 Nov 2021 18:13:42 GMT):
yeah

RobinBeltran (Mon, 22 Nov 2021 18:49:35 GMT):
Has joined the channel.

jfbourque (Mon, 22 Nov 2021 19:18:55 GMT):
Has joined the channel.

shadiayoub (Mon, 22 Nov 2021 20:22:26 GMT):
logging="INFO" data-path="/opt/besu/data" host-whitelist=["*"] # rpc rpc-http-enabled=true rpc-http-host="0.0.0.0" rpc-http-port=8545 rpc-http-cors-origins=["*"] # ws rpc-ws-enabled=true rpc-ws-host="0.0.0.0" rpc-ws-port=8546 # graphql graphql-http-enabled=true graphql-http-host="0.0.0.0" graphql-http-port=8547 graphql-http-cors-origins=["*"] # metrics metrics-enabled=true metrics-host="0.0.0.0" metrics-port=9545 # permissions permissions-nodes-config-file-enabled=true permissions-nodes-config-file="/config/permissions_config.toml" # bootnodes bootnodes=["enode://8208a3f344695d44e9cf2c023683cbea7b9343e2f70a5e804bd2c93858e945f8f91439eef96a4ab6c47ff06637d6fbe6472f96de1655a1bee57ea896654f3a22@172.16.239.11:30303"] # Discovery at boot is set to a list of static files, but will also discover new nodes should they be added # static nodes static-nodes-file="/config/static-nodes.json" discovery-enabled=true

MarioMichel (Mon, 22 Nov 2021 21:42:54 GMT):
I will check that tomorrow thanks!

frankliawesome (Tue, 23 Nov 2021 01:21:16 GMT):
https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#rpc-http-api have a look at this - you'll need to add ADMIN to the --rpc-http-api option (BESU_RPC_HTTP_API in the config)

frankliawesome (Tue, 23 Nov 2021 01:21:16 GMT):
@MarioMichel https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#rpc-http-api have a look at this - you'll need to add ADMIN to the --rpc-http-api option (BESU_RPC_HTTP_API in the config)

LeonQiao (Tue, 23 Nov 2021 02:08:25 GMT):
Has joined the channel.

bjwswangmail (Tue, 23 Nov 2021 03:24:15 GMT):
Has joined the channel.

sankara 5 (Tue, 23 Nov 2021 04:32:45 GMT):
Hi Team, I have recently started ETH fast node using Besu, but it is not synching. There are no issues with Ports or network, This happening recently , earlier i do not have this type of issue

sankara 5 (Tue, 23 Nov 2021 04:32:45 GMT):
Hi Team, I have recently started ETH fast node using Besu, but it is not synching. There are no issues with Ports or network, This happening recently , earlier i do not have this type of issue. OpenETH node synching fine on the same server .

g.mishra-blockgemini (Tue, 23 Nov 2021 05:21:26 GMT):
Has joined the channel.

MarioMichel (Tue, 23 Nov 2021 07:36:26 GMT):
Hmmm I would have this config here - BESU_RPC_HTTP_API=ETH,NET,WEB3

MarioMichel (Tue, 23 Nov 2021 07:36:26 GMT):
~Hmmm I would have this config here - BESU_RPC_HTTP_API=ETH,NET,WEB3~ Nvm I see it I will test

Prasad8 2 (Tue, 23 Nov 2021 08:58:22 GMT):
Has joined the channel.

GoreTushar (Tue, 23 Nov 2021 11:24:47 GMT):
Has joined the channel.

skenaja (Tue, 23 Nov 2021 11:56:45 GMT):
Has joined the channel.

jyoti.patel (Tue, 23 Nov 2021 15:31:25 GMT):
Has joined the channel.

anipaul2 (Tue, 23 Nov 2021 19:08:23 GMT):
Has joined the channel.

anipaul2 (Tue, 23 Nov 2021 19:10:18 GMT):
hello everyone, I'm new to open source and wanted to contribute on an issue but got stuck. The issue was "Remove code duplication TODO in OnchainPrivacyPrecompiledContract". Anyone who can help me out in this?

sajz (Tue, 23 Nov 2021 19:16:55 GMT):
Has joined the channel.

SuzanaMaranhao (Tue, 23 Nov 2021 19:42:11 GMT):
Hello everyone, we have a IBFT2.0 network using Besu 21.7.4 and Berlin (since London is not ready). Is this issue https://jira.hyperledger.org/browse/BESU-181 solved in the code we are using?

SuzanaMaranhao (Tue, 23 Nov 2021 19:42:11 GMT):
Hello everyone, we have an IBFT2.0 network using Besu 21.7.4 and Berlin (since London is not ready). Is this issue https://jira.hyperledger.org/browse/BESU-181 solved in the code we are using?

SuzanaMaranhao (Tue, 23 Nov 2021 19:46:42 GMT):
The same bug is described here: https://github.com/hyperledger/besu/issues/528

loziniak (Tue, 23 Nov 2021 22:08:28 GMT):
Unfortunately, not.

dantetti (Tue, 23 Nov 2021 23:55:00 GMT):
Has joined the channel.

lucassaldanha (Wed, 24 Nov 2021 00:37:42 GMT):
It looks like this was fixed by https://github.com/hyperledger/besu/pull/969 Are you still experiencing this issue?

hacke (Wed, 24 Nov 2021 07:34:00 GMT):
Has joined the channel.

MarioMichel (Wed, 24 Nov 2021 09:05:49 GMT):
Awesome thank you @frankliawesome just needed to enable this also in the RPC and it worked. Many Thanks!

KurosakiIchigo (Wed, 24 Nov 2021 09:14:58 GMT):
Has joined the channel.

efrain (Wed, 24 Nov 2021 09:19:00 GMT):
I want to change the genesis file and set a gasprice. Which parameter should I tweak? Will that gas fees be deposited to one of the validator nodes?

macfarla (Wed, 24 Nov 2021 11:24:17 GMT):
Hi @anipaul2 - where are you stuck? Have you followed this checklist? https://wiki.hyperledger.org/display/BESU/First+contribution Have you created a fork of Besu? Have you checked out the code and compiled it?

Kmm 4 (Wed, 24 Nov 2021 13:49:10 GMT):
Has joined the channel.

ShengChillie (Wed, 24 Nov 2021 14:05:45 GMT):
Has joined the channel.

shadiayoub (Wed, 24 Nov 2021 14:19:57 GMT):
gaslimit parameter. And make sure your nodes ARE NOT started with gas=0 command option.

shadiayoub (Wed, 24 Nov 2021 14:20:08 GMT):
Maybe you'll find this article helpful: https://consensys.net/blog/quorum/hyperledger-besu-how-to-create-an-ethereum-genesis-file/

shadiayoub (Wed, 24 Nov 2021 14:22:25 GMT):
coinbase parameter defines the wallet that receives mining rewards.

john.h.o.mantaring (Wed, 24 Nov 2021 15:02:17 GMT):
Has joined the channel.

SuzanaMaranhao (Wed, 24 Nov 2021 15:36:50 GMT):
I have not tested it in this new version. Just want to make sure that 21.7.4 already contain this fix.

MarioMichel (Wed, 24 Nov 2021 18:10:47 GMT):
hmmm still does not work and added a few things :( anyways thanks!

shinnosuke.sonoda (Thu, 25 Nov 2021 01:12:32 GMT):
Has joined the channel.

RitikaKakkar (Thu, 25 Nov 2021 04:53:49 GMT):
Has joined the channel.

abhisheksavaliya (Thu, 25 Nov 2021 06:03:02 GMT):
Has joined the channel.

Haniff (Thu, 25 Nov 2021 09:33:10 GMT):
Has joined the channel.

gurkhaman (Thu, 25 Nov 2021 11:02:06 GMT):
Has joined the channel.

neves 2 (Thu, 25 Nov 2021 11:19:28 GMT):
Has joined the channel.

deetho (Thu, 25 Nov 2021 11:49:03 GMT):
Has joined the channel.

atsveloso (Thu, 25 Nov 2021 12:08:49 GMT):
Has joined the channel.

zhengxilong (Thu, 25 Nov 2021 12:21:09 GMT):
Has joined the channel.

shadiayoub (Thu, 25 Nov 2021 12:44:05 GMT):

besusetupnewkeys.png

shadiayoub (Thu, 25 Nov 2021 12:44:05 GMT):
Hello... Anyone can tell me what am I missing ? Trying to setup Besu with new keys using Quickstart:
besusetupnewkeys.png

ap13 (Thu, 25 Nov 2021 15:28:50 GMT):
Has joined the channel.

krishna2752 (Thu, 25 Nov 2021 15:40:15 GMT):
Has joined the channel.

shadiayoub (Thu, 25 Nov 2021 16:31:48 GMT):
Update: The answer may be here: https://besu.hyperledger.org/en/stable/Tutorials/Developer-Quickstart/#add-a-new-node-to-the-network

ArneGebert (Thu, 25 Nov 2021 23:16:56 GMT):
Following the [tutorial for a privacy-enabled network](https://besu.hyperledger.org/en/stable/Tutorials/Privacy/Configuring-Privacy/) - is there a quick way to check whether the set up was successful and whether I could send private transactions over my network?

SiddharthGupta (Fri, 26 Nov 2021 01:13:45 GMT):
Has joined the channel.

csum112 (Fri, 26 Nov 2021 08:20:05 GMT):
Has joined the channel.

Kayaba.Keita (Fri, 26 Nov 2021 10:38:47 GMT):
Has joined the channel.

efrain (Fri, 26 Nov 2021 11:41:39 GMT):
In genesis file I have set `"gasLimit" : "0x15",` In docker-compose.yml file I kept `export CONSENSUS_ARGS="--istanbul.blockperiod 5 --mine --minerthreads 1 --miner.gasprice 400 --emitcheckpoints"` I cant make the gas fees go to the validators.

efrain (Fri, 26 Nov 2021 11:41:39 GMT):
In genesis file I have set `"gasLimit" : "0x15",` In docker-compose.yml file I set gas price to be 400 `export CONSENSUS_ARGS="--istanbul.blockperiod 5 --mine --minerthreads 1 --miner.gasprice 400 --emitcheckpoints"` I cant make the gas fees go to the validators.

efrain (Fri, 26 Nov 2021 11:41:39 GMT):
In genesis file I have set `"gasLimit" : "0x15",` In docker-compose.yml file I set gas price to be 400 `export CONSENSUS_ARGS="--istanbul.blockperiod 5 --mine --minerthreads 1 --miner.gasprice 400 --emitcheckpoints"` In metamask I cannot add any gas fees. Transaction fails with an error "gas fees is not zero"

hjpn (Fri, 26 Nov 2021 18:18:26 GMT):
hi exist any development for hyperledger besu with proof of stake ?

hjpn (Fri, 26 Nov 2021 18:18:40 GMT):
thank you in advance...

shadiayoub (Fri, 26 Nov 2021 19:13:56 GMT):
I think not. However, you can replace PoS with rewards using smart contracts. It is more flexible this way.

ankitsaurabh (Fri, 26 Nov 2021 21:47:21 GMT):
Has joined the channel.

shemnon (Fri, 26 Nov 2021 23:17:12 GMT):
"The merge" work (FKA Eth 2.0) is going on here: https://github.com/hyperledger/besu/tree/merge

efrain (Sat, 27 Nov 2021 13:32:19 GMT):
Qubernetes - is it centralized? https://docs.goquorum.consensys.net/en/stable/GetStarted/Getting-Started-Qubernetes/ Kubernetes is an application to run/manage/terminate many nodes centrally. Will an Ethereum private blockchain with nodes/validators running on Kubernetes retain its decentralized nature?

efrain (Sat, 27 Nov 2021 13:32:19 GMT):
Qubernetes - is it centralized? https://docs.goquorum.consensys.net/en/stable/GetStarted/Getting-Started-Qubernetes/ Kubernetes is an application to add/manage/terminate many nodes centrally. Will an Ethereum private blockchain with nodes/validators running on Kubernetes retain its decentralized nature?

efrain (Sat, 27 Nov 2021 13:32:19 GMT):
Qubernetes - is it centralized? https://docs.goquorum.consensys.net/en/stable/GetStarted/Getting-Started-Qubernetes/ Kubernetes is an application to add/manage/terminate multiple nodes from a central control plane. Will an Ethereum private blockchain with nodes/validators running on Kubernetes retain its decentralized nature?

KiranLakhotia (Sat, 27 Nov 2021 15:34:16 GMT):
Hi - silly question. According to the documentation, ETH methods should be enabled by default? But when I try and execute sth like `new Web3(...).eth.getTransactionCount(....)` I get a method not enabled error. The address I pass into the `getTransactionCount` method is one of the account addresses registered in the genesis file (dev.json).

KiranLakhotia (Sat, 27 Nov 2021 15:36:39 GMT):
looks like I have to add --rpc-http-api=ETH. Any ideas why?

KiranLakhotia (Sat, 27 Nov 2021 15:36:39 GMT):
looks like I have to add `--rpc-http-api=ETH`. Any ideas why?

loziniak (Sat, 27 Nov 2021 19:37:36 GMT):
I think it's not meant for production environments. Although perhaps there are usecases, when decentralization is not a requirement.

efrain (Sun, 28 Nov 2021 08:32:15 GMT):
I think so too. When we need a decentralized ethereum network, we should not use Kubernetes.

shadiayoub (Sun, 28 Nov 2021 11:39:21 GMT):
Technically it is decentralized. Administratively it is centralized. Blockchain persay is a decentralized technology. Nodes running the blockchain can be either: 1. public: anyone can operate a validating node. This model is also administratively decentralized. 2. private: admins decide which validating nodes are added. This model is a blockchain but "permissioned" and controlled; hence administratively centralized.

gad0lim (Sun, 28 Nov 2021 18:57:26 GMT):
Does anybody have a good write up on pros and cons of running no gas private network vs setting up fees? Sth with lessons learned? I see setting fees as ability to limit network spam, e.g. I wonder how contract execution would stop if there is a bug and there is no gas. I would like to play with it in close VPN accessible network, so I am don't need to really be worried about huge number of malicious actors. So maybe it's more practicality. Internally I could share eth via faucet (is there any open source faucet i could use spin for that purpose?).

gad0lim (Sun, 28 Nov 2021 18:59:04 GMT):
(also if I set gas, will miners be earning it and that's the only way to get it then. I will have couple addresses in genesis with inital balance).

Nithronium (Sun, 28 Nov 2021 21:19:48 GMT):
Hi, what would be the setting for sending mining rewards to a specific address instead of the validator on IBFT2?

Nithronium (Sun, 28 Nov 2021 21:19:54 GMT):
coinbase parameter seems to be not working

Nithronium (Sun, 28 Nov 2021 21:21:21 GMT):
nvm, found it; `miningbeneficiary`

Nithronium (Sun, 28 Nov 2021 21:28:35 GMT):
Also, current Besu IBFT2 implementation doesn't support change of mining beneficiary, would it be possible to implement changing parameter on this when upgrading network?

gad0lim (Mon, 29 Nov 2021 00:19:03 GMT):
What's your reasoning going IBFT2 vs Clique? I kind of feel that the "delayed" finality with forks of Clique is closer to consensus protocols in main networks out there, so apps written will need to be more resilient and will be more transerable to other blockchains?

macfarla (Mon, 29 Nov 2021 00:59:55 GMT):
The web3js-quorum client library will have some examples you can use to test it out https://besu.hyperledger.org/en/stable/Tutorials/Privacy/web3js-quorum-Multinode-example/

macfarla (Mon, 29 Nov 2021 01:02:58 GMT):
ETH methods are enabled by default. could there be something in your original setup that's overriding the default settings?

macfarla (Mon, 29 Nov 2021 01:04:22 GMT):
I don't think we have written up anything on this specifically. We'd be interested to hear your thoughts and what you find out from running this

macfarla (Mon, 29 Nov 2021 01:06:55 GMT):
Clique is not Byzantine Fault Tolerant (BFT) which a lot of use cases require.

iamchris1688 (Mon, 29 Nov 2021 03:43:53 GMT):
Has joined the channel.

SubashAnbazhagan (Mon, 29 Nov 2021 04:49:37 GMT):
Has joined the channel.

laolao (Mon, 29 Nov 2021 05:27:07 GMT):
Has joined the channel.

amithkk (Mon, 29 Nov 2021 06:05:41 GMT):
Has joined the channel.

loziniak (Mon, 29 Nov 2021 10:39:28 GMT):
I think optimal for PoA is organizational centralization – hence the name consortium. There you have common policy and mutual trust, but each suborganization administers it's own node independently (own servers, passwords, admins, private keys etc.).

hjpn (Mon, 29 Nov 2021 11:16:30 GMT):
@shadiayoub you say using smart contracts how ? if i want a fixed total supply for a blockchain and POS concensus exist any documentation about this or repos ?

hjpn (Mon, 29 Nov 2021 11:21:22 GMT):
@shemnon thx i will take a look. with this code i can have a POS ethereum blockchain, will be possible to have a fixed total supply. exist any documentation about POS what happens to tokens locked for a malicious validator ?

hjpn (Mon, 29 Nov 2021 11:22:14 GMT):
sorry many questions :D . I already work with besu in one project, but i have some ideas to create a new one.

s.vahidi (Mon, 29 Nov 2021 12:14:35 GMT):
Has joined the channel.

shadiayoub (Mon, 29 Nov 2021 13:14:15 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=AYcZhnTfuuxmrzRXi) Asking question is the essence of this chat. Getting answers is another thing though lol. I work on some projects too. I'd love to share knowledge and experience if interested.

shadiayoub (Mon, 29 Nov 2021 13:16:32 GMT):
Anyway: with smart contracts: you create the network with 100% premined amount. You dedicated portion of the coins for rewards (instead of mining them). You create a smart contract that distributes rewards to users based on conditions you set: amount of staking, period length, operating a node..... whatever you want. This way it is way more flexible than the standard PoS mining.

FotisMichalopoulos (Mon, 29 Nov 2021 13:51:49 GMT):
Has joined the channel.

MohammadHT (Mon, 29 Nov 2021 14:27:03 GMT):
Has joined the channel.

hjpn (Mon, 29 Nov 2021 16:02:40 GMT):
@shadiayoub cool, i get the idea, for this i need to create like a genesis smart contracts and hardfork code to deal with this logic i think right?

hjpn (Mon, 29 Nov 2021 16:26:40 GMT):
i'm just discussing ideas :)

hjpn (Mon, 29 Nov 2021 16:44:11 GMT):
i'm trying to build a old version of besu but i not get this resource

hjpn (Mon, 29 Nov 2021 16:44:15 GMT):
>Could not resolve net.consensys:orion:1.5.0-SNAPSHOT. > Unable to load Maven meta-data from https://consensys.bintray.com/pegasys-repo/net/consensys/orion/1.5.0-SNAPSHOT/maven-metadata.xml. > Could not get resource 'https://consensys.bintray.com/pegasys-repo/net/consensys/orion/1.5.0-SNAPSHOT/maven-metadata.xml'. > Could not GET 'https://consensys.bintray.com/pegasys-repo/net/consensys/orion/1.5.0-SNAPSHOT/maven-metadata.xml'. Received status code 403 from server: Forbidden

hjpn (Mon, 29 Nov 2021 16:44:33 GMT):
what repo has this resource?

shemnon (Mon, 29 Nov 2021 17:01:23 GMT):
Bintray shut down (JFrog, please return your Duke's Choice Award...). The binaries for 1.5.0 orion appear to be on cloudsmith (https://cloudsmith.io/~consensys/repos/orion/packages/?sort=-version&q=version%3A1.5.0) but I don't think they are wired up conveniently for inclusion as a maven library. @macfarla may know more.

hjpn (Mon, 29 Nov 2021 17:12:58 GMT):
ok thanks.

shadiayoub (Mon, 29 Nov 2021 19:16:47 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=Poe85rPSqBDCidJXX) Not needed. Instead, you create smart contracts just like on Ethereum, and dedicated wallets for rewards. Think of it this way: What if you want to create a smart contract on Ethereum network to reward stakers with Ethereum (you won't do it but..) , you'd do this on your chain and own coin

SuzanaMaranhao (Mon, 29 Nov 2021 19:23:03 GMT):
Dears, we have a Prometheus/Grafana monitoring in our Besu permissioned network. We want to understand what ethstats can do that our existing monitoring cannot. As far as I understood, Ethstats has the advantage of reading data from the http/rpc port of a node and, of course, extract info from the blockchain itself (transactions, balances etc). Is that the main difference?

hjpn (Mon, 29 Nov 2021 19:40:29 GMT):
In IBFT2.0 and Clique here the validators are stored ?

hjpn (Mon, 29 Nov 2021 19:40:29 GMT):
In IBFT2.0 and Clique where the validators are stored ?

hjpn (Mon, 29 Nov 2021 19:48:36 GMT):
:thinking:

shemnon (Mon, 29 Nov 2021 20:07:21 GMT):
For clique every "epoch" block (3000 by default) lists all validators in the extra data. https://eips.ethereum.org/EIPS/eip-225 For IBFT 2.0: :man_shrugging_light_skin_tone: Not a protocol I know the low level details of.

shadiayoub (Mon, 29 Nov 2021 21:08:57 GMT):
Like staking and farming and other stuff... All different names for the same concept.

shadiayoub (Mon, 29 Nov 2021 21:10:12 GMT):
It can be done with genesis but not needed... So you don't fork.

lucassaldanha (Mon, 29 Nov 2021 21:55:22 GMT):
In IBFT2, the validators are kept as a list in the Block Header's extra data field.

lucassaldanha (Mon, 29 Nov 2021 21:56:20 GMT):
https://besu.hyperledger.org/en/latest/HowTo/Configure/Consensus-Protocols/IBFT/#extra-data

macfarla (Tue, 30 Nov 2021 00:14:33 GMT):
yep we did move orion binaries to cloudsmith. But also we've officially deprecated orion in favour of tessera (as of end of Nov ie today/tomorrow depending on your timezone). Is there a reason for building an old version of Besu or should I not ask??

jframe (Tue, 30 Nov 2021 00:36:14 GMT):
Added an issue to implement IBFT2 and QBFT to be able change the mining beneficiary using transitions https://github.com/hyperledger/besu/issues/3115

hjpn (Tue, 30 Nov 2021 09:25:53 GMT):
:cool: thank you @shemnon @lucassaldanha

hjpn (Tue, 30 Nov 2021 09:37:56 GMT):
yes i are building a old version due a issue in our mainnet, dev and test net are updated but with other issue that block are mined off time, the block need 4seconds and for some reasom mined before, so the new cliente validate this and can't import. https://github.com/hyperledger/besu/issues/2797#issuecomment-976206735. but due a new issue we can update directly to production :) so we do a downgrade in all networks and later we will update all to new versions.

hjpn (Tue, 30 Nov 2021 09:37:56 GMT):
yes i are building a old version due a issue in our mainnet, dev and test net are updated but with other issue that block are mined off time, the block need 4seconds and for some reasom mined before, so the new cliente validate this and can't import. https://github.com/hyperledger/besu/issues/2797#issuecomment-976206735. but due a new issue we can't update directly to production :) so we do a downgrade in all networks and later we will update all to new versions.

hjpn (Tue, 30 Nov 2021 09:39:56 GMT):
for other problem the database of dev and test networks with new client can't be imported with older version, so we need to import node by node from 0.

hjpn (Tue, 30 Nov 2021 09:39:56 GMT):
Other problem the database of dev and test networks with new client can't be imported with older version, so we need to import node by node from 0.

hjpn (Tue, 30 Nov 2021 09:39:56 GMT):
Other problem the database of dev and test networks with new client besu v21 can't be imported with older version, so we need to import node by node from 0.

hjpn (Tue, 30 Nov 2021 09:42:30 GMT):
@macfarla this dependency is on testUtils i will remove for compile my client,

hjpn (Tue, 30 Nov 2021 09:42:45 GMT):
it's possivle from cloudsmith get resource like before?

hjpn (Tue, 30 Nov 2021 09:43:28 GMT):
sorry for my english, i'm portuguese :D

dalan 2 (Tue, 30 Nov 2021 10:07:28 GMT):
Has joined the channel.

RouteSagar (Tue, 30 Nov 2021 12:08:10 GMT):
Has joined the channel.

hjpn (Tue, 30 Nov 2021 12:16:09 GMT):
@shemnon @macfarla is possible import zip for the project as resource ?

hjpn (Tue, 30 Nov 2021 15:55:10 GMT):
i already resolved, i remove this util and all tests related to orion

hjpn (Tue, 30 Nov 2021 15:55:22 GMT):
thanks anyway

Clippo 3 (Tue, 30 Nov 2021 17:15:50 GMT):
Hello

Clippo 3 (Tue, 30 Nov 2021 17:16:23 GMT):
It's ok to develop an app with the quorum quickstart?

Clippo 3 (Tue, 30 Nov 2021 17:16:28 GMT):
Or what do u think?

Clippo 3 (Tue, 30 Nov 2021 17:16:45 GMT):
Like u can use it annd just develop the dapp

shadiayoub (Tue, 30 Nov 2021 17:53:18 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=pKhadNSjkeWFPDMpX) It's very good so far.. It gives you a well setup network...

Clippo 3 (Tue, 30 Nov 2021 18:23:51 GMT):
Like 4 a enterprise level u think?

Clippo 3 (Tue, 30 Nov 2021 18:24:05 GMT):
If i do that how i can connect to the htpc/rpc

shadiayoub (Tue, 30 Nov 2021 18:53:18 GMT):
Yes. It's the ip of the server :8545 by default. Locally it's http://127.0.0.1:8545

caglayan45 (Tue, 30 Nov 2021 20:00:07 GMT):
Has joined the channel.

Clippo 3 (Tue, 30 Nov 2021 20:29:17 GMT):
But if i want to connect to in a differente part of the world?

Clippo 3 (Tue, 30 Nov 2021 20:29:33 GMT):
It will be the same ?

shadiayoub (Tue, 30 Nov 2021 20:58:00 GMT):
No, then use the ip of the server instead of 127.0.0.1 For example: http://124.55.187.22:8584\

shadiayoub (Tue, 30 Nov 2021 20:58:00 GMT):
No, then use the ip of the server instead of 127.0.0.1 For example: http://124.55.187.22:8584

SuzanaMaranhao (Tue, 30 Nov 2021 21:53:58 GMT):
In a scenario that a validator node called A (that is not bootnode) is linked directly only to one bootnode and many other validators, what happen if the bootnode fails? Will the validator A also fails? Or will the validator A keep communicating with other validators as usual?

SuzanaMaranhao (Tue, 30 Nov 2021 21:54:15 GMT):
Another question: What happen if a validator node A (that is not bootnode) is linked to many bootnodes? Will the validator node A randomly choose one bootnode? Will the validator node interact with all bootnodes? Will it impact the performance of validator node A?

diegoll (Tue, 30 Nov 2021 22:44:54 GMT):
validator A should keep running peering with the other validators

Clippo 3 (Tue, 30 Nov 2021 22:58:42 GMT):
Thanks!! U area a hero

jframe (Tue, 30 Nov 2021 23:20:48 GMT):
Validator A will use all the bootnodes for initial peer discovery in this case. It will attempt to establish a peer connection and interact with all the listed bootnodes. There shouldn't be any performance impact on validator node A.

SuzanaMaranhao (Tue, 30 Nov 2021 23:26:23 GMT):
Thank you, @jframe. Will Validator A use the boots just in the initial peer discovery? Will validator A run discovery again and again periodically?

macfarla (Tue, 30 Nov 2021 23:26:24 GMT):
great that it's resolved!

macfarla (Tue, 30 Nov 2021 23:33:50 GMT):
ethstats gives a view of the overall blockchain (many nodes, not just Besu, and not just your nodes if it's a public network), Besu metrics gives a view of the besu node itself.

macfarla (Wed, 01 Dec 2021 00:42:21 GMT):
discovery is triggered by "insufficient peers" ie if your peer count falls below the threshold

JunkF (Wed, 01 Dec 2021 02:58:09 GMT):
Has joined the channel.

lventi (Wed, 01 Dec 2021 12:41:31 GMT):
Has joined the channel.

efrain (Wed, 01 Dec 2021 13:34:08 GMT):
I created a goquorum private network using this tutorial https://docs.goquorum.consensys.net/en/stable/GetStarted/GettingStartedOverview/ How can I set a gas fees to 0.01 ETH? Which file should I edit? I tried editing gasLimit in genesis file. No effect. Should I edit some docker yaml file?

andreolf1 (Wed, 01 Dec 2021 13:35:44 GMT):
Tomorrow we will talk about Besu, Bonsai and Metamask with @GarySchulte and @matt.nelson.94! We will talk through the steps, show live (and simulated) environments, and discuss caveats, pitfalls, tips, tricks, and more. Make sure to register here: https://pages.consensys.net/webinar-besu-on-mainnet Looking forward!

shadiayoub (Wed, 01 Dec 2021 13:48:42 GMT):
See you tomorrow then.

joey_gogo (Wed, 01 Dec 2021 13:50:13 GMT):
Has joined the channel.

SuzanaMaranhao (Wed, 01 Dec 2021 14:20:52 GMT):
Makes total sense!!! Thank you, @macfarla

SuzanaMaranhao (Wed, 01 Dec 2021 14:25:52 GMT):
:thumbsup:

SuzanaMaranhao (Wed, 01 Dec 2021 15:20:58 GMT):
Dears, Besu natively inputs a lot of metrics to Prometheus. But supposing we want to include new metrics, e.g., what are the 5 more called smart contracts in a permissioned network? I imagine I can develop an additional software to extract this metric and input it in Prometheus, correct? Is there any ready template/sample code/docs for using as a reference to that?

SuzanaMaranhao (Wed, 01 Dec 2021 15:20:58 GMT):
Dears, Besu natively inputs a lot of metrics to Prometheus. But supposing we want to include new metrics, e.g., what are the 5 more called smart contracts in a permissioned network? I imagine I can develop an additional software to extract this metric and input it in Prometheus, correct? Is there any ready template/sample code/docs for using as a reference to that? Another example would be any command that I can do using curl. Supposing I want to include this as a new metric on Prometheus. Is there anything ready to help extensions like that?

antonydenyer (Wed, 01 Dec 2021 15:25:52 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=e6JjrjDEmC4h9WHob) GoQuorum doesn't support anything other than zero gas price networks. If you want to do something like that you should use besu :smile:

SuzanaMaranhao (Wed, 01 Dec 2021 15:32:52 GMT):
Another example would be any command that I can do using curl. Supposing I want to include this as a new metric on Prometheus. Is there anything ready to help extensions like that?

BigmoneyJoe (Wed, 01 Dec 2021 15:52:38 GMT):
Has joined the channel.

shadiayoub (Wed, 01 Dec 2021 16:42:26 GMT):
@antonydenyer Interesting... And in all cases, there is no way to set gas at a fixed ETH price like 0.01 , is there?

antonydenyer (Wed, 01 Dec 2021 16:49:31 GMT):
There is no gas price in GoQuorum - maybe in the distant future but not right now. What specific features in GoQuorum do you want to use with gas?

shadiayoub (Wed, 01 Dec 2021 16:50:43 GMT):
Yeah, I meant with Besu.. Gas price is set by max. blocksize and not with a defined Eth price.

antonydenyer (Wed, 01 Dec 2021 16:52:48 GMT):
Okay, so you if want a fixed gas price of 0.01 eth you should be able to set it and use a non proof of work consensus algorithm ie QBFT.

antonydenyer (Wed, 01 Dec 2021 16:54:24 GMT):
You will need to fund an account at genesis and use that as a 'faucet' for funds to do transactions

shadiayoub (Wed, 01 Dec 2021 16:55:26 GMT):
This is news... Good news. We can set up a fixed gas fee network using ibft ?!

antonydenyer (Wed, 01 Dec 2021 16:56:36 GMT):
yeah I think so (not 100% sure)

shadiayoub (Wed, 01 Dec 2021 16:57:50 GMT):
Nice

antonydenyer (Wed, 01 Dec 2021 17:05:21 GMT):
well the network starts! I'll leave the rest to you :slight_smile:

efrain (Wed, 01 Dec 2021 19:04:43 GMT):
Finally, there is some clarity about gas price in a goquorum network. I think they should put this in docs.

JosephPotts (Wed, 01 Dec 2021 19:36:11 GMT):
Has joined the channel.

joey_gogo (Wed, 01 Dec 2021 21:53:38 GMT):
for besu fast sync on mainnet, how long should it reasonably take to confirm the first pivotblock.. i seem to get 4 confirmations really quick then the 5th just stalls

thusithathilina (Wed, 01 Dec 2021 23:27:49 GMT):
Has joined the channel.

madelinemurray (Thu, 02 Dec 2021 01:38:43 GMT):
@efrain - raised https://github.com/ConsenSys/doc.goquorum/issues/167 to add the gas price info to the GoQuorum docs

Rp27 (Thu, 02 Dec 2021 03:52:55 GMT):
Has joined the channel.

SergioTorres (Thu, 02 Dec 2021 06:17:06 GMT):
anyone has a problem with qourum dev quickstart? I have an error with the permissions on the config file and the nodes not starting

SergioTorres (Thu, 02 Dec 2021 06:17:38 GMT):

Clipboard - 2 de diciembre de 2021 7:17

Bhemeswararaoxcubelabs.com (Thu, 02 Dec 2021 06:27:15 GMT):
Has joined the channel.

fab-10 (Thu, 02 Dec 2021 08:43:36 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=j4mvedqD7f3f5yShS) Hi @joey_gogo which version of Besu are you running? are you running behind a firewall?

macfarla (Thu, 02 Dec 2021 11:18:28 GMT):
sounds like a file permissions issue - can you check the permissions for the user you're running the quickstart under - that user will need to have write permission to your file system

SergioTorres (Thu, 02 Dec 2021 12:36:58 GMT):
Yes... I execute this deployment with the only user of the host. If I deploy older versions of Besu it works... I don´t know what happend with the new release, but it doesn´t works

BoJacobs (Thu, 02 Dec 2021 13:29:52 GMT):
Has joined the channel.

joey_gogo (Thu, 02 Dec 2021 13:56:46 GMT):
21.1.6 I'm trying this out in AWS i have outbound open 0.0.0.0/0

kudzaishezana (Thu, 02 Dec 2021 15:45:47 GMT):
Has joined the channel.

fab-10 (Thu, 02 Dec 2021 16:31:32 GMT):
then update to the last version, since it is much better in finding more peeds

fab-10 (Thu, 02 Dec 2021 16:32:36 GMT):
and you should also open the p2p inbound port, by default 30303

joey_gogo (Thu, 02 Dec 2021 17:46:29 GMT):
is the inbound required or just more helpful?

The_Science (Thu, 02 Dec 2021 18:28:15 GMT):
Has joined the channel.

fab-10 (Thu, 02 Dec 2021 18:41:28 GMT):
not required, but helps to get more peers

macfarla (Thu, 02 Dec 2021 19:58:24 GMT):
which version are you using? Can you share the command you're using to run the quickstart including any options? Thanks

SuzanaMaranhao (Thu, 02 Dec 2021 21:42:54 GMT):
Dears, we successfully upgrade all our nodes in our permissioned network to 21.7.4. Now, we need to upgrade to Berlin. We included the line "berlinBlock": "17974000". However, after changing that in a node and restarting it, the new node did not go up anymore. Any clue? I believe I do not need to restart all nodes at the same time, correct?

SuzanaMaranhao (Thu, 02 Dec 2021 21:42:54 GMT):
Dears, we successfully upgrade all our nodes in our permissioned network to 21.7.4. Now, we need to upgrade to Berlin. We included the line "berlinBlock": "17974000" in the genesis file. However, after changing that in a node and restarting it, the new node did not go up anymore. Any clue? I believe I do not need to restart all nodes at the same time, correct?

joey_gogo (Thu, 02 Dec 2021 22:37:09 GMT):
Appreciate it, looks like i'm syncing and downloading state much faster

F.Florian (Thu, 02 Dec 2021 23:11:39 GMT):
Has joined the channel.

PalanisamyChellappan (Fri, 03 Dec 2021 05:17:09 GMT):
Has joined the channel.

SergioTorres (Fri, 03 Dec 2021 05:26:10 GMT):
stable version, but, if you download with the instruction "npx quorum-dev-quickstart", you will download the latest version

SergioTorres (Fri, 03 Dec 2021 05:26:31 GMT):
I executed this instruction: npx quorum-dev-quickstart

SergioTorres (Fri, 03 Dec 2021 05:26:53 GMT):
the instruction os the official page of BEsu

ipepoi (Fri, 03 Dec 2021 07:07:26 GMT):
Has joined the channel.

shadiayoub (Fri, 03 Dec 2021 07:49:29 GMT):
DId you try another node? These two nodes should at least talk to each others since they both have the same genesis different from the rest.

rohitsaikrishnan (Fri, 03 Dec 2021 08:22:32 GMT):
Has joined the channel.

antonydenyer (Fri, 03 Dec 2021 08:37:24 GMT):
@shadiayoub how are you getting on? Working as expected?

NB-PrasadKatkar (Fri, 03 Dec 2021 08:57:12 GMT):
Has joined the channel.

shadiayoub (Fri, 03 Dec 2021 09:57:37 GMT):
I have not yet tried this. Not sure how to set a fixed gas price...

efrain (Fri, 03 Dec 2021 11:45:20 GMT):
In docker-compose.yaml file I have set `--min-gas-price=400000` and started the network. I can verify that some gas fee is needed to execute a transaction and the gas fee is deposited to the validator's address. When I kept 0 as gas price in metamask, the network keeps the Transaction pending for a long time. The transaction gets accepted when I set the gas price as non-zero. Even if the gas price is just 1. But I have set `--min-gas-price=400000` and I thought such transactions would fail.

efrain (Fri, 03 Dec 2021 11:45:20 GMT):
In docker-compose.yml file I have set `--min-gas-price=400000` and started the network. I can verify that some gas fee is needed to execute a transaction and the gas fee is deposited to the validator's address. When I kept 0 as gas price in metamask, the network keeps the Transaction pending for a long time. The transaction gets accepted when I set the gas price as non-zero. Even if the gas price is just 1. But I have set `--min-gas-price=400000` and I thought such transactions would fail.

shadiayoub (Fri, 03 Dec 2021 11:58:51 GMT):
@efrain The min-gas-price does not set the actual price of gas, but the minimum possible. Gas changes based on the size of the transaction. This is where the gas-limit comes into place. So I am not sure if we can set a defined foxed gas price.... Or not yet at least.

efrain (Fri, 03 Dec 2021 12:03:15 GMT):
@shadiayoub I understand that `min-gas-price=400000` sets a lower limit on the gas price. So, it should not allow the Tx when the client (metamask in my case) sets the gas price at less than 400000 gwei. But the Tx gets through. Is the `--min-gas-price` value to be specified in units of gwei, wei or ETH? I assumed it is gwei.

efrain (Fri, 03 Dec 2021 12:03:15 GMT):
@shadiayoub I understand that `min-gas-price=400000` sets a lower limit on the gas price. So, it should not allow the Tx when the client (metamask in my case) sets the gas price at less than 400000 gwei. But the Tx gets through.

efrain (Fri, 03 Dec 2021 12:03:15 GMT):
@shadiayoub I understand that `min-gas-price=400000` sets a lower limit on the gas price. So, it should not allow the Tx when the client (metamask in my case) sets the gas price at less than 400000. But the Tx gets through.

efrain (Fri, 03 Dec 2021 12:03:15 GMT):
@shadiayoub I understand that `min-gas-price=400000` sets a lower limit on the gas price. So, it should not allow the Tx when the client (metamask in my case) sets the gas price at less than 400000 gwei. But the Tx gets through.

efrain (Fri, 03 Dec 2021 12:03:15 GMT):
@shadiayoub I understand that `min-gas-price=400000` sets a lower limit on the gas price. So, it should not allow the Tx when the client (metamask in my case) sets the gas price at less than 400000 gwei. But the Tx gets through. What is the unit for `min-gas-price` - wei, gwei or ETH? I assumed it is gwei.

efrain (Fri, 03 Dec 2021 12:03:15 GMT):
@shadiayoub I understand that `min-gas-price=400000` sets a lower limit on the gas price. So, it should not allow the Tx when the client (metamask in my case) sets the gas price at less than 400000 gwei. But the Tx gets through !!! What is the unit for `min-gas-price` - wei, gwei or ETH? I assumed it is gwei.

efrain (Fri, 03 Dec 2021 12:04:54 GMT):
I dont want to set a fixed gas price. Even if I can set a minimum price, that is sufficient for my purpose.

efrain (Fri, 03 Dec 2021 13:24:28 GMT):
From experimenting I found that the unit for `min-gas-price` is `wei`. The docs are not clear on this https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#min-gas-price @madelinemurray Can you raise a ticket to include this info in the docs?

shadiayoub (Fri, 03 Dec 2021 13:58:11 GMT):
Yes, wei it is...

cmalbas (Fri, 03 Dec 2021 14:06:03 GMT):
Has joined the channel.

KodeKamper (Fri, 03 Dec 2021 14:15:39 GMT):
Has joined the channel.

hjpn (Fri, 03 Dec 2021 15:19:56 GMT):
hi i need to fast sync IBFT new validators, is valid i "copy and paste" or syncronize the database folder to new validator ?

hjpn (Fri, 03 Dec 2021 15:20:30 GMT):
is more fast copy database files than new validator import one by one.

hjpn (Fri, 03 Dec 2021 15:20:30 GMT):
is more fast copy "database" files than new validator import one by one.

hjpn (Fri, 03 Dec 2021 15:20:30 GMT):
is more fast copy `database` files than new validator import one by one.

hjpn (Fri, 03 Dec 2021 15:20:30 GMT):
is more fast copy `database` files than new validator import one block by one.

hjpn (Fri, 03 Dec 2021 15:20:39 GMT):
my question is safe do this way ?

hjpn (Fri, 03 Dec 2021 15:21:13 GMT):
`cache` folder is needed as well ?

x4v13r (Fri, 03 Dec 2021 15:44:29 GMT):
Has joined the channel.

SudeshBanskota (Fri, 03 Dec 2021 15:45:04 GMT):
Has joined the channel.

Clippo 3 (Fri, 03 Dec 2021 19:39:40 GMT):
Hello mates i can't make a write operation in besu

shadiayoub (Fri, 03 Dec 2021 19:43:15 GMT):
Any more info? Checked permissions? Tried as root?

SuzanaMaranhao (Fri, 03 Dec 2021 19:55:38 GMT):
It seems the issue was to use quotes around the block number!

Clippo 3 (Fri, 03 Dec 2021 20:02:50 GMT):
Yes i'm trying with javascript but it gaves me an error

Clippo 3 (Fri, 03 Dec 2021 20:03:05 GMT):
That it only support raw transactions

Clippo 3 (Fri, 03 Dec 2021 20:37:37 GMT):
Error: Returned error: The method eth_sendTransaction is not supported. Use eth_sendRawTransaction to send a signed transaction to Besu.

diegoll (Fri, 03 Dec 2021 20:48:40 GMT):
Hello Clippo. Besu doesn't support handling user keys/wallets, you may want to use EthSigner if you really need to use `eth_sendTransaction` or sign your transactions on your client to prepare them for `eth_sendRawTransaction`. You may fin more info [here](https://besu.hyperledger.org/en/stable/HowTo/Send-Transactions/Account-Management/)

shadiayoub (Fri, 03 Dec 2021 21:15:00 GMT):
Been there, done that.

shadiayoub (Fri, 03 Dec 2021 21:40:07 GMT):
Safe-wise I guess no problem. For example when we get a full Ethereum node on Google cloud this is what they do. They copy the data to a new disk, and then the new node takes it from there.

Clippo 3 (Fri, 03 Dec 2021 22:00:57 GMT):
The docs doesn't explain that much of how to use it

Clippo 3 (Fri, 03 Dec 2021 22:01:07 GMT):
:besu:

shadiayoub (Fri, 03 Dec 2021 23:06:55 GMT):
I wish I knew more about development. I am an admin, trying to learn some dev. But diegoll's answer sums it up I guess.

lazaridis.com (Sat, 04 Dec 2021 07:08:56 GMT):
Has joined the channel.

shadiayoub (Sat, 04 Dec 2021 13:00:07 GMT):
It's said that ibft2 is not scalable to large networks. What's the definition if 'large'?

efrain (Sat, 04 Dec 2021 17:49:39 GMT):
I want to run a node using Besu with IBFT2 consensus. This node should not receive transaction fees but there are other validator nodes which do receive the fees. This node should have the full data of the blockchain and RPC endpoint. Is it possible to run a non-validator node?

shadiayoub (Sat, 04 Dec 2021 18:40:25 GMT):
How do nodes get fees? I thought we can set one beneficiary address in genesis.

efrain (Sat, 04 Dec 2021 19:20:28 GMT):
Validator nodes get the transaction fees. The configuration for this is not to be done in genesis file. While starting the nodes with `besu` command we have to include the command line option `--min-gas-price=1000000` or any non-zero value. Then when a transaction happens in the network, the addresses of the validator nodes get the fees.

shadiayoub (Sat, 04 Dec 2021 19:29:32 GMT):
Nice! Very useful information. Thanks...

shadiayoub (Sat, 04 Dec 2021 22:30:56 GMT):
https://docs.goquorum.consensys.net/en/stable/HowTo/Use/adding_nodes/#ibft-qbft-and-clique

saibot940 (Sun, 05 Dec 2021 14:38:29 GMT):
Has joined the channel.

bhupatbheda (Sun, 05 Dec 2021 17:52:18 GMT):
Has joined the channel.

joshuafernandes (Sun, 05 Dec 2021 23:22:45 GMT):
This largely depends on the network config and the contracts that are in play, but about 30 is safe. If all the nodes are using private address for example in a VPC the latency is a lot quicker, than by going via the public internet

joshuafernandes (Sun, 05 Dec 2021 23:35:21 GMT):
Hi @SuzanaMaranhao I think the closest thing we have is the plugins interface and you can develop custom plugin to do this https://besu.hyperledger.org/en/latest/Concepts/Plugins/ In this case the smart contracts & txns and build off that? Tessera has something along these lines though (API metrics) that you could also use as sample code

shadiayoub (Mon, 06 Dec 2021 00:02:19 GMT):
@joshuafernandes Thanks so much...

shadiayoub (Mon, 06 Dec 2021 00:02:48 GMT):
How can we use mining in ibft ? And can it be for a limited supply?

madelinemurray (Mon, 06 Dec 2021 00:43:54 GMT):
Adding some additional info here - the comment about large refers to the number of validators in the network not the total number of nodes.

joshuafernandes (Mon, 06 Dec 2021 00:48:10 GMT):
Thank you Madeline :) yes, should have clarified that. You can have n nodes (non validators) and the comment above is for validators only

jframe (Mon, 06 Dec 2021 00:48:36 GMT):
In ibft2 there is no mining as such. But you can reward the validator the proposes the block by setting the miningbeneficiary and a blockreward in the ibft2 configuration https://besu.hyperledger.org/en/latest/HowTo/Configure/Consensus-Protocols/IBFT/#genesis-file

jframe (Mon, 06 Dec 2021 00:48:36 GMT):
In ibft2 there is no mining as such. But you can reward the validator that proposes the block by setting the miningbeneficiary and a blockreward in the ibft2 configuration https://besu.hyperledger.org/en/latest/HowTo/Configure/Consensus-Protocols/IBFT/#genesis-file

jframe (Mon, 06 Dec 2021 00:48:51 GMT):
that

jframe (Mon, 06 Dec 2021 00:50:14 GMT):
The supply in ibft2 is limited to whatever is allocated in the initial accounts in the genesis file.

babamatmat (Mon, 06 Dec 2021 04:21:50 GMT):
Has joined the channel.

shadiayoub (Mon, 06 Dec 2021 09:20:26 GMT):
@jframe Thank you very much !

JOHNNYDOE (Mon, 06 Dec 2021 13:49:26 GMT):
Has joined the channel.

SuzanaMaranhao (Mon, 06 Dec 2021 14:04:23 GMT):
Thank you, @shadiayoub

binodpandey (Mon, 06 Dec 2021 16:25:52 GMT):
Has joined the channel.

gustavosales (Mon, 06 Dec 2021 17:45:42 GMT):
Has joined the channel.

MarioMichel (Mon, 06 Dec 2021 17:47:40 GMT):
Did someone setup Hyperledger Besu with the RCP enable and using Expedition ? I need some help cause my link between the RPC API and the Block Explorer is not working. :(

Rp27 (Tue, 07 Dec 2021 02:26:21 GMT):
Are you still having this issue? I don't seem to be able to reproduce this error

tuan072090 (Tue, 07 Dec 2021 02:56:51 GMT):
Has joined the channel.

YeMyint (Tue, 07 Dec 2021 05:22:48 GMT):
Has joined the channel.

jainamsha (Tue, 07 Dec 2021 07:31:49 GMT):
Has joined the channel.

jandaman (Tue, 07 Dec 2021 08:57:31 GMT):
Has joined the channel.

TejaSatyanarayana (Tue, 07 Dec 2021 09:31:34 GMT):
Has joined the channel.

TejaSatyanarayana (Tue, 07 Dec 2021 09:34:12 GMT):
Hi, I trying to integrate ERC 1155 with BESU but i am unable to import Openzeppelin of ERC1155 Looking out for some guidance Thank you

TejaSatyanarayana (Tue, 07 Dec 2021 09:34:12 GMT):
Hi, I am trying to integrate ERC-1155 with BESU but i am unable to import Openzeppelin of ERC1155 Looking out for some guidance Thank you

TejaSatyanarayana (Tue, 07 Dec 2021 09:34:12 GMT):
Hi, I am trying to integrate ERC-1155 with BESU but i am unable to import Openzeppelin of ERC1155 Looking out for Help Thank you

ashritha2410 (Tue, 07 Dec 2021 10:06:29 GMT):
Has joined the channel.

Ivanaa9 (Tue, 07 Dec 2021 10:13:47 GMT):
Has joined the channel.

urahara (Tue, 07 Dec 2021 10:17:31 GMT):
Has joined the channel.

carlosalca94 (Tue, 07 Dec 2021 14:14:31 GMT):
Has joined the channel.

Clippo 3 (Tue, 07 Dec 2021 14:48:19 GMT):
Yes , i still can't sign the transaction with javascript

vasiksim (Tue, 07 Dec 2021 20:06:35 GMT):
Has joined the channel.

kennylau89 (Wed, 08 Dec 2021 01:27:05 GMT):
Has joined the channel.

SuzanaMaranhao (Wed, 08 Dec 2021 01:39:18 GMT):
Dears, we changed all genesis file to do the EIP upgrades to Berlin at a specific block that was already generated. The network is still working perfectly, but what is the best way to test if the EIP upgrades really happened?

shemnon (Wed, 08 Dec 2021 03:55:10 GMT):
Check gas costs on sloads on a repeated slot read in the same tx.

shemnon (Wed, 08 Dec 2021 03:55:28 GMT):
Or submit a "type 1" or EIP2930 transaction with an access list.

AJAR (Wed, 08 Dec 2021 05:31:44 GMT):
Has joined the channel.

bajerm (Wed, 08 Dec 2021 08:40:13 GMT):
Has joined the channel.

StrangeDays (Wed, 08 Dec 2021 09:19:24 GMT):
Has joined the channel.

iffathossain (Wed, 08 Dec 2021 09:26:25 GMT):
How to increase throughput?

iffathossain (Wed, 08 Dec 2021 09:26:25 GMT):
How to increase throughput? I am getting a lot lesser throughput (around 400-500) before applying RPC max active connection (default was 80). After applying this configuration the throughput increased, but sometimes more transaction is causing the network to get stuck. I am using docker to run the besu network in AWS, and the network is gas free

TejaSatyanarayana (Wed, 08 Dec 2021 10:19:29 GMT):
Hi, I am trying to integrate ERC-1155 with BESU but i am unable to import Openzeppelin of ERC1155 Looking out for Help Thank you

SujithSu 2 (Wed, 08 Dec 2021 12:18:46 GMT):
Has joined the channel.

MateC89 (Wed, 08 Dec 2021 13:30:45 GMT):
Has joined the channel.

SuzanaMaranhao (Wed, 08 Dec 2021 15:26:31 GMT):
@shemnon - you said "Check gas costs on sloads on a repeated slot read in the same tx. Or submit a "type 1" or EIP2930 transaction with an access list."" What is the best way to do this? I was trying to debug a transaction using Remix and analyzing the "step details". Is it the way to go? What do you recommend?

shemnon (Wed, 08 Dec 2021 15:33:07 GMT):
sload costs changed in general, so any transaction when run through a simulator with the same state should hve the same gas cost. Just compare the costs at the end. But a type 1 transaction is the quickest to verify, but not many wallets support it.

SuzanaMaranhao (Wed, 08 Dec 2021 16:15:02 GMT):
@shemnon I am trying to understand your comment. I think I need to understand some points before it. I do not have experience with low-level ethereum code: 1) Is the Remix debug a simulator to test the gas cost? 2) I think you are referring to EIP-2929, which seems to change the gas cost of SLOAD to 2100. Is it the case? 3) As far as I understood from EIP-2929, I need to check different uses of SLOAD in the same function, correct? Because now you said to look at the cost at the end.... 4) Do you have an example of wallet that supports type 1 transaction? Do you have a link to this?

shemnon (Wed, 08 Dec 2021 16:15:53 GMT):
1-3 yes, verify the simulated gas cost matches the receipt from your network.

shemnon (Wed, 08 Dec 2021 16:16:19 GMT):
4, no, I don't know of a wallet that does type 1, they all went straight to type2/london/eip1559

SuzanaMaranhao (Wed, 08 Dec 2021 16:17:47 GMT):
If "the simulator gas cost matches the receipt" it means that the fork happened?

shemnon (Wed, 08 Dec 2021 16:26:44 GMT):
yes

mdshahbazalam (Wed, 08 Dec 2021 17:33:10 GMT):
Has joined the channel.

george.patterson (Thu, 09 Dec 2021 01:37:44 GMT):
Has joined the channel.

Jerry.Bach (Thu, 09 Dec 2021 03:22:18 GMT):
Has joined the channel.

JamesYL (Thu, 09 Dec 2021 05:38:09 GMT):
Has joined the channel.

marco.cassandro (Thu, 09 Dec 2021 08:45:55 GMT):
hi all, on my besu node i encountered the following error: WARN | JsonRpcHttpService | Rejecting new connection from 193.56.29.33:35546. Max 80 active connections limit reached. it being understood that they can be increased from configuration there is the possibility to control them in real time with some ws or rpc call ? thanks

markatag (Thu, 09 Dec 2021 09:32:46 GMT):
hi all..we have problem with a contract deployed on hyperledger besu, on the withdraw function - the contract works fine on Avalanche, Binance Smart Chain, Polygon and we can withdraw from the smart contract, but on Hyperledger it fails, also address(this).balance returns 0 even if there is balance in smart contract

markatag (Thu, 09 Dec 2021 09:33:10 GMT):
pragma solidity 0.8.9; import "@openzeppelin/contracts/access/Ownable.sol"; import "@openzeppelin/contracts/token/ERC20/IERC20.sol"; contract TokenRecover is Ownable { /** * @dev Remember that only owner can call so be careful when use on contracts generated from other contracts. * @param tokenAddress The token contract address * @param tokenAmount Number of tokens to be sent */ function recoverERC20(address tokenAddress, uint256 tokenAmount) public onlyOwner { IERC20(tokenAddress).transfer(owner(), tokenAmount); } } /** * @title ServiceReceiver * @dev Implementation of the ServiceReceiver */ contract ServiceReceiver is TokenRecover { mapping (bytes32 => uint256) private _prices; event Created(string serviceName, address indexed serviceAddress); function pay(string memory serviceName) public payable { emit Created(serviceName, _msgSender()); } function getPrice(string memory serviceName) public view returns (uint256) { return _prices[_toBytes32(serviceName)]; } function setPrice(string memory serviceName, uint256 amount) public onlyOwner { _prices[_toBytes32(serviceName)] = amount; } function withdraw(uint256 amount) public onlyOwner { payable(owner()).transfer(amount); } function _toBytes32(string memory serviceName) private pure returns (bytes32) { return keccak256(abi.encode(serviceName)); } }

markatag (Thu, 09 Dec 2021 09:33:10 GMT):
function withdraw(uint256 amount) public onlyOwner { payable(owner()).transfer(amount);

markatag (Thu, 09 Dec 2021 09:37:21 GMT):
this contract is used within creator.tagbond.com, which enables ERC20 creation on multiple Layer 2 Networks, with the Tagbond network running on Hyperledger Besu

hjpn (Thu, 09 Dec 2021 10:00:26 GMT):
right. :cool:

nathanbn (Thu, 09 Dec 2021 11:48:02 GMT):
Has joined the channel.

murilo_silva (Thu, 09 Dec 2021 15:07:10 GMT):
Has joined the channel.

KMM 6 (Thu, 09 Dec 2021 15:13:09 GMT):
Has joined the channel.

diane.lockhart2 (Thu, 09 Dec 2021 16:26:07 GMT):
Has joined the channel.

nikusingh (Thu, 09 Dec 2021 18:01:55 GMT):
Has joined the channel.

SuzanaMaranhao (Thu, 09 Dec 2021 19:55:49 GMT):
@shemmon, I could reproduce the test. Thank you!

mahdiabdian (Thu, 09 Dec 2021 20:40:22 GMT):
Has joined the channel.

BoranCar (Thu, 09 Dec 2021 21:45:50 GMT):
Has joined the channel.

mvasavi (Fri, 10 Dec 2021 03:07:24 GMT):
Has joined the channel.

Aqusa (Fri, 10 Dec 2021 03:42:38 GMT):
Has joined the channel.

TejaSatyanarayana (Fri, 10 Dec 2021 04:57:31 GMT):
Hi, I am trying to integrate ERC-1155 with BESU but i am unable to import Openzeppelin of ERC1155 Looking out for Help Thank you

rmdnsd (Fri, 10 Dec 2021 11:29:45 GMT):
Has joined the channel.

nebucaz (Fri, 10 Dec 2021 12:24:43 GMT):
Has joined the channel.

wlhowell (Fri, 10 Dec 2021 14:40:39 GMT):
Has joined the channel.

tabouzid (Fri, 10 Dec 2021 15:19:06 GMT):
Has joined the channel.

Koen84 (Fri, 10 Dec 2021 19:01:55 GMT):
Besu release 21.10.3 has the wrong binaries linked

Koen84 (Fri, 10 Dec 2021 19:02:15 GMT):
`besu/v20.10.3/linux-x86_64/graalvm-java-11`

AutoMAttic (Fri, 10 Dec 2021 19:10:31 GMT):
Has joined the channel.

shemnon (Fri, 10 Dec 2021 19:51:50 GMT):
Here? - https://github.com/hyperledger/besu/releases/tag/21.10.3 Good catch. Updated.

matt.nelson.csi (Fri, 10 Dec 2021 20:22:42 GMT):
Thanks for letting us know - this has been fixed!

matt.nelson.csi (Fri, 10 Dec 2021 20:23:16 GMT):
A zero-day vulnerability has been published in log4j, which is used by Besu. We released 21.10.3 which includes a patch: https://github.com/hyperledger/besu/releases/tag/21.10.3 All users should upgrade immediately or manually mitigate. Manual mitigation can be done by running Besu with this additional flag “‐Dlog4j2.formatMsgNoLookups=True” Note that this may impact the behaviour of your system’s logging if it relies on Lookups for message formatting.

matt.nelson.csi (Fri, 10 Dec 2021 21:00:07 GMT):
Hi all - with regards to the above message - please hold off on updating for now and apply the manual mitigation as necessary. We are testing this release more carefully to see if there are any other issues

Koen84 (Sat, 11 Dec 2021 00:38:26 GMT):
Confirmed as fixed

shadiayoub (Sat, 11 Dec 2021 18:34:32 GMT):
Hello all... How can I trace down the reason no blocks are being produced? It's a new network from scratch. Peers show as connected. Logs don't show complains.

shadiayoub (Sat, 11 Dec 2021 18:34:32 GMT):
Hello all... How can I trace down the reason no blocks are being produced? It's a new network from scratch. Peers show as connected. Logs don't show complains. Edit: Answer is: because I created a network with 15 validators, so from extradata it is expected to have at least 2/3 of these 15 validators operational. I had only 4 running so no blocks were validated. Solution: operate 10 validators at least for this network, or create a network with 4-6 validators and operate 2/3 minimum.

HyperledgerNewbie (Sat, 11 Dec 2021 23:52:04 GMT):
Has joined the channel.

HyperledgerNewbie (Sat, 11 Dec 2021 23:57:36 GMT):
Hi! Excited to be part of the group. I have a question. We are considering the use of Hyperledger but not sure which "version" to use. We believe that BESU may be the best option given our goals. That being said, can someone tell me the following: 1) Does BESU have the ability to leverage Hyperledger functionality on a private network (nodes) and interact with the Ethereum (ETH) Main Net, when necessary? For example, we would have a private ecosystem that facilitates transactions amongst users but leverages an ERC-20 token. That would require calls to ETH main net for balances or transfers but the remaining transactions would be private within our ecosystem. Is this possible with BESU?

brnhrd89 (Sun, 12 Dec 2021 03:18:25 GMT):
Has joined the channel.

sairanjitaw (Sun, 12 Dec 2021 13:47:07 GMT):
Has joined the channel.

HyperledgerNewbie (Sun, 12 Dec 2021 14:02:55 GMT):
And another question for the group comes to mind...what happens with the consensus methods for BESU when ETH 2.0 is introduced?

frankliawesome (Sun, 12 Dec 2021 23:57:21 GMT):
Hey! Sounds like Besu suits your use case perfectly - it's our mainnet client with privacy and permissioning features. I recommend having a read through the docs here https://besu.hyperledger.org/en/stable/ and maybe give the quickstart a go, let us know if you have any questions.

frankliawesome (Sun, 12 Dec 2021 23:58:16 GMT):
Teku is our ETH2.0 client that can be run alongside with Besu https://github.com/ConsenSys/teku

macfarla (Mon, 13 Dec 2021 04:17:26 GMT):
currently this is a CLI option on startup. No ability to change it in real time.

macfarla (Mon, 13 Dec 2021 04:20:30 GMT):
If you can supply the smart contract and complete js script you're using to call it, that would help us in reproducing the problem. Also version of Besu and any other environment info. If you create an issue in github there's a template which has prompts for various info which helps us. Thanks!

macfarla (Mon, 13 Dec 2021 04:22:43 GMT):
If you can supply the error message you're getting, the smart contract and any script you're using to call it, that would help us in reproducing the problem. Also version of Besu and any other environment info. If you create an issue in github there's a template which has prompts for various info which helps us. Thanks!

macfarla (Mon, 13 Dec 2021 04:24:38 GMT):
Also have you tried your smart contract against remix or ganache? Is the problem with besu specifically or further up the stack?

macfarla (Mon, 13 Dec 2021 04:25:10 GMT):
Did you get anywhere with this one?

macfarla (Mon, 13 Dec 2021 04:26:53 GMT):
Besu doesn't support eth_sendTransaction https://besu.hyperledger.org/en/stable/HowTo/Send-Transactions/Account-Management/

macfarla (Mon, 13 Dec 2021 04:29:13 GMT):
You can either sign the transaction yourself - see https://github.com/ConsenSys/web3js-quorum `generateAndSendRawTransaction` OR run ethsigner alongside besu - you can send eth_sendTransaction to ethsigner and it signs and sends tx to besu

macfarla (Mon, 13 Dec 2021 04:32:10 GMT):
We recently put together some tuning tips (mostly aimed at private transactions) but some of this might be relevant for you https://besu.hyperledger.org/en/latest/HowTo/Use-Privacy/Performance-Best-Practices/

ArneGebert (Mon, 13 Dec 2021 11:15:38 GMT):
Sanity-checking: if I want to use a TLS connection between my Dapp and Besu, then I need to use the HTTP RPC API, correct? (and I cannot use the websocket API in that case)

ArneGebert (Mon, 13 Dec 2021 11:15:38 GMT):
Hi there! I have just a quick question to sanity-check: if I want to use a TLS connection between my Dapp and Besu, then I need to use the HTTP RPC API, correct? (and I cannot use the websocket API in that case)

efrain (Mon, 13 Dec 2021 12:45:07 GMT):
I have a besu network. I am using Alethio block explorer. How can I change the ETH symbol to a custom one? I tried creating a config.json file as mentined in the docs but it did not work. https://github.com/Alethio/ethereum-lite-explorer#configuration

efrain (Mon, 13 Dec 2021 12:45:07 GMT):
I have a besu network. I am using Alethio block explorer. How can I change the ETH symbol to a custom one? I tried creating a config.json file and set `ethSymbol` as mentined in the docs but it did not work. https://github.com/Alethio/ethereum-lite-explorer#configuration

PaulHaynes (Mon, 13 Dec 2021 12:55:48 GMT):
Has joined the channel.

arshdebian (Mon, 13 Dec 2021 14:44:02 GMT):
Has joined the channel.

Clippo 3 (Mon, 13 Dec 2021 16:34:59 GMT):
Hey guys how u doing , i've this problem ERRORError: Returned error: Privacy is not enabled someone know maybe a hint of this problem?

SuzanaMaranhao (Mon, 13 Dec 2021 19:13:14 GMT):
Hello colleagues, is Besu 21.7.4 vulnerable to the log4j bug?

shemnon (Mon, 13 Dec 2021 19:50:19 GMT):
Yes. Use 21.10.3 or later.

shemnon (Mon, 13 Dec 2021 19:50:58 GMT):
(21.10.3 is the latest at the moment.)

SuzanaMaranhao (Mon, 13 Dec 2021 20:09:20 GMT):
Thank you

shemnon (Mon, 13 Dec 2021 20:39:33 GMT):
When I say "yes" I mean it has the vulnerable Log4J version. It can be mitigated also with command line flags, or a custom log4j file.

shemnon (Mon, 13 Dec 2021 20:40:02 GMT):
But upgrading versions is the best route if that is an option, generally speaking.

Clippo 3 (Mon, 13 Dec 2021 22:56:14 GMT):
Hello , someone know why this happens

Clippo 3 (Mon, 13 Dec 2021 22:56:15 GMT):
{ "jsonrpc" : "2.0", "id" : 1, "error" : { "code" : -50200, "message" : "The list of members in a privacy group should include self" }

Clippo 3 (Mon, 13 Dec 2021 22:56:24 GMT):
In creating a privacy group

talgar (Mon, 13 Dec 2021 23:33:21 GMT):
Has joined the channel.

macfarla (Mon, 13 Dec 2021 23:44:24 GMT):
it means you haven't enabled privacy https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#privacy-enabled

macfarla (Mon, 13 Dec 2021 23:45:13 GMT):
it means you haven't included yourself (your own tessera public key) in the list when creating the privacy group

macfarla (Mon, 13 Dec 2021 23:47:46 GMT):
yep we don't have TLS for websockets

kbyokin (Tue, 14 Dec 2021 07:22:31 GMT):
Has joined the channel.

MehdiIda (Tue, 14 Dec 2021 08:12:14 GMT):
Has joined the channel.

fabric (Tue, 14 Dec 2021 12:40:25 GMT):
Has joined the channel.

whcjst (Tue, 14 Dec 2021 13:34:17 GMT):
Has joined the channel.

Clippo 3 (Tue, 14 Dec 2021 14:58:18 GMT):
Hello , how you doing i think i fix it buy i have this error rn ERRORError: Returned error: Private from does not match enclave public key

Clippo 3 (Tue, 14 Dec 2021 14:58:27 GMT):
Don't know why

TarsoQueiroz (Tue, 14 Dec 2021 16:52:33 GMT):
Has joined the channel.

MattProto (Tue, 14 Dec 2021 22:34:58 GMT):
Has joined the channel.

AshwiniD 1 (Wed, 15 Dec 2021 05:14:59 GMT):
Has joined the channel.

baron0426 (Wed, 15 Dec 2021 08:47:45 GMT):
Has joined the channel.

macfarla (Thu, 16 Dec 2021 01:00:14 GMT):
privateFrom (when you're sending a private transaction) has to match the Tessera public key you have configured. Besu points to Tessera using privacy-url and the keys need to match

macfarla (Thu, 16 Dec 2021 01:00:31 GMT):
Have you run through this tutorial - it might help cement the basics for you https://besu.hyperledger.org/en/stable/Tutorials/Privacy/Configuring-Privacy/

Anthony022 (Thu, 16 Dec 2021 02:50:23 GMT):
Has joined the channel.

beifangfazhanlu (Thu, 16 Dec 2021 08:33:00 GMT):
Has joined the channel.

StepniowskiP (Thu, 16 Dec 2021 08:52:14 GMT):
Has joined the channel.

leonardoPereira (Thu, 16 Dec 2021 14:08:15 GMT):
Has joined the channel.

leonardoPereira (Thu, 16 Dec 2021 14:13:55 GMT):
Hello everyone. I want to know if besu keeps a list of nodes it's connected to? in case it falls, it can reconnect with these nodes

leonardoPereira (Thu, 16 Dec 2021 14:13:55 GMT):
Hello everyone. I would like to know if besu persists a list of nodes it's connected to? in case it falls, it can reconnect with these nodes. for example: I'm connected to node B from discovery and I'm also connected to bootnode C. If my node goes down, when I get up, I'll connect directly to node B or I'll connect to node C and use discovery to find the B

tdiesler (Thu, 16 Dec 2021 17:24:25 GMT):
Has joined the channel.

grzegorz.drozda (Thu, 16 Dec 2021 18:54:11 GMT):
Has joined the channel.

daiki.nakashima (Fri, 17 Dec 2021 04:18:29 GMT):
Has joined the channel.

taccatisid (Fri, 17 Dec 2021 05:59:43 GMT):
We have just released besu 21.10.4 which upgrades log4j to version 2.16. This patches the second round of log4shell vulnerabilities. Given the criticality of these security issues, please upgrade if you are running any besu version less than 21.10.4.

Abcold (Fri, 17 Dec 2021 06:11:55 GMT):
Has joined the channel.

Abcold (Fri, 17 Dec 2021 06:17:45 GMT):
If the network is already running and I want to add a besu node or verify the node, what should I do?

IgorSim (Fri, 17 Dec 2021 06:37:32 GMT):
Hi, i'm running Besu(21.10.2) on Ethereum mainnet in fast sync mode, so far it reached chain height=13,754,413 and it is not importing any blocks for past several days. In log there are messages like: EthScheduler-Services-7 (requestCompleteTask) | INFO | CompleteTaskStep | Downloaded 396700000 world state nodes. At least 34661198 nodes remaining. EthScheduler-Services-7 (requestCompleteTask) | INFO | CompleteTaskStep | Downloaded 396800000 world state nodes. At least 34652474 nodes remaining. EthScheduler-Services-7 (requestCompleteTask) | INFO | CompleteTaskStep | Downloaded 396900000 world state nodes. At least 34650350 nodes remaining. CPU (4vCPU machine) is around 70%, disk is around 65% full (520GB). I have difficulties to understand what exactly its going on, is it working, is it stuck or else? Thanks.

Amits1 (Fri, 17 Dec 2021 11:10:59 GMT):
Has joined the channel.

UnparagonedWisdom (Fri, 17 Dec 2021 13:02:27 GMT):
Has joined the channel.

UnparagonedWisdom (Fri, 17 Dec 2021 13:05:23 GMT):
Hello Everyone! I am new to using goQuorum and BlockChain in general. I'm a Cloud/DevOps Engineer but i'm really interested to learn blockchain. So i have started a network with instructions from https://consensys.net/quorum/products/guides/getting-started-with-consensys-quorum/ I'm have tried geth attach http://localhost:8545/ but i'm unable to send transaction from the account i imported from the instructions via the CLI. Manually clicking it on metalmask works will allow the transaction to go through. Where can i find the ipc file that the network has started? Am i heading in the right direction?

UnparagonedWisdom (Fri, 17 Dec 2021 13:05:23 GMT):
Hello Everyone! I am new to using Quorum and BlockChain in general. I'm a Cloud/DevOps Engineer but i'm really interested to learn blockchain. So i have started a network with instructions from https://consensys.net/quorum/products/guides/getting-started-with-consensys-quorum/ I'm have tried geth attach http://localhost:8545/ but i'm unable to send transaction from the account i imported from the instructions via the CLI. Manually clicking it on metalmask works will allow the transaction to go through. Where can i find the ipc file that the network has started? Am i heading in the right direction?

leonardoPereira (Fri, 17 Dec 2021 14:48:30 GMT):
hello, Would someone know to tell me where I can find the besu discovery algorithm and how it works?

diegoll (Fri, 17 Dec 2021 16:11:11 GMT):
I think this is a good place to begin https://eth.wiki/en/research/node-discovery-protocol

diegoll (Fri, 17 Dec 2021 16:11:11 GMT):
I think this is a good place to start https://eth.wiki/en/research/node-discovery-protocol

ThreeJam (Fri, 17 Dec 2021 18:02:54 GMT):
Has joined the channel.

SeanBohan (Fri, 17 Dec 2021 19:55:42 GMT):
Has joined the channel.

barcellosrod (Fri, 17 Dec 2021 21:24:19 GMT):
Has joined the channel.

markatag (Sat, 18 Dec 2021 14:30:07 GMT):
hi all...I am trying to create 2 sets of validator machines, with the idea that both have 4 sets of validators, - on one machine it was working fine, we set the other machine up the same way, and added 2 addresses as validators via proposed vote api method...now no more blocks are being produced...and we cannot remove the newly validators because no more blocks are being produced...any ideas where we went wrong?..:-)

markatag (Sat, 18 Dec 2021 14:30:50 GMT):
both machines can see and connect with each other...ports 8545, 30303 , bootnodes, static nodes etc are all working

TheRealJimShady (Sat, 18 Dec 2021 15:33:55 GMT):
Has joined the channel.

EdditLemons (Sat, 18 Dec 2021 17:43:11 GMT):
Has joined the channel.

JeenaDevasia (Sun, 19 Dec 2021 13:23:35 GMT):
Has joined the channel.

ayushridhar (Sun, 19 Dec 2021 18:02:22 GMT):
Has joined the channel.

samih 5 (Sun, 19 Dec 2021 18:04:25 GMT):
Has joined the channel.

jkvargas (Sun, 19 Dec 2021 18:52:01 GMT):
Has joined the channel.

taccatisid (Sun, 19 Dec 2021 21:59:04 GMT):
We have just release besu 21.10.5 (https://github.com/hyperledger/besu/releases/tag/21.10.5). This upgrades log4j to version 2.17 to patch the third critical vulnerability in a fortnight. Although from the limited information we have about this new issue it seems that besu is not affected.

macfarla (Sun, 19 Dec 2021 23:35:09 GMT):
My first guess is that now that you have more validators, you need 2/3 validators to vote

macfarla (Sun, 19 Dec 2021 23:35:15 GMT):
https://besu.hyperledger.org/en/stable/HowTo/Configure/Consensus-Protocols/IBFT/

siladu (Mon, 20 Dec 2021 00:34:49 GMT):
Not exactly sure how the situation occurred. You can bypass the voting and reset the list of validators with a transition though: https://besu.hyperledger.org/en/stable/HowTo/Configure/Consensus-Protocols/Add-Validators/#adding-and-removing-validators-without-voting

lucassaldanha (Mon, 20 Dec 2021 02:29:25 GMT):
Sending transactions to besu won't work in the same way as geth because Besu does not has wallet capabilities. Take a look at https://docs.ethsigner.consensys.net/en/stable/

macfarla (Mon, 20 Dec 2021 02:48:07 GMT):
Once it gets a pivot block, fast sync has a stage where it has to download the world state before it will progress. During this stage, no blocks are imported. It can take several days since the world state is quite large

macfarla (Mon, 20 Dec 2021 02:50:21 GMT):
I'm guessing you're using the quickstart? https://besu.hyperledger.org/en/latest/Tutorials/Developer-Quickstart/#add-a-new-node-to-the-network

macfarla (Mon, 20 Dec 2021 02:51:30 GMT):
The short answer: no. Besu does not persist connections. It will start again with any configured bootnodes/static-nodes

IgorSim (Mon, 20 Dec 2021 06:20:39 GMT):
Thanks, i noticed this morning messages in the log such as: 2021-12-20 05:54:56.819+00:00 | EthScheduler-Services-18 (importBlock) | INFO | FastImportBlocksStep | Completed importing chain segment 13840044 to 13840229, Peers: 26 2021-12-20 05:54:56.820+00:00 | EthScheduler-Services-18 (importBlock) | INFO | PipelineChainDownloader | Chain download complete 2021-12-20 05:54:57.300+00:00 | EthScheduler-Services-2 (requestCompleteTask) | INFO | CompleteTaskStep | Downloaded 500000 world state nodes. At least 7498482 nodes remaining. 2021-12-20 05:55:56.144+00:00 | EthScheduler-Services-2 (requestCompleteTask) | INFO | CompleteTaskStep | Downloaded 600000 world state nodes. At least 8998239 nodes remaining. I guess this is the exact part you're talking about right?

macfarla (Mon, 20 Dec 2021 06:45:10 GMT):
yes indeed

sbohanlf (Mon, 20 Dec 2021 14:06:18 GMT):
Has joined the channel.

FabienFF (Mon, 20 Dec 2021 16:35:30 GMT):
Has joined the channel.

TejaSatyanarayana (Mon, 20 Dec 2021 18:35:59 GMT):
i am researching out for gaming on besu using ERC1155 can you help me!

EmcLab (Mon, 20 Dec 2021 23:40:31 GMT):
Hi all, the besu config.tom used to use * to allow any connection. Today a trusted domain name is added with host-allowlist=["my-domain.com"] and host-cors-original = ["https://my-domain.com"]. Here "my-domain.com" is the domain name for the physical server where 4 besu nodes are running. However there is error of "Host Not Authorized"

EmcLab (Mon, 20 Dec 2021 23:41:02 GMT):
Connection mainchain error [Error: bad response (status=403, headers={"date":"Mon, 20 Dec 2021 23:17:55 GMT","content-type":"application/json; charset=utf-8","content-length":"34","server":"nginx/1.21.4","connection":"keep-alive"}, body="{\"message\":\"Host not authorized.\"}", requestBody="{\"method\":\"eth_blockNumber\",\"params\":[],\"id\":42,\"jsonrpc\":\"2.0\"}", requestMethod="POST", url="https://my-domain.com", code=SERVER_ERROR, version=web/5.5.0)]

EmcLab (Mon, 20 Dec 2021 23:42:24 GMT):
rpc-http-cors-origins and host-allowlist

MBurnes (Mon, 20 Dec 2021 23:42:47 GMT):
Has joined the channel.

EmcLab (Mon, 20 Dec 2021 23:43:53 GMT):
The node has token authorization enabled and it was working before.

macfarla (Tue, 21 Dec 2021 04:20:46 GMT):
that doesn't look like a besu error

macfarla (Tue, 21 Dec 2021 04:25:57 GMT):
so it was working when you had * but when you put the host name into host-allowlist and rpc-http-cors-origins it doesn't work?

macfarla (Tue, 21 Dec 2021 04:26:15 GMT):
I would recommend changing one at a time to try and narrow it down

macfarla (Tue, 21 Dec 2021 04:26:43 GMT):
could it be the host is http not https? could it be a dns issue?

Yangshuangxi (Tue, 21 Dec 2021 06:57:19 GMT):
Has joined the channel.

elchastro (Tue, 21 Dec 2021 10:46:26 GMT):
Has joined the channel.

Clippo 3 (Tue, 21 Dec 2021 15:30:26 GMT):
Hey y'all

Clippo 3 (Tue, 21 Dec 2021 15:30:39 GMT):
How i connect a node to my besu network from another computer

Clippo 3 (Tue, 21 Dec 2021 15:30:48 GMT):
I was reading the docs but i got lost

Clippo 3 (Tue, 21 Dec 2021 15:31:00 GMT):
Like i want to add another validator

shadiayoub (Tue, 21 Dec 2021 15:35:53 GMT):
Follow the step of adding the second node. But replace 127.0.0.1 with your first node's ip address in the enode address. You can ask if you need more details.

Clippo 3 (Tue, 21 Dec 2021 15:37:59 GMT):
Thanks for answering so i need to use this?

Clippo 3 (Tue, 21 Dec 2021 15:38:00 GMT):
besu --data-path=data --genesis-file=../cliqueGenesis.json --permissions-nodes-config-file-enabled --permissions-accounts-config-file-enabled --rpc-http-enabled --rpc-http-api=ADMIN,ETH,NET,PERM,CLIQUE --host-allowlist="*" --rpc-http-cors-origins="*" --p2p-port=30304 --rpc-http-port=8546

Clippo 3 (Tue, 21 Dec 2021 15:39:02 GMT):
Or this besu --data-path=data --genesis-file=../cliqueGenesis.json --bootnodes= --network-id 123 --p2p-port=30304 --rpc-http-enabled --rpc-http-api=ETH,NET,CLIQUE --host-allowlist="*" --rpc-http-cors-origins="all" --rpc-http-port=8546

Clippo 3 (Tue, 21 Dec 2021 15:39:25 GMT):
But mi question is that the other computer needs the genesis file?

shadiayoub (Tue, 21 Dec 2021 15:40:43 GMT):
Yes. Each computer needs a genesis In fact, each node does. But nodes on a single computer can share the genesis file for ease. Copy the contents of genesis file to the new node

Clippo 3 (Tue, 21 Dec 2021 15:41:01 GMT):
Thanks very much

Clippo 3 (Tue, 21 Dec 2021 15:41:11 GMT):
I appreciate it now i understand it

shadiayoub (Tue, 21 Dec 2021 15:42:31 GMT):
Same goes for permissions and static-nodes files. But those two do not have to be the same on all nodes. Genesis does.

shadiayoub (Tue, 21 Dec 2021 15:45:51 GMT):
It's worth mentioning that on the computer you can leave out specifying the ports.. i.e. 8546 and 30304 Since it will use the default ports 8545 and 30303 without conflicts. In the tutorial however, nodes are on the same machine, therefore we have to specify different ports for additional nodes.

shadiayoub (Tue, 21 Dec 2021 15:45:51 GMT):
It's worth mentioning that on the second computer you can leave out specifying the ports.. i.e. 8546 and 30304 Since it will use the default ports 8545 and 30303 without conflicts. In the tutorial however, nodes are on the same machine, therefore we have to specify different ports for additional nodes.

Clippo 3 (Tue, 21 Dec 2021 15:51:50 GMT):
Thanks!!! Gotcha

Clippo 3 (Tue, 21 Dec 2021 15:51:53 GMT):
!!!!

IgorSim (Tue, 21 Dec 2021 16:29:16 GMT):
Hi, I've added world state completed and pending requests to our grafana dashboard, pending requests looks strange with spikes i don't understand, is this normal behaviour or this indicate some problem?

IgorSim (Tue, 21 Dec 2021 16:29:30 GMT):

besu-grafana.png

skbalahere (Tue, 21 Dec 2021 16:49:35 GMT):
Has joined the channel.

Clippo 3 (Tue, 21 Dec 2021 22:00:25 GMT):
Can u increase the gas price in besu any admin methods?

macfarla (Tue, 21 Dec 2021 22:45:40 GMT):
@JiriPeinlich is this normal behavior for fast sync? I would think it looks ok but you have more knowledge of this area!

frankliawesome (Wed, 22 Dec 2021 02:44:34 GMT):
https://besu.hyperledger.org/en/stable/Reference/API-Methods/#miner_changetargetgaslimit is this what you're looking for?

Clippo 3 (Wed, 22 Dec 2021 04:53:52 GMT):
Hello , that's only miner ?

a-p-petrosyan (Wed, 22 Dec 2021 08:11:42 GMT):
Has joined the channel.

ammaarpatel99 (Wed, 22 Dec 2021 10:07:16 GMT):
Has joined the channel.

Abhi-Mynam (Wed, 22 Dec 2021 11:34:09 GMT):
Has joined the channel.

DinuraSeneviratne1 (Wed, 22 Dec 2021 12:16:11 GMT):
Has joined the channel.

shadiayoub (Wed, 22 Dec 2021 18:18:05 GMT):
Gas price for the network you mean I guess. This attribute in Genesis cannot be changed after running the network, as mentioned in the docs.

shadiayoub (Wed, 22 Dec 2021 18:19:44 GMT):
I tried to locate this information in docs but couldn't. But it is mentioned somewhere in the official docs.

leonardoPereira (Wed, 22 Dec 2021 21:02:57 GMT):
Hello everyone. could you tell me, how many peers the nodes can support in besu ?

shemnon (Wed, 22 Dec 2021 21:28:54 GMT):
Default is 25. No one that I am aware of has tried to see where the upper limit ie.

shemnon (Wed, 22 Dec 2021 21:28:54 GMT):
Default is 25. No one that I am aware of has tried to see where the upper limit is.

shadiayoub (Wed, 22 Dec 2021 21:48:12 GMT):
As IBFT is not scalable to large number of nodes, what is considered the maximum number of nodes for ibft to stay efficient?

shadiayoub (Wed, 22 Dec 2021 21:48:12 GMT):
As IBFT is not scalable to large number of nodes, what is considered being the maximum number of nodes for ibft to stay efficient?

p.amrith (Thu, 23 Dec 2021 05:18:54 GMT):
Has joined the channel.

krishna1982 (Thu, 23 Dec 2021 06:20:21 GMT):
Has joined the channel.

Dixit 13 (Thu, 23 Dec 2021 07:06:44 GMT):
Has joined the channel.

KavyaR (Thu, 23 Dec 2021 11:44:40 GMT):
Has joined the channel.

tahyonline (Thu, 23 Dec 2021 16:40:53 GMT):
Has joined the channel.

SkandaGurunathanR (Thu, 23 Dec 2021 19:10:44 GMT):
Has joined the channel.

mgrant (Fri, 24 Dec 2021 12:14:53 GMT):
Has joined the channel.

nandrews283 (Fri, 24 Dec 2021 13:59:04 GMT):
Has joined the channel.

shadiayoub (Sat, 25 Dec 2021 17:54:04 GMT):
What's the correct docker command to run Besu using --config-file=config.toml, please?

lvillar (Sun, 26 Dec 2021 03:30:53 GMT):
Has joined the channel.

friendlyhacker (Sun, 26 Dec 2021 07:12:36 GMT):
Has joined the channel.

skittlez1522 (Mon, 27 Dec 2021 03:32:38 GMT):
Has joined the channel.

sudharsan.s (Mon, 27 Dec 2021 09:42:17 GMT):
Has joined the channel.

yogi-cw (Mon, 27 Dec 2021 12:07:41 GMT):
Has joined the channel.

marya1 (Mon, 27 Dec 2021 14:19:56 GMT):
Has joined the channel.

GrzegorzDrozda (Mon, 27 Dec 2021 19:18:55 GMT):
Has joined the channel.

omkar-mohanty (Tue, 28 Dec 2021 04:07:33 GMT):
Has joined the channel.

Chuancy (Tue, 28 Dec 2021 07:03:53 GMT):
Has joined the channel.

marchelbudi.k (Tue, 28 Dec 2021 08:19:06 GMT):
Hi all, I saw in one of the documentation today that ether transfer cannot be private. I was wondering if it is only limited to ether or other custom ERC20 tokens. Also if ether transfer cannot be private does private transaction pays gas?

hejte (Tue, 28 Dec 2021 11:00:16 GMT):
Has joined the channel.

EmSpireInc (Tue, 28 Dec 2021 11:52:59 GMT):
Has joined the channel.

Xcerla (Tue, 28 Dec 2021 21:24:50 GMT):
Has joined the channel.

GrzegorzDrozda (Wed, 29 Dec 2021 14:05:37 GMT):
In dockerized world it is quite hard to overwrite --entrypoint with parameter. I would rather try to give config via environment variable eg. docker run hyperledger/besu:latest -e BESU_CONFIG_FILE=/config.toml ( if file is on your localfs you need to map it as well)

GrzegorzDrozda (Wed, 29 Dec 2021 14:08:06 GMT):
Hi Everyone! Im new with besu and trying to run besu on kubernetes. I was using https://github.com/ConsenSys/quorum-kubernetes/tree/master/playground/kubectl/quorum-besu/clique as baseline and when running private network with 4 validators and 3 nodes I started receiving problems:

GrzegorzDrozda (Wed, 29 Dec 2021 14:08:06 GMT):
Hi Everyone! Im new with besu and trying to run besu on kubernetes. I was using https://github.com/ConsenSys/quorum-kubernetes/tree/master/playground/kubectl/quorum-besu/clique as baseline and when running private network with 4 validators and 3 nodes I started receiving problems: ` EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 6`

GrzegorzDrozda (Wed, 29 Dec 2021 14:08:06 GMT):
Hi Everyone! Im new with besu and trying to run besu on kubernetes. I was using https://github.com/ConsenSys/quorum-kubernetes/tree/master/playground/kubectl/quorum-besu/clique as baseline and when running private network with 4 validators and 3 nodes I started receiving problems: ` EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 6` Probably problem is with my kubernetes instance but no idea how I can troubleshoot this error

GrzegorzDrozda (Wed, 29 Dec 2021 14:08:06 GMT):

shadiayoub (Wed, 29 Dec 2021 14:22:19 GMT):
Thank you very much.

Ranbowhu (Wed, 29 Dec 2021 14:25:51 GMT):
Has joined the channel.

GrzegorzDrozda (Wed, 29 Dec 2021 17:29:18 GMT):
This is additional log (maybe this will help):

GrzegorzDrozda (Wed, 29 Dec 2021 17:29:18 GMT):
This is additional log (maybe this will help): `2021-12-29 17:28:16.939+00:00 | vert.x-eventloop-thread-1 | DEBUG | PeerDiscoveryController | Peer table refresh triggered by insufficient peers 2021-12-29 17:28:16.940+00:00 | vert.x-eventloop-thread-1 | DEBUG | RecursivePeerRefreshState | Start peer search. 2021-12-29 17:28:16.940+00:00 | vert.x-eventloop-thread-1 | DEBUG | RecursivePeerRefreshState | Skipping bonding round because no candidates are available 2021-12-29 17:28:16.940+00:00 | vert.x-eventloop-thread-1 | DEBUG | RecursivePeerRefreshState | Initiating neighbours round with 3 candidates from 3 tracked nodes 2021-12-29 17:28:16.962+00:00 | vert.x-eventloop-thread-1 | DEBUG | RecursivePeerRefreshState | Received neighbours packet with 3 neighbours 2021-12-29 17:28:16.963+00:00 | vert.x-eventloop-thread-1 | DEBUG | RecursivePeerRefreshState | Received neighbours packet with 3 neighbours 2021-12-29 17:28:16.963+00:00 | vert.x-eventloop-thread-1 | DEBUG | RecursivePeerRefreshState | Received neighbours packet with 4 neighbours 2021-12-29 17:28:16.963+00:00 | vert.x-eventloop-thread-1 | DEBUG | RecursivePeerRefreshState | Skipping bonding round because no candidates are available 2021-12-29 17:28:16.963+00:00 | vert.x-eventloop-thread-1 | DEBUG | RecursivePeerRefreshState | Iterative peer search complete. 3 peers processed over 2 rounds.`

GrzegorzDrozda (Wed, 29 Dec 2021 18:40:08 GMT):
Nevermind - I messed up with keys for validators :)

IraqReshi (Thu, 30 Dec 2021 07:27:29 GMT):
Has joined the channel.

dev2020 (Thu, 30 Dec 2021 09:09:04 GMT):
Has joined the channel.

JiriPeinlich (Thu, 30 Dec 2021 13:24:52 GMT):
This is normal fast sync behaviour, we are working on improving it

JiriPeinlich (Thu, 30 Dec 2021 13:24:52 GMT):
This is normal fast sync behaviour, we are working on improving it. There is now WIP to reduce the amount of stored working state requests https://github.com/hyperledger/besu/pull/3202

devonartis (Thu, 30 Dec 2021 15:55:27 GMT):
Has joined the channel.

IgorSim (Thu, 30 Dec 2021 17:42:44 GMT):
Thanks, number of pending requests dropped to zero and chain height moved to head of chain and I thought things will 'stabilize' but after some time client entered again in this mode with huge number of pending requests and increasing number of blocks behind. Is this also normal behaviour and is there any meaning to anticipate when it will finish?

IgorSim (Thu, 30 Dec 2021 17:43:06 GMT):

besu-12-30.png

gaurav471 (Thu, 30 Dec 2021 19:06:16 GMT):
Has joined the channel.

MojoCoderBo (Fri, 31 Dec 2021 07:11:55 GMT):
Has joined the channel.

Ojas365 (Fri, 31 Dec 2021 09:16:25 GMT):
Has joined the channel.

parnika24 (Fri, 31 Dec 2021 10:59:12 GMT):
Has joined the channel.

JiriPeinlich (Fri, 31 Dec 2021 11:16:49 GMT):
I think that represents a change of pivot block for fast sync

JiriPeinlich (Fri, 31 Dec 2021 11:17:00 GMT):
so I would consider it normal

kareemikassab (Fri, 31 Dec 2021 12:33:00 GMT):
Has joined the channel.

MaximeBarbet (Fri, 31 Dec 2021 15:16:54 GMT):
Has joined the channel.

vp10905353 (Fri, 31 Dec 2021 19:14:17 GMT):
Has joined the channel.

jsolderitsch (Fri, 31 Dec 2021 21:49:56 GMT):
Has joined the channel.

manjinder98 (Sat, 01 Jan 2022 14:36:47 GMT):
Has joined the channel.

bshada (Sat, 01 Jan 2022 20:36:04 GMT):
Has joined the channel.

kma-blockchain (Sun, 02 Jan 2022 09:20:05 GMT):
Has joined the channel.

yangzifeng1995 (Sun, 02 Jan 2022 10:14:14 GMT):
Has joined the channel.

ManjinderSingh (Sun, 02 Jan 2022 10:43:32 GMT):
Has joined the channel.

Nishantsharma12 (Sun, 02 Jan 2022 13:25:13 GMT):
Has joined the channel.

HackyCoder0951 (Mon, 03 Jan 2022 08:24:19 GMT):
Has joined the channel.

macfarla (Mon, 03 Jan 2022 10:56:48 GMT):
The restriction is only for ether transfers. That is, private transactions cannot have value > 0

macfarla (Mon, 03 Jan 2022 10:58:44 GMT):
Private transactions can still pay gas. You can configure the network to be zero gas (free gas) or non-zero gas - more info here - https://besu.hyperledger.org/en/stable/HowTo/Configure/FreeGas/#configuring-free-gas-in-hyperledger-besu

macfarla (Mon, 03 Jan 2022 11:03:48 GMT):
Welcome new members 🙂 Let us know if you've got any questions about getting started with Hyperledger Besu. The quickstart is a good place to start!

shadiayoub (Mon, 03 Jan 2022 13:01:48 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=XTdBrphABReZ3aPoc) I do have one: to use hashicorp for keys is it required that we use quorum-key-manager?

tanujdev (Mon, 03 Jan 2022 16:22:38 GMT):
Has joined the channel.

kinagimanju (Mon, 03 Jan 2022 16:42:30 GMT):
Has joined the channel.

richardspeter (Mon, 03 Jan 2022 19:05:44 GMT):
Has joined the channel.

loganb 6 (Mon, 03 Jan 2022 21:45:18 GMT):
Has joined the channel.

macfarla (Mon, 03 Jan 2022 22:04:12 GMT):
You can use EthSigner with HashiCorp keys https://docs.ethsigner.consensys.net/en/stable/HowTo/Store-Keys/Use-Hashicorp/

haruharu (Tue, 04 Jan 2022 01:10:29 GMT):
Has joined the channel.

zondervan.v.calvez (Tue, 04 Jan 2022 01:43:37 GMT):
Has joined the channel.

micoferdinand (Tue, 04 Jan 2022 01:50:08 GMT):
Has joined the channel.

aldous.arvin.alvarez (Tue, 04 Jan 2022 01:53:10 GMT):
Has joined the channel.

charellesandig (Tue, 04 Jan 2022 02:09:52 GMT):
Has joined the channel.

suomea (Tue, 04 Jan 2022 08:36:08 GMT):
Has joined the channel.

suomea (Tue, 04 Jan 2022 08:55:12 GMT):
I am learning the data structure of Ethereum transaction receipt. I want to know which field is the return result of the function after calling the smart contract?

mr3e (Tue, 04 Jan 2022 09:23:40 GMT):
Has joined the channel.

vborisik (Tue, 04 Jan 2022 11:18:11 GMT):
Has joined the channel.

AlaeEddineLahlali (Tue, 04 Jan 2022 14:04:34 GMT):
Has joined the channel.

billet75 (Tue, 04 Jan 2022 15:14:29 GMT):
Has joined the channel.

billet75 (Tue, 04 Jan 2022 15:23:29 GMT):
My Enterprise is at a heightened security awareness with the log4j vulnerabilities as are most. We scanned 21.10.5 in Nexus IQ, the scan results are below. We cannot proceed with security vulnerabilities seven or higher. When can these be remediated? When do you plan to update log4j to 2.17.1? hreat of 10 com.fasterxml.jackson.core : jackson-databind : 2.12.4 com.google.code.gson : gson : 2.8.6 com.squareup.okhttp: okhttp: 2.7.5 com.squareup.okhttp3 : okhttp:4.9.1 io.kubernetes : client-java : 5.0.0 io.netty: netty-all : 4.1.66. Final io.netty: netty-all: 4.1.66. Final io.netty: netty-codec : 4.1.65.Final io.netty: netty-codec : 4.1.65.Final io.netty: netty-codec : 4.1.65. Final Threat of 7 com.squareup.okhttp: okhttp: 2.7.5 commons-codec : commons-codec : 1.13 io.grpc: grpc-core: 1.39.0 io.kubernetes: client-java : 5.0.0 io.netty: netty-all : 4.1.66.Final io.netty: netty-codec-http: 4.1.65.Final io.netty: netty-handler : 4.1.65.Final commons-codec: commons-codec: 1.13 io.grpc: grpc-core : 1.39.0 io.kubernetes : client-java:5.0.0 io.netty: netty-all : 4.1.66.Final io.netty: netty-codec-http : 4.1.65.Final io.netty: netty-handler: 4.1.65.Final io.vertx: vertx-web : 3.9.8 org.apache.logging.log4j : log4j-core : 2.17.0 org.bouncycastle : bcprov-ext-jdk15on: 1.61 org.bouncycastle : bcprov-jdk15on: 1.69

billet75 (Tue, 04 Jan 2022 15:23:29 GMT):
My Enterprise is at a heightened security awareness with the log4j vulnerabilities as are most. We scanned 21.10.5 in Nexus IQ, the scan results are below. We cannot proceed with security vulnerabilities seven or higher. When can these be remediated? When do you plan to update log4j to 2.17.1? Threat of 10 com.fasterxml.jackson.core : jackson-databind : 2.12.4 com.google.code.gson : gson : 2.8.6 com.squareup.okhttp: okhttp: 2.7.5 com.squareup.okhttp3 : okhttp:4.9.1 io.kubernetes : client-java : 5.0.0 io.netty: netty-all : 4.1.66. Final io.netty: netty-all: 4.1.66. Final io.netty: netty-codec : 4.1.65.Final io.netty: netty-codec : 4.1.65.Final io.netty: netty-codec : 4.1.65. Final Threat of 7 com.squareup.okhttp: okhttp: 2.7.5 commons-codec : commons-codec : 1.13 io.grpc: grpc-core: 1.39.0 io.kubernetes: client-java : 5.0.0 io.netty: netty-all : 4.1.66.Final io.netty: netty-codec-http: 4.1.65.Final io.netty: netty-handler : 4.1.65.Final commons-codec: commons-codec: 1.13 io.grpc: grpc-core : 1.39.0 io.kubernetes : client-java:5.0.0 io.netty: netty-all : 4.1.66.Final io.netty: netty-codec-http : 4.1.65.Final io.netty: netty-handler: 4.1.65.Final io.vertx: vertx-web : 3.9.8 org.apache.logging.log4j : log4j-core : 2.17.0 org.bouncycastle : bcprov-ext-jdk15on: 1.61 org.bouncycastle : bcprov-jdk15on: 1.69

billet75 (Tue, 04 Jan 2022 15:23:29 GMT):
My Enterprise is at a heightened security awareness with the log4j vulnerabilities as are most. We scanned 21.10.5 in Nexus IQ, the scan results are below. We cannot proceed with security vulnerabilities seven or higher. When can these be remediated? When do you plan to update log4j to 2.17.1? Threat of 10 com.fasterxml.jackson.core : jackson-databind : 2.12.4 com.google.code.gson : gson : 2.8.6 com.squareup.okhttp: okhttp: 2.7.5 com.squareup.okhttp3 : okhttp:4.9.1 io.kubernetes : client-java : 5.0.0 io.netty: netty-all : 4.1.66. Final io.netty: netty-all: 4.1.66. Final io.netty: netty-codec : 4.1.65.Final io.netty: netty-codec : 4.1.65.Final io.netty: netty-codec : 4.1.65. Final Threat of 7 com.squareup.okhttp: okhttp: 2.7.5 commons-codec : commons-codec : 1.13 io.grpc: grpc-core: 1.39.0 io.kubernetes: client-java : 5.0.0 io.netty: netty-all : 4.1.66.Final io.netty: netty-codec-http: 4.1.65.Final io.netty: netty-handler : 4.1.65.Final commons-codec: commons-codec: 1.13 io.grpc: grpc-core : 1.39.0 io.kubernetes : client-java:5.0.0 io.netty: netty-all : 4.1.66.Final io.netty: netty-codec-http : 4.1.65.Final io.netty: netty-handler: 4.1.65.Final io.vertx: vertx-web : 3.9.8 org.apache.logging.log4j : log4j-core : 2.17.0 org.bouncycastle : bcprov-ext-jdk15on: 1.61 org.bouncycastle : bcprov-jdk15on: 1.69

arvieira (Tue, 04 Jan 2022 15:41:51 GMT):
Has joined the channel.

atoulme (Tue, 04 Jan 2022 17:24:58 GMT):
@arvieira please open an issue on the repo thanks!

billet75 (Tue, 04 Jan 2022 18:20:33 GMT):
will do thanks

damiandennis (Tue, 04 Jan 2022 18:46:57 GMT):
Has joined the channel.

shadiayoub (Tue, 04 Jan 2022 23:12:48 GMT):
OK.. So not for the validator node keys. How should we secure those if not using vault?

Nocturne (Wed, 05 Jan 2022 00:22:10 GMT):
Has joined the channel.

jframe (Wed, 05 Jan 2022 01:26:51 GMT):
That's right EthSigner is only for signing transactions not the node key.

jframe (Wed, 05 Jan 2022 01:27:04 GMT):
There is no support for using hashicorp to secure node keys in Besu

jframe (Wed, 05 Jan 2022 01:27:04 GMT):
There is no support for using hashicorp or vault any other vault to secure node keys in Besu

jframe (Wed, 05 Jan 2022 01:29:29 GMT):
You will need to use normal OS security practices to secure the node key file

macfarla (Wed, 05 Jan 2022 03:37:07 GMT):
thanks @jframe

IgorSim (Wed, 05 Jan 2022 07:39:02 GMT):
Thanks for answer, what i don't understand is how to interpret this, i've been running this client for almost 2 months and this `behaviour` just keeps repeating, meaning at some point block behind eventually will reach zero but afterwards it will start to increase (reaching 10K, 20K etc) which i guess it means my client is no longer in sync which is showstopper. Or, i'm missing something?

PunleuChomnan (Wed, 05 Jan 2022 09:22:18 GMT):
Has joined the channel.

shadiayoub (Wed, 05 Jan 2022 09:49:23 GMT):
Thanks.. @jframe

VenessaK (Wed, 05 Jan 2022 14:38:11 GMT):
Has joined the channel.

gladsjr (Wed, 05 Jan 2022 15:09:14 GMT):
Has joined the channel.

gladsjr (Wed, 05 Jan 2022 15:09:14 GMT):
Hi everyone. Does anybody know whether there is a call to make a Besu node (in a permissioned setting) to try connecting to other peers? We have a permissioned dynamic connected blockchain (not static connections) and some nodes are less connected than expected. We could use addPeers, but it would be a static-connections-like solution. I could not find a call to make nodes dynamic discover and connect to other peers. Any thoughs? Thank you.

gladsjr (Wed, 05 Jan 2022 15:09:14 GMT):
Hi everyone. Does anybody know if there is a call to make a Besu node (in a permissioned setting) to try connecting to other peers? We have a permissioned dynamic connected blockchain (not static connections) and some nodes are less connected than expected. We could use addPeers, but it would be a static-connections-like solution. I could not find a call to make nodes dynamic discover and connect to other peers. Any thoughs? Thank you.

JiriPeinlich (Wed, 05 Jan 2022 15:39:40 GMT):
Currently, the algorithm for downloading world state is processing the world state tree close to almost breath first. That has the following consequences: 1) We need to store huge number of requests of state nodes that we still need to process in a cache 2) When we reset to a new pivot block, we need to rerun the algorithm from start. There is a PR now in works that changes the algorithm to close to almost depth first search. After it will get merged into main you should see this behaviour to be improved. (https://github.com/hyperledger/besu/pull/3202)

Zeddrich (Wed, 05 Jan 2022 15:59:11 GMT):
Has joined the channel.

IgorSim (Wed, 05 Jan 2022 16:09:18 GMT):
OK, tnx for quick reply :) So, i guess there isn't much to do except upgrading the version once PR is merged and released

RoboCopsGoneMad (Wed, 05 Jan 2022 20:36:32 GMT):
@arvieira latest release should have you covered https://github.com/hyperledger/besu/releases/tag/21.10.6

macfarla (Wed, 05 Jan 2022 21:02:15 GMT):
21.10.6 has the log4j update but not the latest of other dependencies - I've updated a few more already, aiming to get this included in RC2 @RoboCopsGoneMad https://github.com/hyperledger/besu/issues/3229

RoboCopsGoneMad (Wed, 05 Jan 2022 21:04:18 GMT):
my mistake, i tagged the wrong user anyway...

macfarla (Wed, 05 Jan 2022 21:05:06 GMT):
There isn't a "start a discovery round" call but discovery does happen periodically, based on numbers of peers and peer thresholds. You can use the admin_addPeer to force a specific connection to be attempted but as you say this is point to point, not discovery.

macfarla (Wed, 05 Jan 2022 21:06:04 GMT):
Could it be an issue with your permissioning config? maybe a particular node is not on the list? Are you using onchain or offchain permissioning?

macfarla (Wed, 05 Jan 2022 21:07:00 GMT):
oops

RoboCopsGoneMad (Wed, 05 Jan 2022 21:08:15 GMT):
brain broke, stepping away from keyboard

gladsjr (Wed, 05 Jan 2022 21:23:00 GMT):
Thanks for your answer. Do you know how often this discovery round is and is it configurable?

gladsjr (Wed, 05 Jan 2022 21:24:29 GMT):
We use on chain permissioning. I'll take a look. Because there must be some root cause for the current situation...

macfarla (Wed, 05 Jan 2022 21:42:28 GMT):
The frequency is not configurable. There is --max-peers as well as --remote-connections-limit-enabled and --remote-connections-max-percentage and also https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#random-peer-priority-enabled which I didn't even know about!

macfarla (Wed, 05 Jan 2022 21:42:39 GMT):
Also consider using bootnodes if you aren't already

gladsjr (Wed, 05 Jan 2022 21:48:17 GMT):
Thanks for the references. If the frequency is not configurable, what is its value?

gladsjr (Wed, 05 Jan 2022 21:50:30 GMT):
We are using boot nodes, indeed. Sorry, I did not get why bootnodes influence this question.

macfarla (Wed, 05 Jan 2022 21:58:10 GMT):
bootnodes might help because when a node starts up it always attempts to connect to its configured bootnodes. Similarly in onchain permissioning it is a fallback - if the node gets to zero peers it will try to connect to bootnodes

macfarla (Wed, 05 Jan 2022 22:00:02 GMT):
As far as the frequency of peer discovery - I think it is more to do with whether the node thinks its peer table is full (max-peers) - if it doesn't have that many peers yet it will still be searching for peers using discovery. In a private network like you're describing this should be sufficient (on mainnet it's different because you don't want to be stuck with the same peers forever)

macfarla (Wed, 05 Jan 2022 22:00:44 GMT):
so you should be able to see in the logs where the nodes are searching for peers

gladsjr (Wed, 05 Jan 2022 22:00:54 GMT):
Ah, ok. Got it! The network is very stable (I'm even considering seriously to make it static), so nodes coming in and out do not happen frequently.

macfarla (Wed, 05 Jan 2022 22:14:42 GMT):
that's why the static-nodes option exists! discovery is inherently messy

gladsjr (Wed, 05 Jan 2022 22:16:50 GMT):
Yeah! Now I see!... :tears:

gladsjr (Wed, 05 Jan 2022 22:18:46 GMT):
Well, does it still make sense using boot nodes in a static network???

macfarla (Wed, 05 Jan 2022 22:24:55 GMT):
bootnodes are like static nodes if you're using discovery. So if you're using static nodes, you don't need discovery

macfarla (Wed, 05 Jan 2022 22:25:22 GMT):
Does that make sense?

PureBlack (Thu, 06 Jan 2022 01:07:47 GMT):
Has joined the channel.

esainty (Thu, 06 Jan 2022 01:20:07 GMT):
Has joined the channel.

GarySchulte (Thu, 06 Jan 2022 01:47:30 GMT):
@gladsjr besu supports custom dns discovery configuration via genesis (custom config of eip1459 dns node discovery). That is probably the best route to finding dynamic peers quickly and reliably. If the nodes are going to join and drop regularly, you would likely need to create automation to create/update the DNS TEXT entries for each node. See: https://github.com/hyperledger/besu/issues/1632 https://eips.ethereum.org/EIPS/eip-1459

pvsmagbojos (Thu, 06 Jan 2022 04:37:42 GMT):
Has joined the channel.

ntlm (Thu, 06 Jan 2022 05:38:38 GMT):
Has joined the channel.

obioram (Thu, 06 Jan 2022 06:36:50 GMT):
Has joined the channel.

ayush5936 (Thu, 06 Jan 2022 06:38:39 GMT):
Has joined the channel.

SwapnaliDive (Thu, 06 Jan 2022 06:47:07 GMT):
Has joined the channel.

madfu (Thu, 06 Jan 2022 07:27:43 GMT):
Has joined the channel.

Teharjula (Thu, 06 Jan 2022 09:59:20 GMT):
Has joined the channel.

DIBYENDUBAG (Thu, 06 Jan 2022 11:51:23 GMT):
Has joined the channel.

Paul_Tabled (Thu, 06 Jan 2022 12:09:11 GMT):
Has joined the channel.

nikolas (Thu, 06 Jan 2022 13:13:30 GMT):
Hi, happy new year. Quick question: assume there is a malicious tx storing unwanted data (e.g. illegal) on the ledger and we want the data removed, is there a way? Or modifying the peers and making a hard-fork is the only way?

jas191 (Thu, 06 Jan 2022 14:12:47 GMT):
Has joined the channel.

JiriPeinlich (Thu, 06 Jan 2022 14:14:50 GMT):
I am not completely knowledgable about the topic, also I don't know what you mean by "we" in "we want the data removed" but if your client will consider some transactions invalid (for instance for legal reasons) than you will fork yourself into another chain that does not have those in the chain (lets call it "legal chain"). If you convinced the majority of the network to consider the transaction invalid, then that would then make everybody join the majority eventually, even the participants that don't care about the legality.

nikolas (Thu, 06 Jan 2022 14:17:52 GMT):
hi @JiriPeinlich thanks for the response. By "we" I am referring to the peers operators of a permissioned network. Assuming there is consensus that data from a tx should be removed from the ledger, are there other ways than modifying the source code of the peer?

nikolas (Thu, 06 Jan 2022 14:17:52 GMT):
hi @JiriPeinlich thanks for the response. By "we" I am referring to the peer operators of a permissioned network. Assuming there is consensus that data from a tx should be removed from the ledger, are there other ways than modifying the source code of the peer?

gladsjr (Thu, 06 Jan 2022 14:21:40 GMT):
Yes! It feels like it makes sense...

JiriPeinlich (Thu, 06 Jan 2022 14:21:48 GMT):
Currently, the ledger is immutable. So, data cannot be removed without reordering the history. There might be in the future a day when we start dropping historical data from the memory of nodes. Currently, the only way I see is reorg using change of the source code of peers.

nikolas (Thu, 06 Jan 2022 14:23:13 GMT):
Thank you, that was my understanding too, I appreciate your feedback!

JiriPeinlich (Thu, 06 Jan 2022 14:23:35 GMT):
This eip might interest you https://eips.ethereum.org/EIPS/eip-4444

MyeongheeJoung (Thu, 06 Jan 2022 18:37:47 GMT):
Has joined the channel.

gladsjr (Thu, 06 Jan 2022 18:47:24 GMT):
@macfarla , I was revising carefully the parameters (options) you said could be useful to examine. It called my attention that there is no a minimum connections option or something like that. Assuming this option does not exist, what is the threshold under which a node start a new discovery?

gladsjr (Thu, 06 Jan 2022 18:50:22 GMT):
Oh, great! This seems a little more involved to me, so I'm taking more time to process this information. Thank you, @GarySchulte!

Sergioco 2 (Thu, 06 Jan 2022 19:50:04 GMT):
Has joined the channel.

macfarla (Thu, 06 Jan 2022 21:14:07 GMT):
I think it's if peerCount < maxPeers

gladsjr (Thu, 06 Jan 2022 21:16:10 GMT):
Really? It does not look like that's what's happening in our network. Nodes have much less connections than the maximum.

gladsjr (Thu, 06 Jan 2022 21:16:58 GMT):
Maybe it's some kind of issue, since our nodes (the ones that belong to the company I work to) are having problems with permissioning.

Tenno (Fri, 07 Jan 2022 01:58:12 GMT):
Has left the channel.

mzago (Fri, 07 Jan 2022 16:04:36 GMT):
Has joined the channel.

pawlak (Fri, 07 Jan 2022 17:12:47 GMT):
Has joined the channel.

gouthamdk (Sat, 08 Jan 2022 07:03:23 GMT):
Has joined the channel.

iraq17 (Sat, 08 Jan 2022 09:47:37 GMT):
Has joined the channel.

neetusharma (Sat, 08 Jan 2022 11:26:00 GMT):
Has joined the channel.

mjs19780 (Sat, 08 Jan 2022 20:14:40 GMT):
Has joined the channel.

SAYED94 (Sat, 08 Jan 2022 20:33:45 GMT):
Has joined the channel.

wifisunset94 (Sat, 08 Jan 2022 22:06:03 GMT):
Has joined the channel.

sayraj (Sun, 09 Jan 2022 08:49:21 GMT):
Has joined the channel.

Tushar199 1 (Sun, 09 Jan 2022 13:26:11 GMT):
Has joined the channel.

akhmad_219 (Mon, 10 Jan 2022 08:27:50 GMT):
Has joined the channel.

iamit-singh (Mon, 10 Jan 2022 09:18:23 GMT):
Has joined the channel.

arieger (Mon, 10 Jan 2022 10:44:51 GMT):
Has joined the channel.

amitgarg12 (Mon, 10 Jan 2022 11:44:30 GMT):
Has joined the channel.

antauloglou (Mon, 10 Jan 2022 15:38:19 GMT):
Has joined the channel.

inttrading (Mon, 10 Jan 2022 17:11:44 GMT):
Has joined the channel.

yangzifeng1995 (Mon, 10 Jan 2022 20:20:29 GMT):
Hello everyone. I'm a newbie learning Besu and currently having two questions They are mainly related to the characteristics of private transactions implemented in Besu blockchain with the application Tessera. Question 1: Can a smart contract deployed as a private transaction be called by other smart contracts? Question 2: Can the specific content of the smart contract deployed as the private transaction, including code and member variables, be accessed by other members of the blockchain? Because, as far as I know, the code of smart contracts on ethereum is available, and also the values of all variables can be obtained through the methods provided in web3. So I would like to know if private transactions can protect the content of smart contracts.

macfarla (Tue, 11 Jan 2022 03:42:25 GMT):
my meaning was: if peerCount < maxPeers, then that node will still attempt to find peers (discovery)

macfarla (Tue, 11 Jan 2022 03:43:00 GMT):
whether it successfully finds peers depends on permissioning (and obviously how many peers are available)

samyakjain (Tue, 11 Jan 2022 04:42:54 GMT):
Has joined the channel.

KodeCracker (Tue, 11 Jan 2022 04:52:15 GMT):
Has joined the channel.

tongYuSir (Tue, 11 Jan 2022 06:49:37 GMT):
Has joined the channel.

hrishiballal (Tue, 11 Jan 2022 08:54:28 GMT):
Has joined the channel.

prashantr (Tue, 11 Jan 2022 09:26:11 GMT):
Has joined the channel.

Rahul11132133 (Tue, 11 Jan 2022 10:29:42 GMT):
Has joined the channel.

p10010 (Tue, 11 Jan 2022 12:10:09 GMT):
Has joined the channel.

samyak314 (Tue, 11 Jan 2022 12:35:59 GMT):
Has joined the channel.

Ammar1974 (Tue, 11 Jan 2022 18:20:46 GMT):
Has joined the channel.

raghunathanp95 (Tue, 11 Jan 2022 20:17:40 GMT):
Has joined the channel.

raghunathanp95 (Tue, 11 Jan 2022 20:19:17 GMT):
hi

JeffCantores (Wed, 12 Jan 2022 02:56:07 GMT):
Has joined the channel.

macfarla (Wed, 12 Jan 2022 03:00:14 GMT):
yes if you deploy a smart contract to a privacy group, it can be called by other contracts (or directly via priv_call) that are deployed to the same privacy group. If you aren't part of that privacy group, you won't know about that contract - even if you somehow have its address, it would be like calling a contract that didn't exist ie no op.

macfarla (Wed, 12 Jan 2022 03:04:02 GMT):
if you look at the web3js-quorum examples, there are some that show this scenario. eg the multi node example has 3 nodes but only 2 are in the privacy group. when you try to "get the value" from node 3, it can't see it. This link is to the exact line of code but I recommend running the whole example so you can see it in action :) https://github.com/ConsenSys/web3js-quorum/blob/0ed71eff6b8e09f431889f018076222e7883373b/example/multiNodeExample/storeValueFromNode1.js#L100

macfarla (Wed, 12 Jan 2022 03:21:35 GMT):
If you want the return value of a function it's probably eth_call that you're after rather than the tx receipt https://besu.hyperledger.org/en/stable/HowTo/Send-Transactions/Transactions/#eth_call-vs-eth_sendrawtransaction

macfarla (Wed, 12 Jan 2022 03:22:21 GMT):
Also working through some of the examples using web3js-quorum is probably useful https://github.com/ConsenSys/web3js-quorum

macfarla (Wed, 12 Jan 2022 03:24:49 GMT):
Welcome new members 🙂 Let us know if you've got any questions about getting started with Hyperledger Besu. The quickstart is a good place to start! Also we do have a few people away on leave or sick at the moment so response times might be a bit longer than usual - hoping everyone is safe and as well as can be!

yangzifeng1995 (Wed, 12 Jan 2022 11:41:58 GMT):
Thank you very much:smile:

loziniak (Wed, 12 Jan 2022 12:27:51 GMT):
Hi! I need to monitor mainnet activity for events from my smart contract. Is this possible to run Besu in a mode, when it doesn't store any blocks, just responds to 'latest'? What problems can it generate? Is 'latest' already confirmed with other peers? How to check if it's confirmed?

lbradley (Wed, 12 Jan 2022 14:29:30 GMT):
Has joined the channel.

akshitgoyal (Wed, 12 Jan 2022 17:26:12 GMT):
Has joined the channel.

StefanBratanov93 (Wed, 12 Jan 2022 19:26:57 GMT):
Has joined the channel.

HaBerber (Thu, 13 Jan 2022 07:59:20 GMT):
Has joined the channel.

shaikh47 (Thu, 13 Jan 2022 10:12:00 GMT):
Has joined the channel.

rfleschenberg (Thu, 13 Jan 2022 16:01:53 GMT):
Has joined the channel.

RoboCopsGoneMad (Thu, 13 Jan 2022 22:13:13 GMT):
No, there really isn't a way to do that in Besu, but it is an interesting requirement.

diegoll (Thu, 13 Jan 2022 22:35:23 GMT):
isn't this one of the use cases for Bonsai? If I understood it correctly, it stores all headers, but not all states (older states can be rebuild up to some number that I don't recall)

shemnon (Thu, 13 Jan 2022 22:35:29 GMT):
The problem with "latest" is re-orgs. Bonsai tries get you close but we haven't put in older state pruning yet,.

iliketurtles69 (Fri, 14 Jan 2022 05:09:12 GMT):
Has joined the channel.

huonghope (Fri, 14 Jan 2022 08:48:14 GMT):
Has joined the channel.

veaceslav.dimitroglo (Fri, 14 Jan 2022 10:07:17 GMT):
Has joined the channel.

kimzter (Fri, 14 Jan 2022 12:58:17 GMT):
Has joined the channel.

Cassius87 (Fri, 14 Jan 2022 13:23:53 GMT):
Has joined the channel.

leonardoPereira (Fri, 14 Jan 2022 15:19:51 GMT):
hello guys, I would like to know if you know any references about contracts in genesisfile. I even found a page on the besu website (https://besu.hyperledger.org/en/stable/HowTo/Configure/Contracts-in-Genesis/) but it says very little. I'm mainly interested in how this "storage" tag works. can you help me ?

shemnon (Fri, 14 Jan 2022 15:33:05 GMT):
Storage pre-populates the contract storage at genesis. Originally this was implemented as an aid to reference tests but was exposed generally as it has utility. When the genesis block is calculated the keys and values are stored in a merkle trie and the merkle root is calculated. Hence the four principal parts of an account stored in the account trie (balance, code, nonce, and storage) can be pre-set at genesis.

shemnon (Fri, 14 Jan 2022 15:35:23 GMT):
So if, for example, you need to migrate an old chain to a new genesis but keep contract state you can extract all the storage keys (via debug_storageRangeAt rpc) and code and balance and even nonce and migrate to a fresh new chain.

SeanConnolly (Fri, 14 Jan 2022 17:39:19 GMT):
Has joined the channel.

dhruvsharma (Fri, 14 Jan 2022 19:22:13 GMT):
Has joined the channel.

AdamEikman (Fri, 14 Jan 2022 19:45:20 GMT):
Has joined the channel.

dakata (Sat, 15 Jan 2022 13:56:52 GMT):
Has joined the channel.

dakata (Sat, 15 Jan 2022 14:41:30 GMT):
Hello, I am not very experienced, but I followed this tutorial: https://besu.hyperledger.org/en/stable/Tutorials/Private-Network/Create-IBFT-Network/ and I successfully created a private Besu network locally on my laptop. Now I want to add a new node from second machine/laptop. Would you please let me know how to do that. I mean how to connect an external node to already running Besu network? Many thanks in adavance

dakata (Sat, 15 Jan 2022 14:41:30 GMT):
Hello, I am not very experienced, but I followed this tutorial: https://besu.hyperledger.org/en/stable/Tutorials/Private-Network/Create-IBFT-Network/ and I successfully created a private Besu network locally on my laptop. Now I want to add a new node from second machine/laptop. Would you please let me know how to do that. I mean how to connect an external node to an already running Besu network? Many thanks in advance :)

dakata (Sat, 15 Jan 2022 14:41:30 GMT):
Hello, I am not very experienced, but I followed this tutorial: https://besu.hyperledger.org/en/stable/Tutorials/Private-Network/Create-IBFT-Network/ and I successfully created a private Besu network locally on my laptop. Now I want to add a new node from the second machine/laptop. Would you please let me know how to do that? I mean how to connect an external node to an already running Besu network? Many thanks in advance :)

luisnaranjo733 (Sat, 15 Jan 2022 15:34:28 GMT):
Has joined the channel.

luisnaranjo733 (Sat, 15 Jan 2022 15:38:21 GMT):
Hi friends! I'm working on a write up to help people run the Besu-Teku client combo on Kintsugi and I'm running into an issue running Besu on that testnet. I put all the relevant description in this Github gist. https://gist.github.com/luisnaranjo733/81f4d5396d3f93352f93f0c3e16b9f49 Is this the right place to reach out for support? I'm happy to file an issue or move over to Discord, just not sure what works best for the team. Thanks!

dakata (Sat, 15 Jan 2022 16:19:36 GMT):
Hi, I have the same question. Did you find an answer?

shadiayoub (Sat, 15 Jan 2022 16:33:41 GMT):
Hello To connect to a remote node, just replace the 127.0.0.1 in the enode address to the IP of the remote node. In the tutorial, this is shown in adding second node. In this case you do not need to specify custom ports.

dakata (Sat, 15 Jan 2022 16:38:34 GMT):
Thank you very much. Let me try. So when I replace the 127.0.0.1 with the IP of the second node, I don't need to provide the ports(the bold line), right? besu --data-path=data --genesis-file=../genesis.json --bootnodes= *--p2p-port=30304* --rpc-http-enabled --rpc-http-api=ETH,NET,IBFT --host-allowlist="*" --rpc-http-cors-origins="all" --rpc-http-port=8546

shadiayoub (Sat, 15 Jan 2022 16:41:42 GMT):
إثس --p2p-port=30304 --rpc-http-port=8546

shadiayoub (Sat, 15 Jan 2022 16:41:42 GMT):
Yes --p2p-port=30304 --rpc-http-port=8546

shadiayoub (Sat, 15 Jan 2022 16:43:09 GMT):
But to clarify: you don't need to specify the ports because you're on a different machine. If you run more than one node on one server then you will need to specify ports from the second node up.

dakata (Sat, 15 Jan 2022 16:45:07 GMT):
yes, makes sense. Thank you very much, I will try it now:):pray:

g4gekkouga (Sun, 16 Jan 2022 07:36:04 GMT):
Has joined the channel.

boozden (Sun, 16 Jan 2022 10:11:09 GMT):
Has joined the channel.

roberto.porfiro (Sun, 16 Jan 2022 11:11:38 GMT):
Has joined the channel.

HuzMS (Sun, 16 Jan 2022 22:42:30 GMT):
Has joined the channel.

dakata (Mon, 17 Jan 2022 11:02:35 GMT):
Hi, sorry for asking again, but I tried to replace the ip and it is still not connecting: 2022-01-17 12:59:49.189+02:00 | EthScheduler-Timer-0 | INFO | FullSyncTargetManager | No sync target, waiting for peers: 0 I tried multiple devices, IPs, even tried with both ading and removing ports but neither way works. Do you have idea what might be wrong?

shadiayoub (Mon, 17 Jan 2022 11:18:15 GMT):
Show me the command you run on the second device please.. If you want, in a private message.

dakata (Mon, 17 Jan 2022 11:19:18 GMT):
Node2 % besu --data-path=data --genesis-file=../privateNetworkGenesis.json --bootnodes=enode://c62181790a1d57ba4ab035746d878a4b1578a37fa505cfab4c5c756c7fca6ce4272ea2b6bb3cf6e2acb590eb0f26bb032dbdc007e0e2139aacb3a29d45000d36@89.215.236.5:30303

dakata (Mon, 17 Jan 2022 11:19:18 GMT):
Node2 % besu --data-path=data --genesis-file=../privateNetworkGenesis.json --bootnodes=enode://c62181790a1d57ba4ab035746d878a4b1578a37fa505cfab4c5c756c7fca6ce4272ea2b6bb3cf6e2acb590eb0f26bb032dbdc007e0e2139aacb3a29d45000d36@internal IP:30303

dakata (Mon, 17 Jan 2022 11:19:27 GMT):
Thank you

shadiayoub (Mon, 17 Jan 2022 11:23:21 GMT):
Just to confirm: you're positive that the first node is actually running

dakata (Mon, 17 Jan 2022 11:24:57 GMT):
yes, I actually just restarted it. So the new enode is now : enode://0789c0cefaf14c7b736aca28bea4606ea7d47f92bb3026db3e64940d77fead4904b4eaea1a216948b25c7afe9b27c185dd48091c845a8b1a6ef9e6033c314dcf@127.0.0.1:30303 But yes it is working and giving this output: 2022-01-17 13:24:36.823+02:00 | pool-7-thread-2 | INFO | BlockMiner | Produced #28 / 0 tx / 0 om / 0 (0.0%) gas / (0x517626068071e2df77c5c069c5d735ba0ba0fbd70e3f2975edd7a404f7332364) in 8.838s

dakata (Mon, 17 Jan 2022 11:25:10 GMT):
28 blocks I think since started

shadiayoub (Mon, 17 Jan 2022 11:28:07 GMT):
Can you share the first node's command please ?

dakata (Mon, 17 Jan 2022 11:29:25 GMT):
yes sure: Node1 % besu --data-path=data --genesis-file=../privateNetworkGenesis.json --miner-enabled --miner-coinbase fe3b557e8fb62b89f4916b721be55ceb828dbd73 --rpc-http-enabled --host-allowlist="*" --rpc-http-cors-origins="all"

shadiayoub (Mon, 17 Jan 2022 11:30:22 GMT):
Is it ibft or clique

dakata (Mon, 17 Jan 2022 11:30:59 GMT):
Basically on my 1st laptop I run this command in a directory called besu, where I have a privateNetworkGenesis.json and Node1 folder

dakata (Mon, 17 Jan 2022 11:31:03 GMT):
its EThash

dakata (Mon, 17 Jan 2022 11:31:12 GMT):
but I have tried everrything

dakata (Mon, 17 Jan 2022 11:32:08 GMT):
if it is easier for you I can try also clique or ibft

shadiayoub (Mon, 17 Jan 2022 11:32:27 GMT):
OK.. Which documentation did you use.. Can you share the link please ?

dakata (Mon, 17 Jan 2022 11:32:43 GMT):
yes sure this one: https://besu.hyperledger.org/en/latest/Tutorials/Private-Network/Create-Private-Network/

shadiayoub (Mon, 17 Jan 2022 11:39:56 GMT):
Checking I always setup ibft so I want to 'stare' in the docs a bit. But so far it looks fine. Do you have firewall enabled on the first node ?

dakata (Mon, 17 Jan 2022 11:41:58 GMT):
I can also try with ibft for me it doesn't matter. More important is understand how to connect them. About the firewall, I am not very sure. Let me check

dakata (Mon, 17 Jan 2022 11:43:35 GMT):
No, the firewall is turned off and it says that all connections are allowed

shadiayoub (Mon, 17 Jan 2022 11:43:37 GMT):
Go IBFT and I am here fully for it.

dakata (Mon, 17 Jan 2022 11:43:48 GMT):
ok one sec I will do it now

shadiayoub (Mon, 17 Jan 2022 11:44:22 GMT):
It has a different approach, as you must create the keys for the validators.

dakata (Mon, 17 Jan 2022 11:44:40 GMT):
I will follow this tutorial : https://besu.hyperledger.org/en/latest/Tutorials/Private-Network/Create-IBFT-Network/

shadiayoub (Mon, 17 Jan 2022 11:45:22 GMT):
Yes...

dakata (Mon, 17 Jan 2022 11:46:15 GMT):
I will text in on private message maybe it is easier

shadiayoub (Mon, 17 Jan 2022 11:46:41 GMT):
OK

tdiesler (Mon, 17 Jan 2022 13:24:19 GMT):
Has left the channel.

AAlzaabi (Mon, 17 Jan 2022 14:41:17 GMT):
Has joined the channel.

newbusybee (Tue, 18 Jan 2022 01:01:56 GMT):
Has joined the channel.

sudojhill (Tue, 18 Jan 2022 05:37:15 GMT):
Has joined the channel.

DevalShah (Tue, 18 Jan 2022 07:05:12 GMT):
Has joined the channel.

adaephonben (Tue, 18 Jan 2022 08:40:16 GMT):
Has joined the channel.

IgorSim (Tue, 18 Jan 2022 09:07:42 GMT):
Hi, i see that https://github.com/hyperledger/besu/pull/3202 was merged into main, as far i understand latest release (21.10.8) doesn't contain this fix. Is it planned to be included in next 22.1.0-RC release?

christianatmueller (Tue, 18 Jan 2022 14:10:19 GMT):
Has joined the channel.

Affin-Ajanthan (Tue, 18 Jan 2022 14:35:03 GMT):
Has joined the channel.

nglf (Tue, 18 Jan 2022 15:23:35 GMT):
Has joined the channel.

macfarla (Tue, 18 Jan 2022 20:58:28 GMT):
There is kuntsugi-specific chat over on discord for sure. But looking at your error `picocli.CommandLine$ParameterException: Unable to start mining without a coinbase. ` <- this means you have mining enabled --miner-enabled=true but you haven't set the --miner-coinbase

macfarla (Tue, 18 Jan 2022 21:01:00 GMT):
yes it will be in the next RC release. I can't give an exact date for that - we're testing these changes on our canary nodes - but hopefully within a week or so

Clippo 3 (Tue, 18 Jan 2022 21:43:01 GMT):
Any updates on clique?

Clippo 3 (Tue, 18 Jan 2022 21:44:51 GMT):
Hello anyone have implemented geomaps in grafana for a hyperledger besu blockchain?

HariN 35 (Wed, 19 Jan 2022 03:44:49 GMT):
Has joined the channel.

macfarla (Wed, 19 Jan 2022 05:20:13 GMT):
To connect to a remote node, just replace the 127.0.0.1 in the enode address to the IP of the remote node. In the tutorial, this is shown in adding second node.

harikrishnashk (Wed, 19 Jan 2022 06:29:39 GMT):
Has joined the channel.

sumiteshnaithani (Wed, 19 Jan 2022 07:18:44 GMT):
Has joined the channel.

seancm69 (Wed, 19 Jan 2022 07:24:45 GMT):
Has joined the channel.

Tipu_Singh (Wed, 19 Jan 2022 07:41:33 GMT):
Has joined the channel.

sergedh (Wed, 19 Jan 2022 07:57:50 GMT):
Has joined the channel.

shadiayoub (Wed, 19 Jan 2022 07:59:31 GMT):
We did it with ibft afterall.

cheul123a (Wed, 19 Jan 2022 08:28:39 GMT):
hello. is there any official TPS of hyperledger besu?

souksou (Wed, 19 Jan 2022 10:06:12 GMT):
Has joined the channel.

ouyangwenli (Wed, 19 Jan 2022 13:46:59 GMT):
Has joined the channel.

robbesettlemint (Wed, 19 Jan 2022 16:15:05 GMT):
Has joined the channel.

Clippo 3 (Wed, 19 Jan 2022 16:33:29 GMT):
How come , clique doesn't work at all?

Clippo 3 (Wed, 19 Jan 2022 16:33:42 GMT):
Just asking cause i wann do it with clique

shadiayoub (Wed, 19 Jan 2022 16:34:24 GMT):
No, not that.. Clique also works like a charm. If you need help ping us here

shadiayoub (Wed, 19 Jan 2022 16:35:50 GMT):
The problem was: he is setting Besu on two computers in the office, both behind an Internet router. This confused Besu and could not start. It worked when he concected the computers via local IP;s.

Clippo 3 (Wed, 19 Jan 2022 17:00:21 GMT):
i'm trying rn with clique

Clippo 3 (Wed, 19 Jan 2022 17:28:25 GMT):
I don't know why i got

Clippo 3 (Wed, 19 Jan 2022 17:28:29 GMT):
Method not enables

Clippo 3 (Wed, 19 Jan 2022 17:28:32 GMT):
enabled*

Gluwa_DavidLebee (Wed, 19 Jan 2022 17:42:11 GMT):
Has joined the channel.

Clippo 3 (Wed, 19 Jan 2022 17:47:44 GMT):
I'm using the quorum developer quickstart and it has de -rpc-htp-api enabled

ManishReddyN (Wed, 19 Jan 2022 18:03:16 GMT):
Has joined the channel.

norbertrogers (Wed, 19 Jan 2022 18:19:01 GMT):
Has joined the channel.

Clippo 3 (Wed, 19 Jan 2022 21:12:15 GMT):
How to enable admin methods in quorum developer quickstart?

Clippo 3 (Wed, 19 Jan 2022 21:12:31 GMT):
If anyone know :woo:

e-nikolov (Thu, 20 Jan 2022 00:19:07 GMT):
Does anyone know if the json-rpc api handles batch requests in parallel or in series?

mgdotonl (Thu, 20 Jan 2022 01:20:36 GMT):
Has joined the channel.

lucassaldanha (Thu, 20 Jan 2022 04:02:14 GMT):
It looks like it will handle them in parallel, however it waits for them all before sending the response back to the client.

lucassaldanha (Thu, 20 Jan 2022 04:02:15 GMT):
https://github.com/hyperledger/besu/blob/main/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/JsonRpcHttpService.java#L680-L702

fl0x (Thu, 20 Jan 2022 06:32:13 GMT):
Has joined the channel.

sung-il (Thu, 20 Jan 2022 07:35:18 GMT):
Has joined the channel.

daohan (Thu, 20 Jan 2022 07:59:47 GMT):
Has joined the channel.

fsatsuki (Thu, 20 Jan 2022 08:00:18 GMT):
Has joined the channel.

guodadada (Thu, 20 Jan 2022 08:41:12 GMT):
Has joined the channel.

ESiat (Thu, 20 Jan 2022 09:03:41 GMT):
Has joined the channel.

SebastianKe (Thu, 20 Jan 2022 09:53:18 GMT):
Has joined the channel.

shadiayoub (Thu, 20 Jan 2022 10:31:44 GMT):
In docker-compose.yml file. But it should be enabled

shadiayoub (Thu, 20 Jan 2022 10:32:40 GMT):
Please let us know too if you got an answer. I read somewhere it's 500 tps but not sure how official or accurate is this.

prasanthdotv (Thu, 20 Jan 2022 11:17:16 GMT):
Has joined the channel.

prasanthdotv (Thu, 20 Jan 2022 11:19:10 GMT):
Hey guys, I was trying to run Besu with a config.toml file (besu --config-file=config.toml) and got this error. Does anyone how to fix it and why it occures? ANTLR Tool version 4.7.1 used for code generation does not match the current runtime version 4.8ANTLR Runtime version 4.7.1 used for parser compilation does not match the current runtime version 4.8ANTLR Tool version 4.7.1 used for code generation does not match the current runtime version 4.8ANTLR Runtime version 4.7.1 used for parser compilation does not match the current runtime version 4.8TomlInvalidTypeException: Value of 'rpc-http-cors-origins' is a string while processing argument at or before arg[0] '--config-file=config.toml' in [--config-file=config.toml]: org.apache.tuweni.toml.TomlInvalidTypeException: Value of 'rpc-http-cors-origins' is a string To display full help: besu [COMMAND] --help

siladu (Thu, 20 Jan 2022 11:53:16 GMT):
Looks like you've got a string value instead of a list of strings, e.g. you need something like: rpc-http-cors-origins=["*"] This property requires an array when using toml format. See 'Configuration file' example here: https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#rpc-http-cors-origins

prasanthdotv (Thu, 20 Jan 2022 12:13:13 GMT):
Yes. Warning is sill there. Even though node is running. Thanks

ShubhamShukla31752 (Thu, 20 Jan 2022 13:07:58 GMT):
Has joined the channel.

ScottHarris (Thu, 20 Jan 2022 15:51:37 GMT):
Has joined the channel.

adipata (Thu, 20 Jan 2022 15:55:27 GMT):
Has joined the channel.

ffuentes (Thu, 20 Jan 2022 16:00:49 GMT):
Has joined the channel.

mks4343 (Thu, 20 Jan 2022 16:02:24 GMT):
Has joined the channel.

shehanp72 (Thu, 20 Jan 2022 16:02:58 GMT):
Has joined the channel.

singhhp1069 (Thu, 20 Jan 2022 16:04:33 GMT):
Has joined the channel.

paulyp (Thu, 20 Jan 2022 16:05:00 GMT):
Has joined the channel.

rz (Thu, 20 Jan 2022 16:06:26 GMT):
Has joined the channel.

awuttke (Thu, 20 Jan 2022 16:07:45 GMT):
Has joined the channel.

Torben.Zick (Thu, 20 Jan 2022 16:14:57 GMT):
Has joined the channel.

malfaris (Thu, 20 Jan 2022 16:17:17 GMT):
Has joined the channel.

bp99 (Thu, 20 Jan 2022 16:33:15 GMT):
Has joined the channel.

sanjikumar (Thu, 20 Jan 2022 16:39:22 GMT):
Has joined the channel.

aymanejabrane (Thu, 20 Jan 2022 17:04:32 GMT):
Has joined the channel.

CharlesDS (Thu, 20 Jan 2022 17:29:38 GMT):
Has joined the channel.

Clippo 3 (Thu, 20 Jan 2022 19:01:12 GMT):
ws_secret besu has one?

Clippo 3 (Thu, 20 Jan 2022 19:01:17 GMT):
Anyone knows?

diegoll (Thu, 20 Jan 2022 19:14:34 GMT):
Do you mean the `WS_SECRET` for ethstats?. It can be set in the connection URL for the server. Take a look at the [ethstats](https://besu.hyperledger.org/en/stable/Reference/CLI/CLI-Syntax/#ethstats) value option format

Clippo 3 (Thu, 20 Jan 2022 20:54:05 GMT):
Yes i'm trying to connect ethstas to a private network

Clippo 3 (Thu, 20 Jan 2022 20:54:15 GMT):
Without any sucess

GarySchulte (Thu, 20 Jan 2022 23:30:32 GMT):
AFAIK, the secret is defined by the ethstats server, it isn't specific to besu

jackiepeters (Fri, 21 Jan 2022 02:02:21 GMT):
Has joined the channel.

shashwot2 (Fri, 21 Jan 2022 04:55:58 GMT):
Has joined the channel.

daohan (Fri, 21 Jan 2022 06:44:09 GMT):
Pre-deploying contracts in the genesis file.Are there more complete documents. I encountered some problems and never succeeded

GiorgosSiachamis (Fri, 21 Jan 2022 08:05:19 GMT):
Has joined the channel.

AnanayNarang (Fri, 21 Jan 2022 08:10:42 GMT):
Has joined the channel.

AnanayNarang (Fri, 21 Jan 2022 08:13:43 GMT):
Hi Everyone Want to ask a question, is it possible on besu client to work with 2 different languages like one can write the contract in DAML and others can write these contract using other language like solidity and still be able to perform transactions on the same node?

VNCheck (Fri, 21 Jan 2022 08:19:23 GMT):
Has joined the channel.

MinMail (Fri, 21 Jan 2022 09:32:24 GMT):
Has joined the channel.

JonasKreusch (Fri, 21 Jan 2022 12:02:42 GMT):
Has joined the channel.

Nischitha (Fri, 21 Jan 2022 13:22:25 GMT):
Has joined the channel.

RodrigoGarcia1 (Fri, 21 Jan 2022 14:18:10 GMT):
Has joined the channel.

RodrigoGarcia1 (Fri, 21 Jan 2022 14:20:06 GMT):
Hi guys, the quick start network by command: npx quorum-dev-quickstart uses IBFT as consensus ?

mpg (Fri, 21 Jan 2022 14:40:27 GMT):
Has joined the channel.

shadiayoub (Fri, 21 Jan 2022 15:18:14 GMT):
Yes, for Besu. And QBFT for Quorum.

shadiayoub (Fri, 21 Jan 2022 15:18:14 GMT):
QBFT .... You can edit the .env file to make it ibft

Gag 131 (Fri, 21 Jan 2022 17:07:25 GMT):
Has joined the channel.

angmunoz (Fri, 21 Jan 2022 19:02:22 GMT):
Has joined the channel.

ramkapoor (Fri, 21 Jan 2022 19:47:14 GMT):
Has joined the channel.

Clippo 3 (Fri, 21 Jan 2022 20:59:20 GMT):
Finally i can get eth stats with quorum but no node listing

Clippo 3 (Fri, 21 Jan 2022 20:59:28 GMT):
In geo map of eth stats , that suck

ebaldivias (Fri, 21 Jan 2022 21:16:05 GMT):
Has joined the channel.

Vamsikn (Fri, 21 Jan 2022 21:26:43 GMT):
Has joined the channel.

himanisingla (Fri, 21 Jan 2022 21:29:50 GMT):
Has joined the channel.

mgamal (Sat, 22 Jan 2022 09:42:06 GMT):
Has joined the channel.

marchelbudi.k (Sat, 22 Jan 2022 16:56:26 GMT):
Hi all, for the local permisioning for accounts, I understand that transaction that is received by a normal node will be propagated to validator node. I was wondering if the normal node have Account A in the permissioning list and validator node does not have Account A in the permissioning list, will the transaction created by Account A which is received by the normal node be completed?

macfarla (Sun, 23 Jan 2022 00:57:56 GMT):
In short, the tx would be rejected by tx propagation, but if the normal node is producing blocks, a block containing that tx would be accepted. This scenario is explained here: https://besu.hyperledger.org/en/stable/HowTo/Limit-Access/Local-Permissioning/#account-allowlisting

macfarla (Sun, 23 Jan 2022 00:58:51 GMT):
However I guess you might be talking about IBFT2 specifically? In which case it's only the validators producing blocks?

macfarla (Sun, 23 Jan 2022 01:01:08 GMT):
I don't see any reason why not. At the protocol level the transactions would look the same

macfarla (Sun, 23 Jan 2022 01:02:50 GMT):
Also note we do recommend each node in the network has the same accounts allowlist. :)

macfarla (Sun, 23 Jan 2022 01:06:30 GMT):
the tricky thing here is getting the storage right. This might help https://docs.soliditylang.org/en/v0.8.7/internals/layout_in_storage.html

pratikc (Sun, 23 Jan 2022 13:46:53 GMT):
Has joined the channel.

rtatton (Sun, 23 Jan 2022 15:58:22 GMT):
Has joined the channel.

dave-beck (Sun, 23 Jan 2022 17:17:47 GMT):
Has joined the channel.

anilraj27 (Sun, 23 Jan 2022 20:09:17 GMT):
Has joined the channel.

bweymouth (Mon, 24 Jan 2022 01:53:56 GMT):
Has joined the channel.

jaymhc (Mon, 24 Jan 2022 03:46:27 GMT):
Has joined the channel.

jjlee (Mon, 24 Jan 2022 07:22:44 GMT):
Has joined the channel.

jjlee (Mon, 24 Jan 2022 07:35:23 GMT):
creativehill_besu

jechae (Mon, 24 Jan 2022 08:04:13 GMT):
Has joined the channel.

JiriPeinlich (Mon, 24 Jan 2022 08:05:19 GMT):
It should be now included in the latest RC

JiriPeinlich (Mon, 24 Jan 2022 08:05:42 GMT):
Let me know if you get better results, please

IgorSim (Mon, 24 Jan 2022 08:52:04 GMT):
Thanks for heads up, i will upgrade and let you know, most probably later this week.... However, before upgrading i wanted to update you how client behaved past several days. From the graph you can see that eventually it reached head of the chain and it was working fine for 2-3 days, meaning it was in sync with mainnet, but afterwards it stopped importing new blocks. Log messages are: 2022-01-23 00:07:12.412+00:00 | nioEventLoopGroup-3-5 | INFO | BlockPropagationManager | Saving announced block 14058568 (0xf55f99fa93a04921b31775033fa4c4984ffd03748d8c89cbe4a1a519eb938f74) for future import 2022-01-23 00:07:25.730+00:00 | nioEventLoopGroup-3-5 | INFO | GetBlockFromPeerTask | Failed to download block 0xbdec1019ff88788785ec4b15085323af492cdf430c026b6ce1776beea8f85e33 from peer Peer 0x946bf11de8227d5b52.... 2022-01-23 00:07:25.847+00:00 | nioEventLoopGroup-3-5 | INFO | BlockPropagationManager | Saving announced block 14058569 (0xbdec1019ff88788785ec4b15085323af492cdf430c026b6ce1776beea8f85e33) for future import 2022-01-23 00:07:33.200+00:00 | nioEventLoopGroup-3-6 | INFO | GetBlockFromPeerTask | Failed to download block 0x5ec3569a7a3f1220fb91b43e5b8c15907b2d93bf9fe31fd8092ef0fbe0242624 from peer Peer 0x4afacd81c5ada6bbc0.... Is this 'problem

IgorSim (Mon, 24 Jan 2022 08:52:04 GMT):
Thanks for heads up, i will upgrade and let you know, most probably later this week.... However, before upgrading i wanted to update you how client behaved past several days. From the graph you can see that eventually it reached head of the chain and it was working fine for 2-3 days, meaning it was in sync with mainnet, but afterwards it stopped importing new blocks. Log messages are: 2022-01-23 00:07:12.412+00:00 | nioEventLoopGroup-3-5 | INFO | BlockPropagationManager | Saving announced block 14058568 (0xf55f99fa93a04921b31775033fa4c4984ffd03748d8c89cbe4a1a519eb938f74) for future import 2022-01-23 00:07:25.730+00:00 | nioEventLoopGroup-3-5 | INFO | GetBlockFromPeerTask | Failed to download block 0xbdec1019ff88788785ec4b15085323af492cdf430c026b6ce1776beea8f85e33 from peer Peer 0x946bf11de8227d5b52.... 2022-01-23 00:07:25.847+00:00 | nioEventLoopGroup-3-5 | INFO | BlockPropagationManager | Saving announced block 14058569 (0xbdec1019ff88788785ec4b15085323af492cdf430c026b6ce1776beea8f85e33) for future import 2022-01-23 00:07:33.200+00:00 | nioEventLoopGroup-3-6 | INFO | GetBlockFromPeerTask | Failed to download block 0x5ec3569a7a3f1220fb91b43e5b8c15907b2d93bf9fe31fd8092ef0fbe0242624 from peer Peer 0x4afacd81c5ada6bbc0.... Is this 'problem' related somehow to the one we discussed or something else is going on here? Thank you.

IgorSim (Mon, 24 Jan 2022 08:53:23 GMT):

besu-mainet.png

JiriPeinlich (Mon, 24 Jan 2022 10:53:06 GMT):
That problem is unrelated. When you are up-to-date with the head, then a different part of the system takes over.

JiriPeinlich (Mon, 24 Jan 2022 10:54:31 GMT):
As you're already synced, you will not benefit from the update unless you would start your sync from scratch by deleting the local data. There is no need to start from scratch unless you would want to satisfy your curiosity.

pbusch42 (Mon, 24 Jan 2022 16:50:12 GMT):
Has joined the channel.

ftrsau (Tue, 25 Jan 2022 03:15:59 GMT):
Has joined the channel.

errorfourten (Tue, 25 Jan 2022 03:25:47 GMT):
Has joined the channel.

errorfourten (Tue, 25 Jan 2022 03:28:40 GMT):
Hi everyone, is there any way for me to see the version of the EVM (london, berlin, etc.) for a particular release (20.10.3)?

ravip.singh (Tue, 25 Jan 2022 06:29:02 GMT):
Has joined the channel.

shemnon (Tue, 25 Jan 2022 06:57:36 GMT):
The versions of the EVM are driven by the block configuration. Look in the genesis config files (https://github.com/hyperledger/besu/tree/8bf078cd613a0b305de72d27d9ab0d776a00b606/config/src/main/resources) to see what the current version is for each chain. For a private chain just make sure the desired EVM version is set in the genesis file (such as `"londonBlock":0`)

shemnon (Tue, 25 Jan 2022 06:57:48 GMT):
21.10.3 has support up to london.

errorfourten (Tue, 25 Jan 2022 07:20:40 GMT):
Does that mean that as long the block number is in the config file, I can assume that the EVM supports that version?

aj3 (Tue, 25 Jan 2022 09:06:33 GMT):
Has joined the channel.

shemnon (Tue, 25 Jan 2022 12:53:20 GMT):
yes

billet75 (Tue, 25 Jan 2022 15:41:05 GMT):
Question on OpenTelemetry integration There is a "resource_to_telemetry_conversion" setting inside the awsemf exporter that pulls a metric called "service.name" and it is set to "best-client" I see "best-client" is the default for the prometheus job name but I can't seem to change this AND use OpenTelemetry ...there anything I'm missing?

shemnon (Tue, 25 Jan 2022 16:03:35 GMT):
@atoulme is our resident OpenTelemetry expert

itsnavpreet (Tue, 25 Jan 2022 16:15:37 GMT):
Has joined the channel.

gladsjr (Tue, 25 Jan 2022 19:38:11 GMT):
Hi everyone. Does someone know from which version the host-allowlist option was introduced in Besu? It seems that it was previously called host-whitelist, right?

shemnon (Tue, 25 Jan 2022 20:01:41 GMT):
20.10 or so.

GarySchulte (Tue, 25 Jan 2022 20:02:07 GMT):
host-whitelist is still a supported option, it is just hidden since 20.10.1

gladsjr (Tue, 25 Jan 2022 22:53:39 GMT):
Thanks, guys!

gladsjr (Tue, 25 Jan 2022 23:27:24 GMT):
I have another one for you! :woo: I appreciate a lot if could help me once again. Is it possible to remove transactions of the transaction pool? Does shutting down the node empty its transaction pool?

GarySchulte (Tue, 25 Jan 2022 23:40:26 GMT):
yes. the Transactions may get re-gossip'd however

errorfourten (Wed, 26 Jan 2022 02:27:29 GMT):
Ok, thanks! :)

atoulme (Wed, 26 Jan 2022 04:24:06 GMT):
hmm there's at least 3 weird things in what you're saying

atoulme (Wed, 26 Jan 2022 04:24:23 GMT):
There is no metric named service.name. Did you mean an attribute value?

atoulme (Wed, 26 Jan 2022 04:24:40 GMT):
I believe you mean "besu-client" not "best-client"

atoulme (Wed, 26 Jan 2022 04:25:06 GMT):
finally I don't quite follow what you mean by prometheus vs OpenTelemetry.

atoulme (Wed, 26 Jan 2022 04:25:23 GMT):
So please walk me back, slowly, from first principles. I'm not quite sure how to help you.

AravindVoruganti (Wed, 26 Jan 2022 14:16:16 GMT):
Has joined the channel.

gladsjr (Wed, 26 Jan 2022 18:24:59 GMT):
Great! Thanks.

sandeep20 (Thu, 27 Jan 2022 04:32:36 GMT):
Has joined the channel.

Alen_Sebastian (Thu, 27 Jan 2022 09:14:31 GMT):
Has joined the channel.

winterking (Thu, 27 Jan 2022 09:50:12 GMT):
Has joined the channel.

StefanBratanov (Thu, 27 Jan 2022 09:52:26 GMT):
Has joined the channel.

kaijuneer (Thu, 27 Jan 2022 09:54:03 GMT):
Has joined the channel.

rejnol93 (Thu, 27 Jan 2022 10:01:21 GMT):
Has joined the channel.

kaijuneer (Thu, 27 Jan 2022 10:04:24 GMT):
Hi, are there any tutorials on how to set up and deploy a Hyperledger Besu network with privacy group to the cloud?

NicolasMassart (Thu, 27 Jan 2022 10:07:37 GMT):
You have both tutorials in the Besu doc, one is privacy, the other is cloud, you can probably pick the best of each. - https://besu.hyperledger.org/en/stable/Tutorials/Privacy/Configuring-Privacy/ - https://besu.hyperledger.org/en/stable/Tutorials/Kubernetes/Overview/ -

kaijuneer (Thu, 27 Jan 2022 10:08:42 GMT):
Thanks!

kaijuneer (Thu, 27 Jan 2022 10:27:40 GMT):
Just to check my understanding, if I have a privacy group, does that mean anyone would be able to send transactions to a contract in that privacy group, however only the miners in the privacy group will have access to the state of the contract, and even the transactions sender will not be able to see other transactions other than their own?

NicolasMassart (Thu, 27 Jan 2022 10:38:38 GMT):
Privacy group restricts who can interact with the contract in terms of Tessera nodes. So only private transactions from a node in the group can be made available to the group. No one outside the group can see the tx private part. The miner has nothing to do here (and we usually don't have miners as we require finality so an IBFT consensus and it only has validators, no miners). Any member node of a group can read and send tx to the group it's part of. Look at the examples in https://besu.hyperledger.org/en/stable/Concepts/Privacy/Privacy-Groups/#besu-extended-privacy

NicolasMassart (Thu, 27 Jan 2022 10:41:39 GMT):
> Access between states A contract in a privacy group: - Can read or write to a contract in the same privacy group. - Can read from the public state including public contracts. - Cannot access contracts from a different privacy group. - A public contract cannot access a private contract.

NicolasMassart (Thu, 27 Jan 2022 10:41:39 GMT):
> Access between states > A contract in a privacy group: > >- Can read or write to a contract in the same privacy group. >- Can read from the public state including public contracts. >- Cannot access contracts from a different privacy group. >- A public contract cannot access a private contract.

kaijuneer (Thu, 27 Jan 2022 11:28:54 GMT):
I see, thank you for the clarification. In such case, is there a way to configure Besu such that any users can submit transactions to the network, however it is a private network and only the nodes can see the transactions and maintain the state of the network? I apologise if this is a dumb question

antonydenyer (Thu, 27 Jan 2022 11:46:45 GMT):
What's use case you're trying to solve?

kaijuneer (Thu, 27 Jan 2022 13:25:45 GMT):
I am creating a private registry that is maintained by a few independent nodes. Anyone could add items to the registry, however we would like to maintain privacy. Only the nodes would be able to see all the items in the registry.

antonydenyer (Thu, 27 Jan 2022 14:09:49 GMT):
No, you can not blindly send a transaction into a privacy group. This is by design. You could do it an application level. Node A + Node X = Privacy Group A Node X + Node Y + Node Z = Privacy Group Pool When Node A submits to Node X using Privacy Group A only they know about it. Then at an applicaiton level Node A would need to submit a transaction to Privacy Group Pool which only Node X,Y,Z can see. The main thing to remember is that in besu private state is always consistent. There is a private state per group.

isavelli (Thu, 27 Jan 2022 14:27:07 GMT):
Has joined the channel.

loziniak (Thu, 27 Jan 2022 16:16:59 GMT):
Hello. In my private chain I'd like to filter transactions based on type and source account. This should be done when receiving transactions through RPC, and when importing blocks from other nodes (anywhere else?). Also, I'd like to query smart contract data for configuration. I think the best approach would be to expose relevant functionality in *Plugin API*. What are the points in code, where transaction verification is done, that I could plug into? Would Besu team be interested in such a contribution?

loziniak (Thu, 27 Jan 2022 16:16:59 GMT):
Hello. In my private chain I'd like to *filter transactions* based on type and source account. This should be done when receiving transactions through RPC, and when importing blocks from other nodes (anywhere else?). Also, I'd like to query smart contract data for configuration. I think the best approach would be to expose relevant functionality in *Plugin API*. What are the points in code, where transaction verification is done, that I could plug into? Would Besu team be interested in such a contribution?

loziniak (Thu, 27 Jan 2022 16:20:47 GMT):
I'd be researching the issue on my own, trying to check regularly for answers in this thread. But in case I missed something and not responded here, please contact me directly by email: maciej@robotix-lozinski.pl . Thanks.

kaijuneer (Thu, 27 Jan 2022 16:44:58 GMT):
Understood! Thank you so much for the help and insights!

isavelli (Thu, 27 Jan 2022 18:38:47 GMT):
iacopo@LAPTOP-4HE1CDFS:~$ besu --Xlauncher-force ? Which Ethereum network would you like to use ? dev ? Which synchronization mode? fast ? Do you want to enable pruning? no ? What is the data directory ? /tmp ? Do you want to enable the JSON-RPC HTTP service ? yes ? Do you want to configure the JSON-RPC options now ? yes ? What is the JSON RPC HTTP host address ? 127.0.0.1 ? What is the JSON RPC HTTP port ? 8545 2022-01-27 19:37:54.093+01:00 | main | WARN | Besu | Unable to run the launcher invalid default option for rpc-http-apis

isavelli (Thu, 27 Jan 2022 18:38:55 GMT):
any solution?

isavelli (Thu, 27 Jan 2022 18:41:30 GMT):
besu --version besu/v21.10.9/linux-x86_64/openjdk-java-17

isavelli (Thu, 27 Jan 2022 18:54:33 GMT):
Linux LAPTOP-4HE1CDFS 5.10.16.3-microsoft-standard-WSL2

dci (Thu, 27 Jan 2022 20:36:06 GMT):
Has joined the channel.

alamin25 1 (Thu, 27 Jan 2022 20:53:14 GMT):
Has joined the channel.

LunarM 1 (Thu, 27 Jan 2022 21:44:15 GMT):
Has joined the channel.

brettd (Fri, 28 Jan 2022 01:21:56 GMT):
Has joined the channel.

heysatya (Fri, 28 Jan 2022 07:01:53 GMT):
Has joined the channel.

helderjnpinto (Fri, 28 Jan 2022 10:10:19 GMT):
Hi i updated a fork of besu, but i get some problems with acceptance-tests with /usr/bin/solc > > Task :acceptance-tests:tests:compileSolidity FAILED FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':acceptance-tests:tests:compileSolidity'. > A problem occurred starting process 'command '/usr/bin/solc''

helderjnpinto (Fri, 28 Jan 2022 10:12:27 GMT):
I installed solc and i have a path like the command but not work. Maybe i missed some conflits files when i did git merge

helderjnpinto (Fri, 28 Jan 2022 10:13:03 GMT):
Anyone can help with this question, thanks in advance.

helderjnpinto (Fri, 28 Jan 2022 13:01:30 GMT):
hi i updated the besu client to a custom fork. (tag 21.10.9) and i got one problem with tests

helderjnpinto (Fri, 28 Jan 2022 13:01:32 GMT):
>> Task :acceptance-tests:tests:compileSolidity FAILED FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':acceptance-tests:tests:compileSolidity'. > A problem occurred starting process 'command '/usr/bin/solc'' * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights. * Get more help at https://help.gradle.org

helderjnpinto (Fri, 28 Jan 2022 13:01:50 GMT):
this when i run > ▶./gradlew assemble acceptanceTests --warning-mode all

helderjnpinto (Fri, 28 Jan 2022 13:02:22 GMT):
what is the problem the folder acceptanceTests is equal to the tag

helderjnpinto (Fri, 28 Jan 2022 13:02:22 GMT):
what is the problem ? the folder acceptanceTests is equal to the tag

helderjnpinto (Fri, 28 Jan 2022 13:02:55 GMT):
Anyone can help me with this ? thanks in advance.

Avijeet_15 (Fri, 28 Jan 2022 13:35:22 GMT):
Has joined the channel.

Avijeet_15 (Fri, 28 Jan 2022 13:36:12 GMT):
Hello Everyone, anyone there to help me a bit?

helderjnpinto (Fri, 28 Jan 2022 14:45:30 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=kDkSAtjc64E36vowx) i think is solved i found this PR - https://github.com/hyperledger/besu/pull/3284/files

romanr (Fri, 28 Jan 2022 14:51:38 GMT):
Has joined the channel.

helderjnpinto (Fri, 28 Jan 2022 14:58:42 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=mDrhEdYqAnLQGttXN) Maybe is good to ask and see if anyone can help.

helderjnpinto (Fri, 28 Jan 2022 14:58:42 GMT):
[ ](https://chat.hyperledger.org/channel/besu?msg=mDrhEdYqAnLQGttXN) Maybe is good to ask first and see if anyone can help.

Swarnim 1 (Fri, 28 Jan 2022 16:29:21 GMT):
Has joined the channel.

Swarnim 1 (Fri, 28 Jan 2022 16:29:22 GMT):
Hello everyone, I'm Swarnim. I'm new here and have just started involed in the project. I've solved one issue and have a pr pending for review. I want to contribute to contribute to the project and started solving issues that were more typical and helps me to learn new things. I'll be very greatful if the project maintainers or anyone involved in the project can help me to guide me to continue involved in the project.

diegoll (Fri, 28 Jan 2022 16:35:34 GMT):
Hello Swarnim, feel free to join #besu-contributors and ask for reviewers there

vijayr24 (Sat, 29 Jan 2022 06:20:07 GMT):
Has joined the channel.

vijayr24 (Sat, 29 Jan 2022 06:20:07 GMT):
Hi all, I am trying to setup a private network with IBFT 2.0 consensus. The validators are starting very close to each other but they are stuck at a certain round and not generating any blocks. The rounds keep expiring and blocks are not being created...Any thoughts on how to resolve this? Please find below the logs: `2022-01-29 06:07:00.184+00:00 | pool-9-thread-1 | DEBUG | IbftBlockHeightManager | Starting new round 8 2022-01-29 06:07:00.184+00:00 | pool-9-thread-1 | DEBUG | IbftBlockHeightManager | Round has expired, creating PreparedCertificate and notifying peers. round=ConsensusRoundIdentifier{Sequence=1, Round=7}`

Avijeet_15 (Sat, 29 Jan 2022 07:21:01 GMT):
I want to ask if I can change the native token used by my private blockchain created using hyperledger besu. Please guide me on how and where to make the required changes. I want to change my token symbol - (ETH to RRZ for example) and the image representing the token. Looking forward to expert guidance on this matter.

Trisham_Bharat_Patil (Sat, 29 Jan 2022 16:57:36 GMT):
Has joined the channel.

aminst (Sat, 29 Jan 2022 19:03:00 GMT):
Has joined the channel.

rajan-31 (Sat, 29 Jan 2022 19:20:17 GMT):
Has joined the channel.

itsnavpreet (Sun, 30 Jan 2022 10:48:32 GMT):
Hello @Avijeet_15 There is no symbol stored in blocks/ledger. You can change to any symbol in explorer logic or while adding the network to metamask you can enter symbol there.

cxk934 (Sun, 30 Jan 2022 13:42:46 GMT):
Has joined the channel.

Swarnim 1 (Sun, 30 Jan 2022 16:02:10 GMT):
Thanks @diegoll

macfarla (Sun, 30 Jan 2022 21:48:41 GMT):
I can reproduce this behaviour on my local machine. I see you created an issue - thanks! https://github.com/hyperledger/besu/issues/3338 - please note that this isn't a high priority for us right now especially as it is a --X "experimental" option. I would recommend creating a config file and run besu directly (without the launcher)

macfarla (Sun, 30 Jan 2022 21:56:03 GMT):
You could try `besu --network=dev` which uses dev.json that exists in besu repo - it's probably similar behaviour to what you're after - and you can copy that config and modify as you need.

siladu (Sun, 30 Jan 2022 22:27:53 GMT):
Hi @vijayr24 if you could create a besu issue https://github.com/hyperledger/besu/issues/new and put details about your setup and some more complete logs, that would be ideal and enable us to help you more quickly. Have you seen/followed this guide? https://besu.hyperledger.org/en/stable/Tutorials/Private-Network/Create-IBFT-Network/

jframe (Mon, 31 Jan 2022 01:22:44 GMT):
Can you double check that all the validators are in the genesis extra data?

prasanthdotv (Mon, 31 Jan 2022 03:59:48 GMT):
Hi All, My config.toml file for IBFT 2.0 has rpc-http-cors-origins=["all"]

prasanthdotv (Mon, 31 Jan 2022 03:59:48 GMT):
Hi All, My config.toml file for IBFT 2.0 has rpc-http-cors-origins=["all"] in it. But it still gives CORS error for the Metamask connection request. But it is working fine for all other services such as Prometheus and alethio block explorer. I also tried rpc-http-cors-origins=["*"] But getting the same result. But when I gave each origin separately it is working fine. Any idea why it gives error for Metamask?

prasanthdotv (Mon, 31 Jan 2022 03:59:48 GMT):
Hi All, My config.toml file for IBFT 2.0 has rpc-http-cors-origins=["all"] in it. But it still gives CORS error for the Metamask connection request. It is working fine for all other services such as Prometheus and alethio block explorer. I also tried rpc-http-cors-origins=["*"] But getting the same result. But when I gave each origin separately it is working fine. Any idea why it gives error for Metamask?

prasanthdotv (Mon, 31 Jan 2022 03:59:48 GMT):
Hi All, My config.toml file for IBFT 2.0 has rpc-http-cors-origins=["all"] in it. But it still gives CORS error for the Metamask connection request. It is working fine for all other services such as Prometheus and alethio block explorer. I also tried rpc-http-cors-origins=["*"] But getting the same result. When I gave each origin separately it is working fine. Any idea why it gives error for Metamask?

frankliawesome (Mon, 31 Jan 2022 08:08:10 GMT):
What besu version are you running? This was fixed in 21.10.9

prasanthdotv (Mon, 31 Jan 2022 09:28:39 GMT):
21.10.8

prasanthdotv (Mon, 31 Jan 2022 09:29:15 GMT):
ok

prasanthdotv (Mon, 31 Jan 2022 09:29:19 GMT):
Thanks

helderjnpinto (Mon, 31 Jan 2022 10:36:53 GMT):
Hello :wave:, when we start a besu node is created a privatekey this will be used as default miner-coinbase parameter --miner-coinbase ? My question is --miner-coinbase will override or is different stuff?

Junior-nitcheu (Mon, 31 Jan 2022 11:36:29 GMT):
Has joined the channel.

rameshmiriyala (Mon, 31 Jan 2022 12:45:56 GMT):
Has joined the channel.

hamoT (Mon, 31 Jan 2022 15:25:05 GMT):
Has joined the channel.

GarySchulte (Mon, 31 Jan 2022 16:03:14 GMT):
different stuff - it is there to identify the node on the p2p network. It doesn't have any bearing on the miner-coinbase. If your node is producing blocks, you will need a miner-coinbase

isavelli (Mon, 31 Jan 2022 18:34:16 GMT):
Hello, is it possible to use Cakeshop with BESU? and if yes, there is an example/tutorial I can use?

isavelli (Mon, 31 Jan 2022 18:34:33 GMT):
thanks!

isavelli (Mon, 31 Jan 2022 18:40:16 GMT):
alternatively, if there is a similar software that simplifies the deployment of contracts and management of the network

sudarsan.immadi (Tue, 01 Feb 2022 01:30:45 GMT):
Has joined the channel.

Avijeet_15 (Tue, 01 Feb 2022 08:05:59 GMT):
Hello @prasanthdotv , thank you for your reply. I want to create a private blockchain network using hyperledger but I dont want the network to be restricted to my computer. Following the documentation, I was able to build a private network with 4 validator nodes. What I want to create is a blockchain network similar to ethereum main net or matic network where computers can connect to the network using the internet and where they can then act as validator nodes or bootnodes etc. Please guide me how to achieve this. I would really appreciate any help from your side or anyone.

SobhikaR (Tue, 01 Feb 2022 08:59:55 GMT):
Has joined the channel.

MathiasBaumgartinger (Tue, 01 Feb 2022 10:53:02 GMT):
Has joined the channel.

Biradi (Tue, 01 Feb 2022 13:01:56 GMT):
Has joined the channel.

yusakrabin (Tue, 01 Feb 2022 14:09:36 GMT):
Has joined the channel.

dovidkopel (Tue, 01 Feb 2022 14:48:39 GMT):
Has joined the channel.

IgorSim (Tue, 01 Feb 2022 20:27:35 GMT):
HI, i've updated to latest version few days ago, client reached the head of the chain and things are working fine for now.... I've noticed that CPU is bit higher than usual, not sure if that's problem per se

IgorSim (Tue, 01 Feb 2022 20:28:05 GMT):

rc3.png

jacobgorman613 (Tue, 01 Feb 2022 20:57:20 GMT):
Has joined the channel.

BalarajuBalu (Wed, 02 Feb 2022 06:08:42 GMT):
Has joined the channel.

chetanambi (Wed, 02 Feb 2022 07:52:31 GMT):
Has joined the channel.

EduOliveira (Wed, 02 Feb 2022 10:40:26 GMT):
Has joined the channel.

GiacomoDisalvo (Wed, 02 Feb 2022 11:01:23 GMT):
Has joined the channel.

devratapuri (Wed, 02 Feb 2022 13:41:16 GMT):
Has joined the channel.

jayzhan (Wed, 02 Feb 2022 14:40:12 GMT):
Has joined the channel.

chetanhanda (Wed, 02 Feb 2022 16:24:09 GMT):
Has joined the channel.

mayurthosar11 (Wed, 02 Feb 2022 19:20:43 GMT):
Has joined the channel.

wontondon (Wed, 02 Feb 2022 19:59:39 GMT):
Has joined the channel.

kakaupke (Thu, 03 Feb 2022 00:01:39 GMT):
Has joined the channel.

dioxis (Thu, 03 Feb 2022 01:05:00 GMT):
Has joined the channel.

vsh1982 (Thu, 03 Feb 2022 02:59:35 GMT):
Has joined the channel.

vsh1982 (Thu, 03 Feb 2022 03:01:13 GMT):
Hi Team , I have a question regarding the licensing of using Hyperledger for production use? Is there any Enterprise version exist for Besu or is there any cost of using Besu ?

RyanJJones10 (Thu, 03 Feb 2022 03:23:47 GMT):
Hi @vsh1982, thank you for reaching out. There is no cost to using Besu in production. When you do, we'd love to hear any feedback you have.

RyanJJones10 (Thu, 03 Feb 2022 03:24:54 GMT):
At ConsenSys we do offer Professional Services to help get you up and running at scale correctly and we also offer Support as an option to quickly fix any issues that might arise in production.

RyanJJones10 (Thu, 03 Feb 2022 03:26:10 GMT):
With Support, comes additional products that make it easier to build and manage Besu based blockchains.

RyanJJones10 (Thu, 03 Feb 2022 03:26:51 GMT):
Fortune 100 companies are already using Besu at scale and in production

RyanJJones10 (Thu, 03 Feb 2022 03:33:10 GMT):
Hi @isavelli , best to use Remix. The only thing missing is something to deploy txns with, which we are looking to add at some point

RyanJJones10 (Thu, 03 Feb 2022 03:33:11 GMT):
https://remix.ethereum.org/#optimize=false&runs=200&evmVersion=null&version=soljson-v0.8.7+commit.e28d00a7.js

RyanJJones10 (Thu, 03 Feb 2022 03:39:26 GMT):
Hi @Avijeet_15, are you looking to actually create something like Mainnet and Polygon (Public Permissionless) or are you looking to make your own network that others can join but you have control of who joins as a node (Public Permissioned)?

RyanJJones10 (Thu, 03 Feb 2022 03:39:42 GMT):
Here is some documentation around creating a permissioned network

RyanJJones10 (Thu, 03 Feb 2022 03:39:43 GMT):
https://besu.hyperledger.org/en/1.4.2/Tutorials/Permissioning/Create-Permissioned-Network/

drichard2 (Thu, 03 Feb 2022 10:06:52 GMT):
Has joined the channel.

makikato (Thu, 03 Feb 2022 13:08:31 GMT):
Has joined the channel.

kaissfr (Thu, 03 Feb 2022 13:08:36 GMT):
Has joined the channel.

sohansamant (Thu, 03 Feb 2022 14:39:21 GMT):
Has joined the channel.

devg (Thu, 03 Feb 2022 15:09:54 GMT):
Has joined the channel.

Siltes (Thu, 03 Feb 2022 15:17:33 GMT):
Has joined the channel.

agiove (Thu, 03 Feb 2022 15:57:35 GMT):
Has joined the channel.

grittyronin (Thu, 03 Feb 2022 16:06:59 GMT):
Has joined the channel.

adambabs (Thu, 03 Feb 2022 16:10:23 GMT):
Has joined the channel.

sergm (Thu, 03 Feb 2022 16:11:39 GMT):
Has joined the channel.

kyilintun (Thu, 03 Feb 2022 16:11:50 GMT):
Has joined the channel.

gosankar (Thu, 03 Feb 2022 16:13:26 GMT):
Has joined the channel.

senthil.akshay27 (Thu, 03 Feb 2022 16:15:02 GMT):
Has joined the channel.

mepeltier (Thu, 03 Feb 2022 16:15:06 GMT):
Has joined the channel.

devin007 (Thu, 03 Feb 2022 16:23:20 GMT):
Has joined the channel.

ngwlf (Thu, 03 Feb 2022 16:23:38 GMT):
Has joined the channel.

sanjichained (Thu, 03 Feb 2022 16:26:36 GMT):
Has joined the channel.

Ben208N (Thu, 03 Feb 2022 17:03:03 GMT):
Has joined the channel.

kwollo (Thu, 03 Feb 2022 18:07:33 GMT):
Has joined the channel.

DurgaKVS (Thu, 03 Feb 2022 19:55:02 GMT):
Has joined the channel.

vsh1982 (Fri, 04 Feb 2022 02:13:12 GMT):
Ryan - Thanks for your the information. I am thinking to have a call with you guys ? How can we connect?

vsh1982 (Fri, 04 Feb 2022 02:13:12 GMT):
@RyanJJones10 - Thanks a lot for the information. I am thinking to have a call with you guys to understand bit more about the services your company provides. How can we connect?

JonasRasmussen (Fri, 04 Feb 2022 08:20:18 GMT):
Has joined the channel.

ThomasFR89 (Fri, 04 Feb 2022 08:20:26 GMT):
Has joined the channel.

LucasCanaro (Fri, 04 Feb 2022 08:29:03 GMT):
Has joined the channel.

iamchirag45 (Fri, 04 Feb 2022 12:18:56 GMT):
Has joined the channel.

vsh1982 (Fri, 04 Feb 2022 12:28:17 GMT):
Other than Solidity, what other programming languages can be used to write smart contracts and develop DLT application for Besu?

freddylarag (Fri, 04 Feb 2022 16:39:07 GMT):
Has joined the channel.

MarioMichel (Fri, 04 Feb 2022 18:41:23 GMT):
Does someone have Hyperledger Besu with Expedion via Brsu RPC API in use ?

CaixiangFan (Fri, 04 Feb 2022 18:51:20 GMT):
Has joined the channel.

LucasCosta (Fri, 04 Feb 2022 19:16:52 GMT):
Has joined the channel.

gladsjr (Fri, 04 Feb 2022 22:23:09 GMT):
Hi everyone. We`ve studied a lot on chain permissioning in Besu (https://besu.hyperledger.org/en/stable/Tutorials/Permissioning/Getting-Started-Onchain-Permissioning/#7-clone-the-contracts-and-install-dependencies). However, we are not sure if it`s possible to write specific contracts for our network. It seems to be possible, but it`s not clear how to do it yet. Would you suggest some material about it, please

gladsjr (Fri, 04 Feb 2022 22:24:50 GMT):
Hi everyone. We`ve studied a lot on chain permissioning in Besu (https://besu.hyperledger.org/en/stable/Tutorials/Permissioning/Getting-Started-Onchain-Permissioning/#7-clone-the-contracts-and-install-dependencies). However, we are not sure if it is possible to write specific permissioning contracts tailored for our network. It seems to be possible, but it is not clear how to do it yet. Would you suggest some material about it, please?

rizy (Sat, 05 Feb 2022 03:21:39 GMT):
Has joined the channel.

DeepakMuthekar (Sat, 05 Feb 2022 11:48:50 GMT):
Has joined the channel.

alih27140 (Sat, 05 Feb 2022 15:53:04 GMT):
Has joined the channel.

VasileiosK (Sat, 05 Feb 2022 17:19:54 GMT):
Has joined the channel.

jmb (Sat, 05 Feb 2022 19:15:48 GMT):
Has joined the channel.

gaganbabber (Sun, 06 Feb 2022 01:01:24 GMT):
Has joined the channel.

Rafeu (Sun, 06 Feb 2022 08:03:42 GMT):
Has joined the channel.

siddhantprateek (Sun, 06 Feb 2022 09:28:57 GMT):
Has joined the channel.

degex (Sun, 06 Feb 2022 10:31:26 GMT):
Has joined the channel.

govindlahoti (Sun, 06 Feb 2022 12:42:13 GMT):
Has joined the channel.

govindlahoti (Sun, 06 Feb 2022 12:43:40 GMT):
How much disk space is required for running hyperledger besu node?

YU.I (Sun, 06 Feb 2022 13:52:22 GMT):
Has joined the channel.

png_savvy (Sun, 06 Feb 2022 19:40:48 GMT):
Has joined the channel.

PhilippThater (Sun, 06 Feb 2022 22:25:30 GMT):
Has joined the channel.

rramon (Sun, 06 Feb 2022 22:41:17 GMT):
Has joined the channel.

abwh2 (Mon, 07 Feb 2022 03:19:20 GMT):
Has joined the channel.

macfarla (Mon, 07 Feb 2022 06:57:49 GMT):
Any language that is compatible with Ethereum should be compatible with Besu

cacaocal (Mon, 07 Feb 2022 09:28:28 GMT):
Has joined the channel.

prasanthdotv (Mon, 07 Feb 2022 10:21:27 GMT):
Hi, Is there any way to change the names of Besu monitoring metrics?

AntonYamkovoy (Mon, 07 Feb 2022 12:16:33 GMT):
Has joined the channel.

AhmadKh (Mon, 07 Feb 2022 14:08:44 GMT):
Has joined the channel.

jonathan1204 (Mon, 07 Feb 2022 15:02:12 GMT):
Has joined the channel.

salikzquidz (Mon, 07 Feb 2022 16:54:17 GMT):
Has joined the channel.

gabrielsdev (Mon, 07 Feb 2022 17:17:01 GMT):
Has joined the channel.

gabrielsdev (Mon, 07 Feb 2022 17:43:42 GMT):
Hello Guys, I was reading the permissioning documentation at this link: https://besu.hyperledger.org/en/stable/Tutorials/Permissioning/Getting-Started-Onchain-Permissioning/#7-clone-the-contracts-and-install-dependencies and I didn't understand the purpose of the storage in the genesis file. What this means?

isavelli (Mon, 07 Feb 2022 21:37:25 GMT):
Hello, I have a question: Can a (master) contract deploy another (child) contract, but with different privacy, e.g. with different flexible privacy groups or privateFor? My idea is to have a public contract that receives all transactions and then depending on some criteria creates different derived contracts to manage subsets of these transactions (e.g. for settlement purpose).

macfarla (Tue, 08 Feb 2022 04:51:00 GMT):
A good place to start might be looking at the tests for the existing contracts https://github.com/ConsenSys/permissioning-smart-contracts/tree/main/test and also the EEA spec (version 6) - basically Besu can talk to any contract that implements the spec. This is what's implemented by NodeIngress and AccountIngress contracts. https://entethalliance.org/technical-specifications/

macfarla (Tue, 08 Feb 2022 04:56:00 GMT):
this sets the initial state for the contracts that are deployed in the genesis file

khushalkunjir (Tue, 08 Feb 2022 05:51:44 GMT):
Has joined the channel.

SwapnilDeshmukh (Tue, 08 Feb 2022 11:17:37 GMT):
Has joined the channel.

Cai 238 (Tue, 08 Feb 2022 11:32:34 GMT):
Has joined the channel.

bruno_evaristo (Tue, 08 Feb 2022 19:58:25 GMT):
Has joined the channel.

macfarla (Tue, 08 Feb 2022 23:33:30 GMT):
A contract can only deploy contracts in the same world state. We think that would be a pretty cool feature but it's not on our roadmap rn!

HamidTariq (Tue, 08 Feb 2022 23:50:34 GMT):
Has joined the channel.

macfarla (Wed, 09 Feb 2022 01:16:28 GMT):
You would have to change the source code to change them rn, there's no API to do it. Is there something that is confusing?

khushalkunjir (Wed, 09 Feb 2022 05:44:10 GMT):
Hi Everyone, We are trying to use bevel for fabric platform, Can you please help me to find video material or tutorials that will help me to go through? Thank you, Khushal S. Kunjir

MuteMan (Wed, 09 Feb 2022 07:59:41 GMT):
Has joined the channel.

Cai 238 (Wed, 09 Feb 2022 08:13:38 GMT):
hello I am struggling with the error of "Failed to import block to chain". and I found this closed issue: https://github.com/hyperledger/besu/issues/2899 I am not sure if it is the same problem, my network is still running and this error only showed 2 times in the past week. (running on AWS) I want to identify if this problem also belongs to issue #2899, (then I can solve it with upgrade the version), Or I have to do other research related to verifying the blockhash or something. (want to know what's meaning of the error message below) I'm sorry that I couldn't provide more environmental information because I am very fresh in this field. If any advice that I can get to make a research direction, that will be really helpful. Thank you in advance. Software version: version: besu/v1.5.3/linux-x86_64/oracle_openjdk-java-14 Error message: ``` Failed to import block to chain. block=222781 extraData=IbftExtraData[vanityData=0x0000000000000000000000000000000000000000000000000000000000000000, seals=[SECP256K1.Signature{r=31067947231597307515973088086785511695430782653315401734983116471929184051551, s=41100377914765765404298290283756800917726635099840850440833293306229461546982, recId=1}, SECP256K1.Signature{r=47782506287434789985199491837321874102405210378675089875974341358627722049426, s=56477448400379054562010499330983298925376366053806129530627296595708347561354, recId=0}, SECP256K1.Signature{r=31067947231597307515973088086785511695430782653315401734983116471929184051551, s=41100377914765765404298290283756800917726635099840850440833293306229461546982, recId=1}, SECP256K1.Signature{r=90592021223121448214823925170077787411866036053198613281180515164735438305430, s=26702380845072626744248573333825194847417154529560575364938790705076047148372, recId=1}], vote=Optional.empty, round=0, ... ```

harikishantk (Wed, 09 Feb 2022 09:22:36 GMT):
Has joined the channel.

diegoll (Wed, 09 Feb 2022 12:21:07 GMT):
Hello Cai 238. Using the latest `main` I was able to synchronize ETH Mainnet beyond the block you are having issues ``` 2022-02-09 09:07:11.897-03:00 | EthScheduler-Services-5 (importBlock) | INFO | FullImportBlockStep | Import reached block 222600 (0x6ce6c39bdd960bb34f32b421b506d2d8eac8728836cc06be6b2f186aeff5dc15), 37.935 Mg/s, Peers: 24 2022-02-09 09:07:14.378-03:00 | EthScheduler-Services-5 (importBlock) | INFO | FullImportBlockStep | Import reached block 222800 (0x2e1cd14f5f0ee063a7e763c295c09777fd3ba54c05a6479980ec06a0eea38402), 10.722 Mg/s, Peers: 25 ``` What version are you using? You can check that by running `besu --version`

theNatassa (Wed, 09 Feb 2022 12:34:36 GMT):
Has joined the channel.

Cai 238 (Wed, 09 Feb 2022 12:47:08 GMT):
@diegoll

Cai 238 (Wed, 09 Feb 2022 12:54:24 GMT):
@diegoll ``` ``` Hello, thank you for your kind information. ``` I am using a quite old version which is 1.5.3.``` My network is private and runs on the cloud server. ``` It is not easy to upgrade the version so I want to get more information about the error. ``` I hope the besu developer can check if this is the same situation with https://github.com/hyperledger/besu/issues/2899 ``` ``` ``` ```

Cai 238 (Wed, 09 Feb 2022 12:54:24 GMT):
@diegoll Hello, thank you for your kind information. I am using a quite old version which is 1.5.3. My network is private and runs on the cloud server. It is not easy to upgrade the version so I want to get more information about the error. I hope the besu developer can check if this is the same situation with https://github.com/hyperledger/besu/issues/2899

Cai 238 (Wed, 09 Feb 2022 12:56:55 GMT):
Should i post it to the github issues so that i can get more information?

diegoll (Wed, 09 Feb 2022 13:03:04 GMT):
I don't think this is related to issue #2899

Cai 238 (Wed, 09 Feb 2022 13:04:53 GMT):
:pensive:

SwapnilPakhare (Wed, 09 Feb 2022 16:55:54 GMT):
Has joined the channel.

gabrielsdev (Wed, 09 Feb 2022 17:28:39 GMT):
How can I access this state in the contract? Is it through some variable?

LiXu 17 (Wed, 09 Feb 2022 18:06:50 GMT):
Has joined the channel.

joseucarvajal (Wed, 09 Feb 2022 23:16:07 GMT):
Has joined the channel.

kaushikkumarbora (Thu, 10 Feb 2022 06:25:59 GMT):
Has joined the channel.

eeeeegik (Thu, 10 Feb 2022 07:38:30 GMT):
Has joined the channel.

Koraycill (Thu, 10 Feb 2022 11:49:56 GMT):
Has joined the channel.

jann2005 (Thu, 10 Feb 2022 12:07:43 GMT):
Has joined the channel.

jann2005 (Thu, 10 Feb 2022 12:09:06 GMT):
Hi, I am executing on chain per missioning example . while running 'yarn migrate --reset ' node are not getting added

jann2005 (Thu, 10 Feb 2022 12:10:37 GMT):
Adding Initial Allowlisted eNodes ... enode://9526c2994497fd9f6a8f2288f344afa8dd1142f30af2d9c69176786adbdc4dddaaa00f82cc9518dcb39984fecfbb359a8751897d7741c34de99bf5dd4444be9a@127.0.0.1:30303,enode://5095fe60ab5f0cb30f76044fec5278ea57fa189c01a65e4bb03808ee337af64e63342f84b2945e64f22ef2ef5ab4fe10fadd2e92ddaea8548ed8b4004180483f@127.0.0.1:30304,enode://3691dd126e791534d8f1f44a0c95397e124f4ccdb96af29f084ee7f18af6dfd36ed4d16720b85642cd73956e247670f7d8d0d3dfef7ffb444aea4b37990d5780@127.0.0.1:30305 Exiting: Review successful transactions manually by checking the transaction hashes above on Etherscan. Error: Execution reverted at module.exports (/home/ubuntu/Documents/block-poc/hyperledger-besu/onchain-sec11/onchain-permissioning/permissioning-smart-contracts/migrations/3_deploy_node_ingress_rules_contract.js:87:50) at runMicrotasks () at processTicksAndRejections (node:internal/process/task_queues:96:5) at Migration._deploy (/home/ubuntu/Documents/block-poc/hyperledger-besu/onchain-sec11/onchain-permissioning/permissioning-smart-contracts/node_modules/truffle/build/webpack:/packages/migrate/Migration.js:72:1) at Migration._load (/home/ubuntu/Documents/block-poc/hyperledger-besu/onchain-sec11/onchain-permissioning/permissioning-smart-contracts/node_modules/truffle/build/webpack:/packages/migrate/Migration.js:54:1) at Migration.run (/home/ubuntu/Documents/block-poc/hyperledger-besu/onchain-sec11/onchain-permissioning/permissioning-smart-contracts/node_modules/truffle/build/webpack:/packages/migrate/Migration.js:202:1) at Object.runMigrations (/home/ubuntu/Documents/block-poc/hyperledger-besu/onchain-sec11/onchain-permissioning/permissioning-smart-contracts/node_modules/truffle/build/webpack:/packages/migrate/index.js:152:1) at Object.runFrom (/home/ubuntu/Documents/block-poc/hyperledger-besu/onchain-sec11/onchain-permissioning/permissioning-smart-contracts/node_modules/truffle/build/webpack:/packages/migrate/index.js:117:1) at Object.runAll (/home/ubuntu/Documents/block-poc/hyperledger-besu/onchain-sec11/onchain-permissioning/permissioning-smart-contracts/node_modules/truffle/build/webpack:/packages/migrate/index.js:121:1) at Object.run (/home/ubuntu/Documents/block-poc/hyperledger-besu/onchain-sec11/onchain-permissioning/permissioning-smart-contracts/node_modules/truffle/build/webpack:/packages/migrate/index.js:86:1) at runMigrations (/home/ubuntu/Documents/block-poc/hyperledger-besu/onchain-sec11/onchain-permissioning/permissioning-smart-contracts/node_modules/truffle/build/webpack:/packages/core/lib/commands/migrate/run.js:78:1) at Object.module.exports [as run] (/home/ubuntu/Documents/block-poc/hyperledger-besu/onchain-sec11/onchain-permissioning/permissioning-smart-contracts/node_modules/truffle/build/webpack:/packages/core/lib/commands/migrate/run.js:44:1) at Command.run (/home/ubuntu/Documents/block-poc/hyperledger-besu/onchain-sec11/onchain-permissioning/permissioning-smart-contracts/node_modules/truffle/build/webpack:/packages/core/lib/command.js:189:1) Truffle v5.4.32 (core: 5.4.32) Node v16.14.0 error Command failed with exit code 1.

AngelEscudero (Thu, 10 Feb 2022 12:58:13 GMT):
Has joined the channel.

macfarla (Fri, 11 Feb 2022 01:47:16 GMT):
Howdy! Good news! Hyperledger is migrating to Discord! (Please re-ask your question in the `besu` channel if you didn't already get a response here.) Find us over here -  https://discord.gg/hyperledger

mgmgwi (Fri, 11 Feb 2022 09:22:19 GMT):
Has joined the channel.

ethereal1m (Fri, 11 Feb 2022 09:38:56 GMT):
Has joined the channel.