Skip to content
Permalink

Comparing changes

This is a direct comparison between two commits made in this repository or its related repositories. View the default comparison for this range or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: rpcpool/digital-asset-rpc-infrastructure
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 448479e5a63002ef99c30c357b13e886fc472da1
Choose a base ref
..
head repository: rpcpool/digital-asset-rpc-infrastructure
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: c311b1124d55d127ee9154418163238d9192ccf5
Choose a head ref
Showing with 15 additions and 11 deletions.
  1. +11 −3 digital_asset_types/src/dao/scopes/asset.rs
  2. +4 −8 nft_ingester/src/program_transformers/bubblegum/db.rs
14 changes: 11 additions & 3 deletions digital_asset_types/src/dao/scopes/asset.rs
Original file line number Diff line number Diff line change
@@ -414,7 +414,8 @@ pub async fn get_signatures_for_asset(
) -> Result<Vec<(String, Option<String>)>, DbErr> {
// if tree_id and leaf_idx are provided, use them directly to fetch transactions
if let (Some(tree_id), Some(leaf_idx)) = (tree_id, leaf_idx) {
let transactions = fetch_transactions(conn, tree_id, leaf_idx, sort_direction, pagination, limit).await?;
let transactions =
fetch_transactions(conn, tree_id, leaf_idx, sort_direction, pagination, limit).await?;
return Ok(transactions);
}

@@ -442,7 +443,8 @@ pub async fn get_signatures_for_asset(
let leaf_id = asset
.nonce
.ok_or(DbErr::RecordNotFound("Leaf ID does not exist".to_string()))?;
let transactions = fetch_transactions(conn, tree, leaf_id, sort_direction, pagination, limit).await?;
let transactions =
fetch_transactions(conn, tree, leaf_id, sort_direction, pagination, limit).await?;
Ok(transactions)
} else {
Ok(Vec::new())
@@ -461,7 +463,13 @@ pub async fn fetch_transactions(
stmt = stmt.filter(cl_audits::Column::LeafIdx.eq(leaf_id));
stmt = stmt.order_by(cl_audits::Column::CreatedAt, sea_orm::Order::Desc);

stmt = paginate(pagination, limit, stmt, sort_direction, cl_audits::Column::Id);
stmt = paginate(
pagination,
limit,
stmt,
sort_direction,
cl_audits::Column::Id,
);
let transactions = stmt.all(conn).await?;
let transaction_list: Vec<(String, Option<String>)> = transactions
.into_iter()
12 changes: 4 additions & 8 deletions nft_ingester/src/program_transformers/bubblegum/db.rs
Original file line number Diff line number Diff line change
@@ -2,7 +2,7 @@ use crate::error::IngesterError;
use digital_asset_types::dao::{
asset, asset_creators, asset_grouping, cl_audits, cl_items, tree_transactions,
};
use log::{debug, info, error};
use log::{debug, error, info};
use mpl_bubblegum::types::Collection;
use sea_orm::{
query::*, sea_query::OnConflict, ActiveValue::Set, ColumnTrait, DbBackend, EntityTrait,
@@ -133,13 +133,9 @@ where
..Default::default()
};

let audit_item: Option<cl_audits::ActiveModel> = if cl_audits {
let mut ai: cl_audits::ActiveModel = item.clone().into();
ai.tx = Set(txn_id.to_string());
Some(ai)
} else {
None
};
let mut audit_item: cl_audits::ActiveModel = item.clone().into();
audit_item.tx = Set(txn_id.to_string());
audit_item.instruction = Set(Some(instruction.to_string()));

i += 1;
let mut query = cl_items::Entity::insert(item)