carp
carp copied to clipboard
A modular indexer for Cardano with an SQL Postgres backend (an alternative to the well known cardano-db-sync)
Hello, First of all, congratulations on the amazing initiative. This is a much-needed project. I have noticed that there are not too many columns in the default-generated setup (if I...
Right now Carp uses Oura to fetch the block cbor. However, there is no reason that things should be hard-coded to Oura. You could use any tool that gets you...
Right now the EP folder is git ignored. I don't think this is necessarily bad since it stops everybody from accidentally commiting custom Execution Plans. However, what this means it's...
One problem with the Carp webserver is that it has no way to know if the user really ran the task required to index the data needed for a specific...
Currently the codebase assumes you're connecting to a local node. If you're connecting to a remote node (TCP connection,) you can change the `BearerKind` to TCP in the code. It's...
If you have file missings, the errors are really generic and don't help much figuring out which files was missing. This seems like an open issue with Rust itself. Until...
To avoid subtle breaking changes, tasks should each get a semver. We can make an EP error or warn if the task version in the EP doesn't match the task...
There are two ways to get stable pagination: 1. Provide a start value and an ending block. This is because if the state of the blockchain changes, the ending block...
Currently each executor (byron_executor, multiera_executor, genesis_executor) contain mostly the same code. We should be able to deduplicate a lot of this
When we launch, we try and find the intersection between Carp and the cardano-node to start syncing. Notably, this is done with the function `get_latest_points`. Currently, we only use an...