Activity - tsachi - Algorand

Algorand Catchpoints

Admittedly, there is a way to catch up from an archival node. But you’ll need to do some tweaking:

Documentation on State Proofs

No, it’s not enabled yet on betanet. Betanet is supposed to be one step before testnet/mainnet, but enabling the feature there implies that the pipeline ( master - betanet - mainnet ) would be blocked until mainnet reaches the desired participation key update threshold.

Limit of 10 Applications per account will change?

That was already implemented and it’s currently scheduled for the next release. It would likely to hit mainnet within a month.

Betanet with catchup

Could you please check what binary version you’re using, as well as operating system?

Archival Node Configuration - Behaviour of algod REST API

Once you switch the configuration from archival into non-archival, the node would delete the old information on the subsequent restart. The archival/non-archival doesn’t directly change the way the REST API works. The REST API would give you the information that the ledger currently maintains.

For security reason, it should not be possible to sign a transaction in a group individually

Yes, I agree that the signing software should give the end user to view all the transactions. In fact, it should highlight any request for signing of a transaction that contains the grouphash without showing and verifying the entire group.

Private network - node accessible from another VM within network or remotely?

Changing the EndpointAddress should make your node listen on the provided address. Please make sure to restart the node after making changes to the config.json file.

What is the database used to write the ledger records?

The Algorand node (algod) is using SQLite for its internal store. Separately from that, the indexer, a completely independent process, knows how to communicate with the Algorand node (algod) over REST API, query the block, and store its content to a Postgres database.

Why run a node?

As long as you don’t interact with the network frequently, no - there are no gains for running a node. However, if you send lots of transactions, and you want to make sure that your transactions get the highest priority getting onto the network, running your own node would do that.

‘goal asset create’ command doesn’t allow you to specify addresses?

Hi, this is a current limitation of the goal utility. I believe that you’re correct - the default for all the above 4 is the creator address, and unfortunately, it’s not configurable.

Question about note fields in AssetTxns

To add to what @cusma wrote, the LatestTimestamp is the timestamp that is taken from the previous block header (i.e., that last block that was agreed upon). It’s the proposer who sets this value; this value has two limitations: it must be monotonic growing, and it must be at most 25s greater than the previous.

Question on Accounts and nodes

No. There is no way to track the source of the transaction, unless the originating node was placing some type of tracking information within the transaction itself.

Can’t build node from source

I have heard about that issue before, and it’s unique to M1 Macs. The boost package for brew doesn’t add the symlink which is required for gcc to find the header (unlike the x86 darwin package).

Node sync time keeps increasing - ver 3.2.1

The above issue was addressed in

Is it possible to store private data on the blockchain?

With the exception of data storage blockchains (such as IPFS), I would not encourage you to store your data on-chain. Instead, use the blockchain to do what it was meant to do - proofs & synchronization. Store the hash of the data along with a URL for the actual data on-chain.

Indexer AddBlock() error

This is expected if you upgraded to indexer 2.7.1. The suggested workaround is to downgrade to 2.6.3, which supports the latest AVM 1.0 release.

Participation node catchpoint failing midway

The DNS logs are not an issue. The "proof" for that is that it was downloading the catchpoint file, which means that it was able to find a relay to download these from. The accounts writing speed should be (roughly) constant. If it stops it means that something happened.

What causes Transaction Pool Error?

All transactions need to be unique to be included in the blockchain. You can add a monotonic growing counter and store it in the notes field in order to do that.

Transaction note size

The Algorand blockchain was not meant for storing large amounts of data. It’s oriented toward supporting high transactional throughput. In order to achieve that, some tradeoffs have been made.

How to modify Algorand consensus protocol parameters

For running local private networks, you can create a file named consensus.json which would override the default parameters in consensus.go. Please be warned that some permutations of these parameters could place your network in the "untested" territory.

Gossip protocol, and transactions delays

@rhern336, I think that I understand what you’re asking… you’re trying to track the propagation of the transaction across the network, and compare it with a plain direct message exchange. However, Algorand doesn’t support that right now, and I don’t expect to have this type of feature in the future.

Fast catchup not synchronizing

Hi @liva, during the processing of the accounts, the primary function of the node is to decompress the incoming catchpoint file data stream and expand the individual accounts to disk.

Node has been running for 2 days

The issue was already addressed on master, and was deployed yesterday to betanet. I don’t have any particular date, but would expect it to reach mainnet shortly unless some regression would be found while it’s on betanet.

Block Consensus Protocol

@algorandy, it looks as if you’re running an older binary that doesn’t support the network’s current consensus protocol. Please update your installation and the issue will go away.

A question about reward calculation

@aybehrouz, non-participating accounts are excluded from receiving rewards. When calculating the rewards, the total rewards unit excludes the non-participating accounts.

Generate Participation Key getting error txn validity period is greater than protocol max txn lifetime 1000

In the latter, the first valid and last valid refer to the transaction validity period rather than the intended participation key validity period.

Fast Catchup not working for our node on MainNet

According to your previous status, it looks like you were able to download more than 600 out of 1000 of the blocks. Why don’t you quadruple the number of failure attempts and try again? No need to delete the data directory.

Broadcast Txn failed

@algoking, the reminder balance in the account needs to meet the minimum account balance (100000) at all times.

What are catchpoints?

The documentation for that will be released by next week.

1000 Rounds of Consensus

@TheMattRay, when you create a new part key, you typically make it for 3 million rounds. The first valid / last valid as far as I understand applies to the transaction which registers this particular part key.

Need a little ALGO for testing my wallet

Yes, you can use the same address for both mainnet and testnet. The testnet dispenser can be found on this link https://developer.algorand.org/docs/reference/algorand-networks/testnet/#faucet

Creating a private network of Raspberry Pi Nodes

@anupcoded, when running a private network on a single device, you traditionally use the “goal network XXX” commands.

Algorand Standard Assets uniqueness

Both asset name as well as unit name are “user interface artifacts”. It might be tempting to make them unique.

Consensus protocol node statistics

@cusma, the node.log is created with the user account that is used to invoke algod. In your case, it looks like that user is pi; try to use that user to access the file.

What is a round used in transaction object while sending a transaction object to sign?

Round number is the block number. Blocks start from zero and increment by 1. When generating a transaction, you can control which rounds would be able to accept it.