Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: 13135 Added PlatformState protobuf representation #349

Merged
merged 22 commits into from
Jul 3, 2024

Conversation

imalygin
Copy link
Member

@imalygin imalygin commented May 8, 2024

Description:

This PR adds representation of com.swirlds.platform.state.PlatformState object. It's a prerequisite for hashgraph/hedera-services#11771

Related issue(s):

Fixes # hashgraph/hedera-services#13135

Related # hashgraph/hedera-services#11771

@imalygin imalygin requested review from a team as code owners May 8, 2024 21:47
@imalygin imalygin force-pushed the 13135-add-platform-state branch 2 times, most recently from 145c149 to 75049c9 Compare May 8, 2024 21:58
@imalygin imalygin requested a review from a team as a code owner May 8, 2024 23:17
@imalygin imalygin requested a review from kfa-aguda May 8, 2024 23:17
@imalygin imalygin force-pushed the 13135-add-platform-state branch 2 times, most recently from f6f6194 to 8ead05f Compare May 8, 2024 23:24
iwsimon
iwsimon previously approved these changes May 9, 2024
Copy link
Contributor

@iwsimon iwsimon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Thanks @imalygin

@imalygin imalygin force-pushed the 13135-add-platform-state branch 5 times, most recently from 39010c2 to d208126 Compare May 9, 2024 22:19
Copy link
Member

@jsync-swirlds jsync-swirlds left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Apologies for the delay, this took a bit more thought and rework than expected; partly a lot of description was in pseudo-requirements so that took some thought to understand.

platform/state/platform_state.proto Outdated Show resolved Hide resolved
platform/state/platform_state.proto Outdated Show resolved Hide resolved
jsync-swirlds
jsync-swirlds previously approved these changes May 10, 2024
platform/state/platform_state.proto Outdated Show resolved Hide resolved
platform/state/platform_state.proto Outdated Show resolved Hide resolved
platform/state/platform_state.proto Outdated Show resolved Hide resolved
platform/state/platform_state.proto Outdated Show resolved Hide resolved
platform/state/platform_state.proto Outdated Show resolved Hide resolved
platform/state/platform_state.proto Outdated Show resolved Hide resolved
platform/state/platform_state.proto Outdated Show resolved Hide resolved
platform/state/platform_state.proto Outdated Show resolved Hide resolved
platform/state/platform_state.proto Outdated Show resolved Hide resolved
platform/state/platform_state.proto Show resolved Hide resolved
platform/state/platform_state.proto Outdated Show resolved Hide resolved
platform/state/platform_state.proto Outdated Show resolved Hide resolved
platform/state/platform_state.proto Outdated Show resolved Hide resolved
platform/state/platform_state.proto Outdated Show resolved Hide resolved
platform/state/platform_state.proto Outdated Show resolved Hide resolved
imalygin and others added 3 commits June 11, 2024 16:10
Signed-off-by: Ivan Malygin <[email protected]>
Co-authored-by: Joseph Sinclair <[email protected]>
Updated the documentation according to the guidelines.

Moved platform_state.proto to platform/state directory.
Updated the documentation according to the guidelines.

Signed-off-by: Ivan Malygin <[email protected]>
… from `ConsensusSnapshot`, as these fields duplicate fields in `PlatformState` and mean exactly the same thing.

Signed-off-by: Ivan Malygin <[email protected]>
Signed-off-by: Ivan Malygin <[email protected]>
Co-authored-by: Joseph Sinclair <[email protected]>
…put it back to `ConsensusSnapshot`

Signed-off-by: Ivan Malygin <[email protected]>
…ormState` and put it back to `ConsensusSnapshot`

Signed-off-by: Ivan Malygin <[email protected]>
platform/state/platform_state.proto Outdated Show resolved Hide resolved
platform/state/platform_state.proto Show resolved Hide resolved
platform/state/platform_state.proto Show resolved Hide resolved
platform/state/platform_state.proto Show resolved Hide resolved
…h_round_mode` to the set of deprecated fields.

Signed-off-by: Ivan Malygin <[email protected]>
jsync-swirlds
jsync-swirlds previously approved these changes Jul 1, 2024
Copy link
Member

@jsync-swirlds jsync-swirlds left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, just one item to resolve in a follow-up PR.

Co-authored-by: Joseph S. <[email protected]>
Signed-off-by: Ivan Malygin <[email protected]>
@Neeharika-Sompalli Neeharika-Sompalli merged commit 54b258d into hashgraph:main Jul 3, 2024
1 check passed
netopyr added a commit that referenced this pull request Jul 18, 2024
* main: (21 commits)
  feat: 13135 Added PlatformState protobuf representation (#349)
  feat: Change AddressBookService package to proto (#386)
  feat: add admin_key to node_create.proto, node_update.proto and node.proto (#380)
  HIP 904 proto updates for token reject (#367)
  chore: Updated codeowners to include devops-ci (#384)
  feat: remove node_get_info.proto (#378)
  fixed INVALID_GOSSIP_CA_CERTIFICATE (#375)
  fix: Fixing single-letter mismatch to expectations (#373)
  feat: Update specification text for address book service (#346)
  feat: Add more response codes for Dynamic Address Book Phase 2 (#370)
  feat: maxAutoAssociations updates for contract transactions (#359)
  Added more response codes for Dynamic Address Book Phase 2 (#364)
  feat: Add back Dynamic Address Book Phase 2 protobufs change (#361)
  feat: Back out protobuf-changes to dynamic address book for release 0.51 (#358)
  feat: added NodeGetInfoResponse to response.proto (#355)
  feat: HIP-904 maxAutoAssociations updates (#348)
  chore: added consensus data protobuf (#350)
  Added NodeGetInfo (#347)
  feat: Dynamic Address Book Phase 2 protobufs changes (#344)
  feat: define event protobufs (#338)
  ...

# Conflicts:
#	services/basic_types.proto
#	services/schedulable_transaction_body.proto
#	services/token_service.proto
#	services/transaction_body.proto
#	services/transaction_receipt.proto
netopyr added a commit that referenced this pull request Jul 18, 2024
* main: (21 commits)
  feat: 13135 Added PlatformState protobuf representation (#349)
  feat: Change AddressBookService package to proto (#386)
  feat: add admin_key to node_create.proto, node_update.proto and node.proto (#380)
  HIP 904 proto updates for token reject (#367)
  chore: Updated codeowners to include devops-ci (#384)
  feat: remove node_get_info.proto (#378)
  fixed INVALID_GOSSIP_CA_CERTIFICATE (#375)
  fix: Fixing single-letter mismatch to expectations (#373)
  feat: Update specification text for address book service (#346)
  feat: Add more response codes for Dynamic Address Book Phase 2 (#370)
  feat: maxAutoAssociations updates for contract transactions (#359)
  Added more response codes for Dynamic Address Book Phase 2 (#364)
  feat: Add back Dynamic Address Book Phase 2 protobufs change (#361)
  feat: Back out protobuf-changes to dynamic address book for release 0.51 (#358)
  feat: added NodeGetInfoResponse to response.proto (#355)
  feat: HIP-904 maxAutoAssociations updates (#348)
  chore: added consensus data protobuf (#350)
  Added NodeGetInfo (#347)
  feat: Dynamic Address Book Phase 2 protobufs changes (#344)
  feat: define event protobufs (#338)
  ...
vtronkov pushed a commit that referenced this pull request Jul 23, 2024
* feat: 13135 Added PlatformState protobuf representation

Signed-off-by: Ivan Malygin <[email protected]>

* Update sdk/platform_state.proto

Signed-off-by: Ivan Malygin <[email protected]>
Co-authored-by: Joseph Sinclair <[email protected]>

* Moved platform_state.proto to platform/state directory.
Updated the documentation according to the guidelines.

Moved platform_state.proto to platform/state directory.
Updated the documentation according to the guidelines.

Signed-off-by: Ivan Malygin <[email protected]>

* Updated type of `lowest_judge_generation_before_birth_round_mode` to int64 as it can be negative.

Signed-off-by: Ivan Malygin <[email protected]>

* Added platform-specific `AddressBook`.

Signed-off-by: Ivan Malygin <[email protected]>

* Update platform/state/platform_state.proto

Signed-off-by: Ivan Malygin <[email protected]>
Co-authored-by: Joseph Sinclair <[email protected]>

* Addressed review comments.

Signed-off-by: Ivan Malygin <[email protected]>

* Removed Roster, Address and NodeId as they will be a part of another PR.
Fixed `PlatformState` indices.

Signed-off-by: Ivan Malygin <[email protected]>

* Update platform/state/platform_state.proto

Signed-off-by: Ivan Malygin <[email protected]>
Co-authored-by: Joseph Sinclair <[email protected]>

* Addressed review comments:

Added `deprecated` tag amd changed the type of `last_round_before_birth_round_mode` and `lowest_judge_generation_before_birth_round_mode` to `uint64`

Signed-off-by: Ivan Malygin <[email protected]>

* Update platform/state/platform_state.proto

Signed-off-by: Ivan Malygin <[email protected]>
Co-authored-by: Joseph Sinclair <[email protected]>

* Addressed review comments - removed `SoftwareVersion` message and replaced it with `SemanticVersion`

Signed-off-by: Ivan Malygin <[email protected]>

* Addressed a review comment - deprecated `last_round_before_birth_round_mode` and updated its order.
Signed-off-by: Ivan Malygin <[email protected]>

* Addressed a review comment - improved description for `minimum_judge_ancient_threshold`.

Signed-off-by: Ivan Malygin <[email protected]>

* Addressed a review comment - removed `round` and `consensusTimestamp` from  `ConsensusSnapshot`, as these fields duplicate fields in `PlatformState` and mean exactly the same thing.

Signed-off-by: Ivan Malygin <[email protected]>

* Addressed a review comment - updated comment for `MinimumJudgeInfo`

Signed-off-by: Ivan Malygin <[email protected]>

* Update platform/state/platform_state.proto

Signed-off-by: Ivan Malygin <[email protected]>
Co-authored-by: Joseph Sinclair <[email protected]>

* Addressed Lazar's comment - removed `round` from `PlatformState` and put it back to `ConsensusSnapshot`

Signed-off-by: Ivan Malygin <[email protected]>

* Addressed Lazar's comment - removed `consensus_timestamp` from `PlatformState` and put it back to `ConsensusSnapshot`

Signed-off-by: Ivan Malygin <[email protected]>

* Improved javadoc for  `ConsensusSnapshot.consensus_timestamp`

Signed-off-by: Ivan Malygin <[email protected]>

* Addressed Cody's comment - moved `PlatformState.first_version_in_birth_round_mode` to the set of deprecated fields.

Signed-off-by: Ivan Malygin <[email protected]>

* Fixed HTML tags.

Co-authored-by: Joseph S. <[email protected]>
Signed-off-by: Ivan Malygin <[email protected]>

---------

Signed-off-by: Ivan Malygin <[email protected]>
Co-authored-by: Joseph Sinclair <[email protected]>
Signed-off-by: Valentin Tronkov <[email protected]>
vtronkov pushed a commit that referenced this pull request Jul 23, 2024
* feat: 13135 Added PlatformState protobuf representation

Signed-off-by: Ivan Malygin <[email protected]>

* Update sdk/platform_state.proto

Signed-off-by: Ivan Malygin <[email protected]>
Co-authored-by: Joseph Sinclair <[email protected]>

* Moved platform_state.proto to platform/state directory.
Updated the documentation according to the guidelines.

Moved platform_state.proto to platform/state directory.
Updated the documentation according to the guidelines.

Signed-off-by: Ivan Malygin <[email protected]>

* Updated type of `lowest_judge_generation_before_birth_round_mode` to int64 as it can be negative.

Signed-off-by: Ivan Malygin <[email protected]>

* Added platform-specific `AddressBook`.

Signed-off-by: Ivan Malygin <[email protected]>

* Update platform/state/platform_state.proto

Signed-off-by: Ivan Malygin <[email protected]>
Co-authored-by: Joseph Sinclair <[email protected]>

* Addressed review comments.

Signed-off-by: Ivan Malygin <[email protected]>

* Removed Roster, Address and NodeId as they will be a part of another PR.
Fixed `PlatformState` indices.

Signed-off-by: Ivan Malygin <[email protected]>

* Update platform/state/platform_state.proto

Signed-off-by: Ivan Malygin <[email protected]>
Co-authored-by: Joseph Sinclair <[email protected]>

* Addressed review comments:

Added `deprecated` tag amd changed the type of `last_round_before_birth_round_mode` and `lowest_judge_generation_before_birth_round_mode` to `uint64`

Signed-off-by: Ivan Malygin <[email protected]>

* Update platform/state/platform_state.proto

Signed-off-by: Ivan Malygin <[email protected]>
Co-authored-by: Joseph Sinclair <[email protected]>

* Addressed review comments - removed `SoftwareVersion` message and replaced it with `SemanticVersion`

Signed-off-by: Ivan Malygin <[email protected]>

* Addressed a review comment - deprecated `last_round_before_birth_round_mode` and updated its order.
Signed-off-by: Ivan Malygin <[email protected]>

* Addressed a review comment - improved description for `minimum_judge_ancient_threshold`.

Signed-off-by: Ivan Malygin <[email protected]>

* Addressed a review comment - removed `round` and `consensusTimestamp` from  `ConsensusSnapshot`, as these fields duplicate fields in `PlatformState` and mean exactly the same thing.

Signed-off-by: Ivan Malygin <[email protected]>

* Addressed a review comment - updated comment for `MinimumJudgeInfo`

Signed-off-by: Ivan Malygin <[email protected]>

* Update platform/state/platform_state.proto

Signed-off-by: Ivan Malygin <[email protected]>
Co-authored-by: Joseph Sinclair <[email protected]>

* Addressed Lazar's comment - removed `round` from `PlatformState` and put it back to `ConsensusSnapshot`

Signed-off-by: Ivan Malygin <[email protected]>

* Addressed Lazar's comment - removed `consensus_timestamp` from `PlatformState` and put it back to `ConsensusSnapshot`

Signed-off-by: Ivan Malygin <[email protected]>

* Improved javadoc for  `ConsensusSnapshot.consensus_timestamp`

Signed-off-by: Ivan Malygin <[email protected]>

* Addressed Cody's comment - moved `PlatformState.first_version_in_birth_round_mode` to the set of deprecated fields.

Signed-off-by: Ivan Malygin <[email protected]>

* Fixed HTML tags.

Co-authored-by: Joseph S. <[email protected]>
Signed-off-by: Ivan Malygin <[email protected]>

---------

Signed-off-by: Ivan Malygin <[email protected]>
Co-authored-by: Joseph Sinclair <[email protected]>
Signed-off-by: Valentin Tronkov <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants