Indexing rewards should be withdrawable to a separate address

From what i understand, this was always the intent on how things would work for Indexers, but just didn’t come to be (yet).

As i’ve said before, i see the inability to “cash-out” to cover operational expenses as a huge threat to smaller Indexer operations, and thus our decentralization. Many of these operations are already in the hole for approximately ~7 months of infrastructure costs (+ their time being uncompensated) when considering their prior participation in the Mission Control testnet.

Would love to see this changed ASAP.

3 Likes

Hi Brandon and Others,

I’m not going to repeat what has been said so far but I think there is a general consensus that there should be way to allow indexer rewards to be withdraw-able without stopping indexing operations.

If I remember correctly, one of the reasons that was advanced prior to the main net launch was enabling testnet indexer to support their infrastructure via indexing rewards rather than waiting for the rewards at the end of the testnet. So it seems kind of counter-intuitive that the ability to do just that is lacking. I’m not sure why we are even discussing that to be honest. We should be debating the best solution to enable access out of several propositions but thank you for opening the debate anyway.

Regards,

3 Likes

As someone who rents expensive servers that cost about the same as renting an apartment, it would be quite nice to be able to pay the infra costs directly from the indexing rewards.

Since I have some reserves, it would be no problem for me to continue scaling and pay for it out of my own pocket. I can consider myself lucky in that respect!

However, for someone who can’t do that, I can imagine that it can be quite frustrating. I think many, including myself, have high expectations for the project and would be deeply unhappy to drop out because of financial problems that could be avoided when they have already come so far. In general, the approach should be to make it easy for as many people as possible to participate in such decentralized systems.

It would be beneficial for the graph to find a solution there quickly. Whether it should be the quick solution within two weeks, the premium solution in two months or both, should be evaluated and discussed as soon as short concepts are available and implementation time can be estimated.

I would love to see some fast progress here and would be happy to make my contribution as well! :slight_smile:

4 Likes

Hi all,

I absolutely agree that in order to keep indexer shops afloat it is necessary to unlock some rewards, including ones obtained in first months of mainnet. However, we shall find the balance between greed expressed as desire to flip and real financial flow required to assist indexers.
Thus, I propose to limit the withdrawals to some reasonable amount per month, say 10k$ (or 20-50k GRT to make it easier smart-contract-wise.) This would not only stimulate small indexers, but also prevent large seed investors, who already have millions GRT as rewards, from filling the market and dumping the price (they will certainly have the opportunity to do so later).
Some would argue that 10k$ per month is a big amount, with server costs hardly going above 5k$, but considering labour and time/funds invested during testnet I think that this is a fair amount.

Bests,
inflex

It shouldn’t be a matter of yes or no, but a matter of urgency to resolve this. This is not how the usual blockchain incentives work. Pre-sales, testnet incentives, those are investment phases where you put your own money at the table with high risk high reward potential, but mainnet operations need to be supported by liquid (or at least partially unbondable) protocol rewards. No discrimination low or high stakes either. Indexers put their stake allocation at the table, they shouldn’t be putting operational costs as well because this leads us back to investors-owned questionably decentralized blockchain network from which every project is trying to run away and where The Graph did so well with the incentivized testnet program. This is a step backwards in that regard but still might be without any repercussions, supported by a very lovely macro market situation and high belief in the project.

On the lighter note, there doesn’t seem to be a single opponent to resolving this issue in neither Graph team camp nor indexer community. The discussion has been open for two weeks on this forum and has stemmed from a previous discussion in the discord server with very clear consensus. There was no discussion actually, more like a one way stream of everyone’s thoughts. Hope to see a move soon and am ready to support testnet deployment.

Seeing how absurdly high gwei has remained last few days , i’d say it’s all the more important. My total ETH use outweighs my monthly server bills, and that’s with manually choosing relatively low gwei moments.

Yes, there is no debate as to if we are doing an upgrade that will allow for this. We will be doing this upgrade.

The question is when. You can see all the tasks we have to get done in the comment I made above. But essentially it boils done to doing the contract upgrades safely. The last thing we want to do is rush the upgrade and break the contracts.

Rest assured this is the top priority on the smart contract team right now. Here is our progress:

  • Write the smart contract upgrade - Draft version is done
  • Set up a robust upgrade procedure for safe upgrades - Not done
  • Get the testnet up and running to test the upgrade - 75% done
  • Test the upgrade for a few days, or maybe a week. Whatever is needed to build confidence - Not done
  • Send proposal to council & get it approved - Not done but will be very quick
  • Upgrade on mainnet
9 Likes

Hi @davekaj ,

Now that we have the testnet up and running, will you be issuing testnet GRT in tokenlock contracts similar to how we have been granted this on mainnet?

How is planning going for the robust upgrade procedure and how is review coming along of the drafted smart contract upgrade?

Hey,

Not 100% sure. We might just send GRT directly to peoples addresses rather than having token lock contracts. Or we might do a combination of both.

For the other two questions:

  • Planning for the upgrade procedure has not made any progress in the last two days
  • Waiting for my co-worker to come back from holiday next week to review

Thank you

2 Likes

Does this then affect only the testnet indexer token lock contracts or all token lock contracts? :thinking:

Excellent point. I think if the solution is intended only to allow testnet indexers to retrieve rewards then this needs to be carefully planned, and not a ‘general’ indexer solution otherwise we may have indexers with large vesting contracts withdrawing a lot of supply of GRT into the market.

How will this be restricted, if this is the intended outcome?

If you are just issuing GRT directly to testnet addresses to test this solution it sounds like it may be a general fix for all indexers @davekaj.

I think he meant for the testnet itself. :smiley:

Yeah, I get that. I’m just thinking that if the fix on testnet can be used by any indexer, wouldn’t the fix on mainnet be the same?

Ah yeah, that’s a good point.

That’s exactly what I brought up right above. I think there MUST be a limit for withdrawals.

I would not want to see a limit on withdrawals for testnet Indexers who are using the capacity of their tokenlock contracts for indexing with, but if there were no way to restrict the solution to only apply to testnet Indexers then a limit on extraction of rewards for large Indexers (ie. greater than the mission control rewards for an individual) is probably a good idea.

Remember that these rewards were intended to be available to Indexers and can be by going through the 28 day cooldown, this proposal is attempting to solve that issue of the forced downtime.

Irrespectively whether contract update would be for Test Indexers or for All Indexers there should not be 28 days cooldown. Rewards should be available for Indexer disposal right away.

There’s no way that will ever happen. The 28 days thawing period is there in order to provide enough time to slash you if you do something bad :slight_smile:

We are talking regarding Rewards not Indexer Own stake here, right. So, slashing could still be subtracted from Stake tokens then.

1 Like

Your rewards are considered part of the own stake. There’s no way to separate them. Plus, if you commit a big enough attack against the network, you’ll be slashed for 2.5% for every single contested attestation that is provided, not just once.

1 Like