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

Prod Release 21/02/24 #574

Merged
merged 5 commits into from
Feb 22, 2024
Merged

Prod Release 21/02/24 #574

merged 5 commits into from
Feb 22, 2024

Conversation

morgsmccauley
Copy link
Collaborator

Kevin101Zhang and others added 3 commits February 16, 2024 14:41
Accidentally overwrote some changes here -
#555.
Checkout a branch a resolved the latest changes for removing
glyphsuccess color from green to transparent and removing trycatch.

Glyphs margins to showcase a better error message to the user. The Glyph
is either red or green. Green indicating it has not caught an errors and
red indicating it has found an error. When an error is found it will
come with a hoverable error message as well as the line it was caught
on.

Procedure:
Onload of the schema page the glyphs will mount and check if there is an
error based off the users previously written schema or their locally
stored code.

If the user has an error: It will highlight the line the error was
caught on with a red glyph and a hoverable message.
If the user does not have an error it will remain on line 1 with a green
glyph. Onhover it will tell the user there are no errors.

If the user navigates away from the schema tab with an error it will
prompt the user with a Alert that there was an error and to please
return back to the schema tab and correct the schema.

The Glyph functionality with run on a debounced event of 500ms based off
the users onChange typing activity on the schema page. When triggered it
will prettify the users schema and will attempt to generate types in a
try/catch. If it hits the error then it will relay the line number the
error was caught on and the err message which the glyph will represent.

The Glyph only takes place on schema.sql as for indexLogic we have
monaco's support for intellisense/catching errors in the JS env.

In the case in the video where the glyph is on line one and hovering
over the glyph showcases an error message with a line number - this is
when prettier is throwing an error and can be added through string
matching to correctly display the glyph location


https://www.loom.com/share/78d0c6435115470597b9e8448976fda4?sid=fba10322-2ded-4b14-8178-8a5b51143148
Block Streamer will fail to process a * contract filter as it will try
to fetch index files for all account IDs. This is not only extremely
inefficient since we aren't planning to skip anything, but will also
fail as we limit the number of accounts fetched as a sanity check.

Block Streamer, if the filter is "*" specifically, now skips fetching
index files and begins reading from Lake directly instead.

This retains the behavior of block streamer reading block data before
pushing the height to Redis. There is an intended migration of Runner's
prefetch into Block Streamer. This change works well towards that goal.
However, obviously there is double work performed here: We fetch the
block, only to just put the height into Redis. If, in the short term and
before we migrate prefetch from Runner to Block Streamer, we need to
speed things up, we can list files form S3 instead. However, this work
would be removed after the mentioned migration of work.
This PR updates the frontend to work with the updated registry contract
types/methods. There are two parts to this change:
- Consuming the new types, mainly `rule` and `startBlock`, and writing
these types back during registration
- Adding the new `StartBlock::Continue` option, which allows developers
to resume the existing block stream.

I've attached images of the updated UI for reference. Note that updating
the contract filter is disabled with the new "Continue" option.


![image](https://github.com/near/queryapi/assets/11974624/d4069cc8-d7bf-4c66-9d33-ec9d51bfcc83)

![image](https://github.com/near/queryapi/assets/11974624/0b3ef7e4-6542-4b5a-86ad-14c8028565ed)
@morgsmccauley morgsmccauley requested a review from a team as a code owner February 21, 2024 01:12
morgsmccauley and others added 2 commits February 21, 2024 10:31
Now that both dev/prod have been completely migrated, we can remove the
`allowlist`. This makes the V2 architecture the default.

We don't need to remove the `denylist` from Coordinator V2, that process
has already been stopped.
Logic fix for handling monaco glyph mounting.

Originally it will error on diffView/debug mode due to rendering of
unmounted glyphs.
<img width="1094" alt="Screenshot 2024-02-20 at 3 05 05 PM"
src="https://github.com/near/queryapi/assets/42101107/9542852d-6a27-413a-9b56-d90a2abbb1fa">

Video post fix:

https://www.loom.com/share/dd797612590d4f12a27e7216ab009b68?sid=4ec944fd-e718-4851-b231-4339ffab5bd8
Copy link
Collaborator

@darunrs darunrs left a comment

Choose a reason for hiding this comment

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

LGTM. We do also have the option of waiting until next Monday to do the release, to include supporting * filter as well. That PR is nearly merge ready.

I assume you've removed build triggers and killed Coordinator V1 already in prod? Since we're merging the remove allowlist PR too now.

@morgsmccauley
Copy link
Collaborator Author

morgsmccauley commented Feb 22, 2024

We do also have the option of waiting until next Monday to do the release, to include supporting * filter as well. That #567 is nearly merge ready.

We can do another release then. I want to get "Continue" out ASAP :)

I assume you've removed build triggers and killed Coordinator V1 already in prod? Since we're merging the remove allowlist PR too now.

Yes, triggers have been removed.

@morgsmccauley morgsmccauley merged commit 5a25fe3 into stable Feb 22, 2024
14 checks passed
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.

3 participants