Skip to content

Commit

Permalink
fix: reverted indirect_incoming fk stuff
Browse files Browse the repository at this point in the history
  • Loading branch information
ohager committed Jan 3, 2024
1 parent 38fc788 commit 3ac81f3
Show file tree
Hide file tree
Showing 6 changed files with 32 additions and 46 deletions.
2 changes: 1 addition & 1 deletion openapi/signum-api.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"openapi": "3.0.3",
"info": {
"title": "Signum Node API",
"version": "3.7.2",
"version": "3.8.0",
"description": "This is the API documentation of the Signum Node"
},
"paths": {
Expand Down
50 changes: 24 additions & 26 deletions resources/db/migration_postgres/V1__initial_model.sql
Original file line number Diff line number Diff line change
Expand Up @@ -655,32 +655,6 @@ create table if not exists transaction
cash_back_id bigint default '0'::bigint
);

create table if not exists indirect_incoming
(
db_id bigserial
constraint idx_16538_primary
primary key,
account_id bigint not null,
transaction_id bigint not null
constraint indirect_incoming_ibfk_1
references transaction (id) on delete cascade,
height bigint not null,
amount bigint default '0'::bigint,
quantity bigint default '0'::bigint
);

create index if not exists idx_16538_indirect_incoming_id_index
on indirect_incoming (account_id);

create index if not exists idx_16538_indirect_incoming_height_idx
on indirect_incoming (height);

create unique index if not exists idx_16538_indirect_incoming_db_id_uindex
on indirect_incoming (account_id, transaction_id);

create index if not exists idx_16538_indirect_incoming_tx_idx
on indirect_incoming (transaction_id);

create index if not exists idx_16601_transaction_recipient_id_idx
on transaction (recipient_id);

Expand Down Expand Up @@ -720,6 +694,30 @@ create index if not exists idx_16601_transaction_recipient_id_amount_height_idx
create index if not exists idx_16601_transaction_sender_id_idx
on transaction (sender_id);

create table if not exists indirect_incoming
(
db_id bigserial
constraint idx_16538_primary
primary key,
account_id bigint not null,
transaction_id bigint not null,
height bigint not null,
amount bigint default '0'::bigint,
quantity bigint default '0'::bigint
);

create index if not exists idx_16538_indirect_incoming_id_index
on indirect_incoming (account_id);

create index if not exists idx_16538_indirect_incoming_height_idx
on indirect_incoming (height);

create unique index if not exists idx_16538_indirect_incoming_db_id_uindex
on indirect_incoming (account_id, transaction_id);

create index if not exists idx_16538_indirect_incoming_tx_idx
on indirect_incoming (transaction_id);

create table if not exists unconfirmed_transaction
(
db_id bigserial
Expand Down
5 changes: 1 addition & 4 deletions src/brs/BlockchainProcessorImpl.java
Original file line number Diff line number Diff line change
Expand Up @@ -1017,6 +1017,7 @@ private void pushBlock(final Block block) throws BlockNotAcceptedException {
calculatedTotalAmount += transaction.getAmountNQT();
calculatedTotalFee += transaction.getFeeNQT();
digest.update(transaction.getBytes());
indirectIncomingService.processTransaction(transaction);
feeArray[slotIdx] = transaction.getFeeNQT();
slotIdx += 1;
}
Expand Down Expand Up @@ -1048,10 +1049,6 @@ private void pushBlock(final Block block) throws BlockNotAcceptedException {
transactionProcessor.requeueAllUnconfirmedTransactions();
accountService.flushAccountTable();
addBlock(block);
if(indirectIncomingService.isEnabled()){
transactions.forEach(indirectIncomingService::processTransaction);
}

accept(block, remainingAmount, remainingFee);
derivedTableManager.getDerivedTables().forEach(DerivedTable::finish);
stores.commitTransaction();
Expand Down
14 changes: 6 additions & 8 deletions src/brs/db/sql/Db.java
Original file line number Diff line number Diff line change
Expand Up @@ -330,21 +330,19 @@ public static void optimizeTable(String tableName) {

private static String getDatabaseVersion() {
DSLContext ctx = getDSLContext();
ResultQuery queryVersion = null;
ResultQuery queryVersion;
String version = "N/A";
try {
if (ctx.dialect() == SQLDialect.H2) {
queryVersion = ctx.resultQuery("SELECT H2VERSION()");
} else {
queryVersion = ctx.resultQuery("SELECT VERSION()");
}
if (queryVersion != null) {
Record record = queryVersion.fetchOne();
if (record != null) {
version = record.get(0, String.class);
if(ctx.dialect() == SQLDialect.POSTGRES){
version += " (EXPERIMENTAL)";
}
Record record = queryVersion.fetchOne();
if (record != null) {
version = record.get(0, String.class);
if (ctx.dialect() == SQLDialect.POSTGRES) {
version += " (EXPERIMENTAL)";
}
}
} catch (Exception e) {
Expand Down
2 changes: 0 additions & 2 deletions src/brs/services/IndirectIncomingService.java
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,4 @@ public interface IndirectIncomingService {
void processTransaction(Transaction transaction);
boolean isIndirectlyReceiving(Transaction transaction, long accountId);
public void rollback(int height);

boolean isEnabled();
}
5 changes: 0 additions & 5 deletions src/brs/services/impl/IndirectIncomingServiceImpl.java
Original file line number Diff line number Diff line change
Expand Up @@ -47,9 +47,4 @@ public void rollback(int height) {
if (disabled) return;
indirectIncomingStore.rollback(height);
}

@Override
public boolean isEnabled() {
return !disabled;
}
}

0 comments on commit 3ac81f3

Please sign in to comment.