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

Goal: More performant architecture with Kwil v0.10 #673

Open
9 of 31 tasks
outerlook opened this issue Oct 14, 2024 · 25 comments
Open
9 of 31 tasks

Goal: More performant architecture with Kwil v0.10 #673

outerlook opened this issue Oct 14, 2024 · 25 comments
Assignees

Comments

@outerlook
Copy link
Contributor

outerlook commented Oct 14, 2024

Specs

Blocks

Blocked By

Issues

Contract And Node Upgrade

SDKs Upgrade

  • TBD

Data Provider & Adapter

  • Problem: Data Provider doesn't support new SDKs
  • Problem: Adapters not migrated to new architecture
  • Problem: Nuon contract missing for new structure
  • Problem: Data ingestion flows not set up for new system

Deprecate Old Chain

  • Problem: Migration guide for TN users missing
  • Problem: Migration guide for node operators missing
  • Problem: Nuon migration missing
  • Problem: Website migration missing
  • Problem: Index.fun migration missing
  • Problem: Deprecation timeline not scheduled or announced
@outerlook
Copy link
Contributor Author

Hey @rsoury @markholdex, I'm just creating this goal to log that @brennanjl is investigating and suggesting alternative approaches where our contracts could perform 25x better related to speed, and use less memory too.

It's related to the next Kwil version, because it would require some additional features, SQL-wise, from Kwil.

It does have compromises, like adopting an architecture similar to the one discussed on #137, so we also know it would work (with the compromise of not having flexible logics, which isn't widely used at the moment)

the discussion could go through this goal and specs

@markholdex
Copy link
Collaborator

@outerlook can you kickstart the specs with the info you know?

@MicBun
Copy link
Contributor

MicBun commented Dec 18, 2024

Should this goal be closed? #763
Looking at the versioning the v0.10 should be newer than 0.9, right?

@outerlook

@outerlook
Copy link
Contributor Author

I don't think so, as each is a bit different:

  • The v0.9 goal is about performance enhancements we're ready to support (e.g. using indexed access)
  • v0.10 is next version, by the time I created, there were some ongoing discussions about being able to improve time speeds up to 25x, and maybe changing our streams architecture to achieve that massive gain. However, I'm in debt of giving more information in a specs -- because I don't have more concrete information yet.

In short if some of the goals is off, maybe it's this one. But is it worth keeping just to have on our map that this intention exists? And, as soon as kwil team has more concrete information about the modifications of the new version, we begin the specs?

@markholdex
Copy link
Collaborator

@MicBun @outerlook let's move the discussion to a spec document, please!

@markholdex
Copy link
Collaborator

Hey @brennanjl @KwilLuke do you guys have any updates on the new architecture? We are keen to begin the work around the Billing mechanism we discussed.

@brennanjl
Copy link
Collaborator

Hi @markholdex

Apologies for the delayed response; the Kwil team takes off the 7 days between Christmas and New Years, so we are just getting back to it.

Our team is close to having the new version ready. We ran into some hiccups, which combined with the holidays, delayed timelines a little bit. For the purposes of your team's planning, we should break down Kwil's milestones into 2 sections:

  • v0.10 beta
  • billing

The v0.10 beta will likely be ready ~1 week before billing (since e2e testing for billing requires a somewhat stable v0.10). We are having a team-wide meeting tomorrow to discuss timelines for the beta, so I will have more accurate timelines for you then, but my current estimate is around the 14th. I will let you know if our estimates after our meeting tomorrow are different from this.

Billing will follow this as closely as possible. As mentioned above, we should have something usable ~1 week after v0.10 beta, but please keep in mind that real tokens should not yet be used with it. The UX/DX should be pretty set (so that your team can begin development and experimentation with EVM testnets), but there is still auditing and testing that needs to be performed before it is safe to use real funds.

@brennanjl
Copy link
Collaborator

Hi team,

We are still running a few days behind. We have hit some last minute bugs, and are ironing them out before we get your team's hands on it. We will keep you closely updated with our progress as we fix these.

@markholdex
Copy link
Collaborator

Hey @brennanjl,

Thanks for keeping us updated. Looking forward!

@brennanjl
Copy link
Collaborator

Hi team,

We should have things ready to be used on Tuesday. Thank you for your patience.

@brennanjl

This comment has been minimized.

@markholdex
Copy link
Collaborator

@brennanjl hope you don't mind. I moved your message into a Google Doc in the description of this goal. It's easier for us to follow-up with specific questions there. I'll hide your message from this feed for now.

@zolotokrylin

This comment has been minimized.

@markholdex

This comment has been minimized.

@zolotokrylin
Copy link
Contributor

@markholdex if you will be talking to Stefan, please raise the issue that we need more resources to get this Goal achieved ASAP. Otherwise, we will never start working on it because we will always have more urgent things.

@rsoury
Copy link

rsoury commented Feb 25, 2025

Added to the Spec. Outlines a plan to upgrade in parallel to current work.

Looping in @Jarryd-pretorius re #673 (comment)

TL;DR - This is becoming increasingly more important.
Delays are surfacing in #673 (comment)

@zolotokrylin
Copy link
Contributor

Yes, we need to upgrade ASAP.

@outerlook

This comment has been minimized.

@brennanjl

This comment has been minimized.

@outerlook
Copy link
Contributor Author

outerlook commented Feb 25, 2025

if I get some authorization, I can immediately work on creating a fork where our two nodes work in isolation from other operators, to have a quicker response time to our business requirements until we deploy the next architecture. The alternative is to continue as is waiting for operators to fix
@rsoury @markholdex

@markholdex
Copy link
Collaborator

markholdex commented Feb 25, 2025

@outerlook check my comments in the specs. I might have answered you.

@outerlook @MicBun let's cleanup the specs into a clear plan and begin the work.

@outerlook
Copy link
Contributor Author

added some issue statements to the description to tackle the goal. Also edited the specs document for better organization

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

No branches or pull requests

6 participants