* Handle template create events processing order during reorgs
* Add removeWatcher method in graph-node dummy indexer for test
* Apply GQL and RPC server middlewares ordered on requested paths
* Increment package version
* Remove console logs
---------
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
* Add ETH RPC API to watcher server
* Add eth_call API handler
* Add error handling to eth_call handler
* Parse block tag in eth_call handler
* Add a flag to enable ETH RPC server
* Fix lint errors
* Update block tag parsing
* Support processing events in multiple subgraph datasources for a single contract address
* Fix parsing event topic in graph-node watcher
* Update codegen templates
* Fix dummy indexer method in graph-node test
* Upgrade package versions to 0.2.102
* Fill watcher start block only in active mode
* Fix sync status update in historical processing
* Upgrade package versions
* Upgrade package versions in codegen template
* Fix graph-node test indexer
* Use topic hash of events from config file
* Add eventSignaturesMap field in IndexerInterface
* Add eventSignaturesMap property in Indexer class
---------
Co-authored-by: neeraj <neeraj.rtly@gmail.com>
* Throw error in job-runner events processing queue for retry
* Restart block processing after completion of retried events queue job
* Check events queue size in retry state from active historical processing job
* Clear watched contracts from memory map on reset
* Update sync status with zero hash during historical processing
* Update codegen for changes
* Add clearProcessedBlockData in graph-node test dummy indexer
* Set gzip true in ethersjs provider
* Add timer logs and use StaticJsonRpcProvider
* Fetch block data in historical processing and cache in map
* Fetch txs required for event logs in historical processing
* Process events with prefetched block and txs data in realtime processing
* Clear old TODOs
* Reset to latest processed block on restarting job-runner
* Update sync status during historical processing in job-runner
* Codegen changes
* Use sync status latest processed block for subgraph _meta GQL query
* Set job per interval for subscribing events queue to 1
* Fix events processing skipped for blocks after template create
* Add a method to get meta data for watcher indexing status
* Add a flag indicating indexing error to sync status
* Codegen changes
* Clear indexing error on job-runner startup
* Fix lint errors
* Handle subgraph template create when filterLogsByAddresses set to true
* Fix historical processing stopping after running for multiple batches
* Add new method in graph-node test dummy indexer
* Fix async block size caching for missing blocks in historical processing
* Start historical block processing only if filter logs is set to true
* Fetch filtered logs by topics and save required blocks
* Fix realtime processing start block after historical processing
* Avoid publishing events and blocks in historical processing
* Add new method to graph-node test indexer
* Get full block data for subgraph block handler only if configured
* Add useBlockRanges flag for switching between historical and realtime processing
* Add TODOs for historical blocks processing
* Add new job for historical blocks processing
* Handle historical job completion
* Fetch latest block in chain and start historical block processing
* Fix starting realtime block processing from latest canonical block
* Refactor historical block processing method and add logs
* Add dummy indexer methods in graph-node to pass test
* Changes in codegen for historical processing in generated watcher
* Support fetching logs for a block range in rpc-eth-client
* Add a method to fetch block events for multiple blocks at once
* Add a method to save blocks with fetched events in a block range
* Fix transactions destructuring
* Fix get logs call args
* Add a separate ETH client method to get logs in a block range
* Codegen changes
* Refactor fill CLI to cli package
* Refactor method to fill-state to graph-node
* Refactor fill-state CLI to cli package
* Move subgraph state utils to a separate file
* Refactor subgraph state helper methods to graph-node
* Update mock indexer
* Move watcher job-runner to util
* Remove mock server and data from erc20-watcher
* Import watcher job-runner from util
* Refactor watch-contract CLI to cli package
* Use watch-contract from cli in eden and erc721 watchers
* Use watch-contract from cli in all watchers
* Pass an object containing clients to refactored CLI
Co-authored-by: nabarun <nabarun@deepstacksoft.com>
* Add flag to load relations sequentially or concurrently
* Fix database init in graph-node test
* Fix graph-node watcher query method and add changes to codegen
* Reset watcher to previous indexed block before start
* Implement changes in other watchers
* Save successfully fetched blocks and events to prefetch cache
* Add unique query for transaction table
* Check db for blocks before fetching from eth-server
* Show all mismatches at a block
Co-authored-by: prathamesh0 <prathamesh.musale0@gmail.com>
* Avoid refetching block while fetching events
* Prefetch a batch of blocks with events while indexing
* Update mock indexer used in graph-node testing
* Process available blocks while prefetching
* Refactor events fetching to a method in util
* Move method to get GQL event query result to util
* Remove support for pushing state to IPFS
* Move job handlers for state creation to util
* Rename state creation related methods and objects
* Update mock indexer used in graph-node testing
* Fetch and merge diffs in batches while creating a state checkpoint
* Fix timing logs while for state checkpoint creation
* Refactor method to get state query result to util
* Accept contracts for state verification in compare CLI config
* Make method to update state status map synchronous
* Clear cache of latest entities on event processing error
* Remove lighthouse-watcher and update ethersjs version
* Handle GraphDecimal type in state entity
* Add option for comparing all entities using paginate
* Clear pruned cached entities at intervals
* Move ipld-demo to graph-node package and remove reset-dbs script
* Implement changes in all watchers and codegen
* Changes to use util from uniswap-watcher
* Refactor ResultIPLDBlock to util
* Verify state in compare CLI for uniswap multiple queries
* Prepare watcher-ts for publishing packages
* Fix verify state in compare CLI for multiple entities query
* Fix codegen util imports
* Add a CLI to fill state for a given range
* Refactor code
* Add a CLI to reset IPLD state
* Replace ORDER BY clause in the query to get latest IPLD block
* Optimize delete query in CLI to reset IPLD state
* Add an option to decouple subgraph state creation from mapping code
* Use a raw SQL query to delete IPLD blocks in a block range
* Accomodate changes in codegen
* Implement storage call in subgraph mapping code
* Add test for mapping type variable storage call
* Use vulcanize graph-ts
* Revert to graph-ts version 0.22.1
* Update codegen with index-block CLI and remove graph-node
* Add filter logs by contract flag
* Skip generating GQL API for immutable variables
* Add config for maxEventsBlockRange
* Add new flags in existing watchers
* Test case for wasm out of memory error
* Restart wasm instance after N blocks
* Handle out of memory error and re instantiate WASM
* Remove old instance from map before reinstantiating WASM