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: enable multi frame txs and frame size setting for calldata txs #439

Conversation

emilianobonassi
Copy link

No description provided.

@mergify mergify bot added the A-op-batcher label May 10, 2024
Copy link
Collaborator

@tuxcanfly tuxcanfly left a comment

Choose a reason for hiding this comment

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

Seems like currently even if MultiFrameTxs is enabled we still serialise txdata.CallData() into a single blob transaction.

Something like this change will be required to submit multiple blobs:

for i, frame := range txdata.frames {
	var data []byte
	if i == 0 {
		data = append([]byte{derive.DerivationVersion0}, frame.data...)
	} else {
		data = frame.data
	}
	candidate, err = l.calldataTxCandidate(data)
	if err != nil {
		l.recordFailedTx(txdata.ID(), err)
		return nil
	}
}

op-batcher/batcher/service.go Show resolved Hide resolved
op-batcher/batcher/service.go Show resolved Hide resolved
op-batcher/flags/flags.go Show resolved Hide resolved
Copy link
Collaborator

@tuxcanfly tuxcanfly left a comment

Choose a reason for hiding this comment

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

OK. To address previous comment, we are serialising multiple frames into one big blob to be submitted to DA.

Note that this will prevent eth fallback as the serialised blob might be too big for L1. Will note this in the docs.

@tuxcanfly tuxcanfly merged commit 406ccf9 into celestiaorg:release-1.2.0@op-node/v1.7.5 May 21, 2024
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants