Skip to content

Commit d04daaf

Browse files
committed
refactor: Rename optimize() -> minimize_tx_size()
1 parent 044c9cf commit d04daaf

File tree

4 files changed

+10
-8
lines changed

4 files changed

+10
-8
lines changed

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ impl BaseTask for ArgsTask {
8989
}
9090
}
9191

92-
fn optimize(
92+
fn minimize_tx_size(
9393
self: Box<Self>,
9494
) -> Result<Box<dyn BaseTask>, Box<dyn BaseTask>> {
9595
match self.task_type {

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ impl BaseTask for BufferTask {
7070
}
7171

7272
/// No further optimizations
73-
fn optimize(
73+
fn minimize_tx_size(
7474
self: Box<Self>,
7575
) -> Result<Box<dyn BaseTask>, Box<dyn BaseTask>> {
7676
// Since the buffer in BufferTask doesn't contribute to the size of

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

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -75,8 +75,9 @@ pub trait BaseTask: Send + Sync + DynClone + LabelValue {
7575
/// Gets instruction for task execution
7676
fn instruction(&self, validator: &Pubkey) -> Instruction;
7777

78-
/// Optimizes Task strategy if possible, otherwise returns itself
79-
fn optimize(
78+
/// Optimize for transaction size so that more instructions can be buddled together in a single
79+
/// transaction. Return Ok(new_tx_optimized_task), else Err(self) if task cannot be optimized.
80+
fn minimize_tx_size(
8081
self: Box<Self>,
8182
) -> Result<Box<dyn BaseTask>, Box<dyn BaseTask>>;
8283

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

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,8 @@ impl TaskStrategist {
171171
persistor: &Option<P>,
172172
) -> TaskStrategistResult<TransactionStrategy> {
173173
// Attempt optimizing tasks themselves(using buffers)
174-
if Self::optimize_strategy(&mut tasks)? <= MAX_ENCODED_TRANSACTION_SIZE
174+
if Self::minimize_tx_size_if_needed(&mut tasks)?
175+
<= MAX_ENCODED_TRANSACTION_SIZE
175176
{
176177
// Persist tasks strategy
177178
if let Some(persistor) = persistor {
@@ -270,7 +271,7 @@ impl TaskStrategist {
270271

271272
/// Optimizes set of [`TaskDeliveryStrategy`] to fit [`MAX_ENCODED_TRANSACTION_SIZE`]
272273
/// Returns size of tx after optimizations
273-
fn optimize_strategy(
274+
fn minimize_tx_size_if_needed(
274275
tasks: &mut [Box<dyn BaseTask>],
275276
) -> Result<usize, SignerError> {
276277
// Get initial transaction size
@@ -325,7 +326,7 @@ impl TaskStrategist {
325326
let tmp_task = Box::new(tmp_task) as Box<dyn BaseTask>;
326327
std::mem::replace(&mut tasks[index], tmp_task)
327328
};
328-
match task.optimize() {
329+
match task.minimize_tx_size() {
329330
// If we can decrease:
330331
// 1. Calculate new tx size & ix size
331332
// 2. Insert item's data back in the heap
@@ -619,7 +620,7 @@ mod tests {
619620
as Box<dyn BaseTask>, // Larger task
620621
];
621622

622-
let _ = TaskStrategist::optimize_strategy(&mut tasks);
623+
let _ = TaskStrategist::minimize_tx_size_if_needed(&mut tasks);
623624
// The larger task should have been optimized first
624625
assert!(matches!(tasks[0].strategy(), TaskStrategy::Args));
625626
assert!(matches!(tasks[1].strategy(), TaskStrategy::Buffer));

0 commit comments

Comments
 (0)