Skip to content

Commit c0bde54

Browse files
snawazbmuddha
authored andcommitted
feat: use SetLoadedAccountsDataSizeLimit for tx containing DLP ix (#800)
1 parent 3ec34b4 commit c0bde54

3 files changed

Lines changed: 34 additions & 2 deletions

File tree

Cargo.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

magicblock-committor-service/src/tasks/args_task.rs

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -327,6 +327,38 @@ impl BaseTask for ArgsTask {
327327
}
328328
}
329329

330+
fn accounts_size_budget(&self) -> u32 {
331+
match &self.task_type {
332+
ArgsTaskType::Commit(task) => {
333+
commit_size_budget(AccountSizeClass::Dynamic(
334+
task.committed_account.account.data.len() as u32,
335+
))
336+
}
337+
ArgsTaskType::CommitDiff(task) => {
338+
commit_diff_size_budget(AccountSizeClass::Dynamic(
339+
task.committed_account.account.data.len() as u32,
340+
))
341+
}
342+
ArgsTaskType::BaseAction(task) => {
343+
// assume all other accounts are Small accounts.
344+
let other_accounts_budget =
345+
task.action.account_metas_per_program.len() as u32
346+
* AccountSizeClass::Small.size_budget();
347+
348+
call_handler_size_budget(
349+
AccountSizeClass::Medium,
350+
other_accounts_budget,
351+
)
352+
}
353+
ArgsTaskType::Undelegate(_) => {
354+
undelegate_size_budget(AccountSizeClass::Huge)
355+
}
356+
ArgsTaskType::Finalize(_) => {
357+
finalize_size_budget(AccountSizeClass::Huge)
358+
}
359+
}
360+
}
361+
330362
#[cfg(test)]
331363
fn strategy(&self) -> TaskStrategy {
332364
TaskStrategy::Args

test-integration/Cargo.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)