-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
[Shipped] Lotus Client Release v1.27.1 #12073
Comments
Writing down steps taken here, and some timings so we can get a baseline:
Prepping an RC:
Failed with:
Had to cd go/github.com/github.com/filecoin-project/lotus - and git pull, then back to home/lotus/ and run it again. Second failure: I had committed the step in
|
@rjan90 :
Not to self: once I get part of lotus-contributors team, I will:
|
Adding time I used for the
Notes
|
Timings for RC2-parts:
|
@aarshkshah1992 : I didn't sync with @rjan90 on this release (I've only been discussing 1.28.0). I assume you're going to handle this. Is it clear to you when (date and conditions) to make the final release? I'm bringing this up because the 1.28.0 release (#12109 ) will branch from this. |
@BigLep oops sorry just saw your last comment - i will handle this one! |
Per 2024-06-25 verbal conversation, this is complete: https://github.com/filecoin-project/lotus/releases/tag/v1.27.1 |
(Noting this here because I've been asked twice now and there may be others). This release contains a migration in the events database, full details of this are in #11952 The events database is not turned on in the default Lotus configuration, you have to turn one of a few things on in order for it to be running. If your Lotus configuration has at least one of the following options then you have the database on:
You can also check for yourself by looking at your lotus repo directory: if there is a For users who are operating the events database and find themselves wanting to downgrade from this release to v1.27.0, this is possible, but it requires some manual work. This particular migration is (roughly) idempotent, so going back and forth through the migration should be non-destructive and should not cause errors if done correctly. The main problem is that we store a schema version in the events database once the migration is performed so we know it doesn't need to be done again. This version needs to be wound back to the previous version when starting with an older version of Lous. If you attempt to un an older version of Lotus with a migrated database then you'll get an error, something like: To downgradeNOTE: this instructions are specific to the migration in #11952 (in Lotus v1.27.1) and only works because the schema of the database did not change. If you require help downgrading other versions, please ask, there may or may not be simply ways to achieve it. Caveat emptor: I haven’t actually tested this myself on a live node, but it's a simple enough migration that this should all be straightforward. If you perform these steps you are taking responsibility for the outcome. If your node contains critical history and you depend on accuracy of the events APIs then you would be advised to take a backup of the entire repo as the blockstore and events database should stay in sync in order to have the right data up to the latest tipset. Leave some feedback if this goes well for you to give others some additional assurance.
As soon as you make the switch from v1.27.0 to v1.27.1 (or later), the migration will be re-run and the version Additional notesPlease be aware that v1.27.1 contains a fix for this Ethereum API incompatibility bug: #11630, downgrading back to v1.27.0 will lose the fix and will also give you different event indexes to a non-migrated v1.27.0 (and previous) node. Events prior to your downgrade will be properly indexed (which v1.27.0 and prior won't have), but events after the downgrade will be improperly indexed. If you don't have an application that depends on indexes to be correct as per the Ethereum API then this is unlikely a concern. When proceeding past this migration in a future upgrade (to v1.27.1 or some future version), your indexes should be fixed again as all historical events are re-indexed. |
@rvagg should we add this to release note? |
@jennijuju yeah, I can do that, but I also put an additional caveat just now in the middle of my text, I don't want to give the impression this is a guaranteed solution. Migrations are normally intended to go one way, this one just happens to be fairly simple. |
🚢 Estimated shipping date
✅ Release Checklist
release/vX.Y.Z
) frommaster
and make any further release related changes to this branch. If any "non-trivial" changes get added to the release, uncheck all the checkboxes and return to this stage.build/version.go
in themaster
branch tovX.Y.(Z+1)-dev
(bump from feature release) orvX.(Y+1).0-dev
(bump from mandatory release). Run make gen and make docsgen-cli before committing changeschore: bump version in master #12074
Prepping an RC:
build/version.go
needs to be updated to end with '-rcX' (in therelease/vX.Y.Z
branch)make gen && make docsgen-cli
vX.Y.Z-rcN
Stable Release
version.go
has been updated.make gen && make docsgen-cli
)release-vX.Y.Z
into thereleases
branch.releases
branch) withvX.Y.Z
Post-Release
releases
branch back intomaster
, ignoring the changes toversion.go
(keep the-dev
version from master). Do NOT delete thereleases
branch when doing so!The text was updated successfully, but these errors were encountered: