fix: change the build from path in the release action#16
Conversation
… HypertableParams struct for better configuration management, including OrderBy and SegmentBy options.
…all of the data in RAM and processing it at once.
…w addresses for each chunk. Which has some pros and cons...
- Fixed the average block time db query to to use order by. - Some minor adjustment for the database schema.
- Updated various API handlers and database methods to use `date.Date` instead of `time.Time`. - Adjusted related types and query parameters to ensure compatibility with the new date structure.
Remove hardcoded v1 prefix from individual route registrations and implement proper route grouping using huma.NewGroup(). Also fix BlockCount24h response structure to return a proper JSON object with a 'count' field instead of a raw integer.
- Updated various API handlers and database methods to accept a `SortOrder` parameter for ordering results. - Modified relevant types and query structures to ensure consistent sorting across transactions, addresses, and block counts. - Adjusted input types in Huma types to include `SortOrder` for relevant endpoints.
- Add endpoint to get whole validator list. - Adjust the total tx count 24h endpoint to return a proper json body. - Adjust some queries to use Sprintf in database queires.
to the end of day.
query. So now every daily query will return 0 if this is the case.
- Replaced `valkey-glide` with `valkey-go`. - Updated the `ValkeyClient` to use the new `valkey-go` client configuration and methods. - Modified the GitHub Actions workflow to remove unnecessary CGO flags for ARM64 builds.
- Updated base image in Dockerfiles from golang:1.25 to golang:1.26. - Updated Go version in go.mod and GitHub Actions workflows to 1.26.1. - Modified build flags in Makefile to include additional optimizations. - Removed the experimental flag as the greentea gc is used in go version 1.26.
- Bumped versions for several dependencies including `huma`, `gno`, `pgx`, `compress`, and `zerolog`. - Updated OpenTelemetry packages to the latest versions.
… it added TTL of couple thousand years...
- Updated `GetAddressTxs` and `GetTransactionsByCursor` methods to use new cursor height|tx_hash instead of timestamp|tx_hash. - The `GetAddressTxs` and `GetTransactionsByCursor` now returns cursor for next and previous cursor queires. - `GetAddressTxs` doesn't have pagination anymore. - Modified database queries to accommodate new pagination logic. - The `GetAddressTxs` now also gathers the data about transaction block height. - Any block query now also returns the proposer of that block.
- Database and other server errors are marked as generic 5xx error and error is loged on the API server. - Improved error messages for clarity and consistency across handlers.
…ecuted. - Updated transaction processing methods to include success status and error logs. - Added new methods to retrieve transaction success and error details. - Modified database queries and types to accommodate success and error log fields.
- Simplified the Makefile by consolidating build targets and removing redundant entries. - Introduced a new `build-dev` target for development builds with specific flags. - Updated the build commands for `build-indexer` and `build-api` to use variables for flags. - Adjusted import path in `indexer.go` for consistency. - Added pprof for debugging in `operator.go` and initiated debug mode in live and historic processing.
- The api now has examples for each key command. - The cli now expects proper arguments for the commands instead of relying on flags.
… table. - Add a primary key on address_tx table to limit the chance to have duplicates. - Change the `createAddressTx` to use map to track if the address was already tracked.
- There is a possibility that block_count would return wrong values and would never count how many blocks were produced in those 24 hours.
- Add new database function that queries all block signings in the last 24 hours. - Add new route `v1/validators/signing/24h`.
- On the new databases the indexer would make query to the database. Since there were no entries it would return error. Error was then just logged which allows any sort of bug to go through. Now it should return 0 and if there is an error it will shut down the program.
- The client can have more idle connections and can has wider timeout.
- The error `protocol error: received DATA after END_STREAM` shouldn't show up anymore.
- The config can now store user_agent which can be used to "mark" the indexer when it queries the RPC. - Adjusted tests for config loader.
- In the future if someone does intend to fork the project and use different database that is fine. For now the codebase has been mostly moved from /pkgs/database/timescaledb . The code it self still relies on strictly using timescaledb.
- Update the docs with the data new API routes.
This change should provide a way to partially enforce cleaner commits.
The test assumes there are transactions in the response. Since it is just mock of the query operator it returned an empty struct. For not it will return a nil and the test will skip it over.
The data processor would append erorrs to an array it receives but it would never send it back due to sending a copy to the function. The orchestrator when launching goroutines to process message will print the error.
Trimmed the unnecessary duplication of the code on the API queries.
In the old query there was a possibilaty to not be able to execute in some unusual conditions. If the indexer wasn't given enough time to process the data, or the indexer ran in historic mode and it processed less than 10K it will retun an error. For now this query will retun a true avarage from the genesis or first entered height up to the latest block height. In the future releases this query will be modified to accept a block window.
Fix aggGroupBy to pre-allocate by max gb index and assign directly rather than using slices.Insert, which was shifting elements and leaving empty strings in the result. Also correct TxHashId.TxHash primary tag value from "primary" to "false", and MsgMultiSend.Coins dbtype from "amount" to "amount[]".
Fix inverted condition in CreateDatabase that returned nil on unexpected errors. Filter GetAllValidators by chain_name and add missing rows.Close() defer. Cast id to int4 in GetTotalAddressesCount to match return type. Use coalesce in GetTotalTxCount to return 0 instead of null on empty result. Extend generate_series end bound in GetVolumeByHour to include the final hour. Add missing rows.Err() check in GetAllValidatorSigning24h.
Fix GenerateCreateTableSQL so DEFAULT is applied independently of nullable/not-null — previously the else-if chain silently dropped DEFAULT on non-primary columns. Refactor string concatenation in GenerateContinuousAggregateSQL to use separate WriteString calls.
Replace bare http.ListenAndServe in InitDebug with an http.Server that shuts down cleanly on context cancellation. Remove build from .PHONY in Makefile. Fix comment markers in config.yml.example from // to #.
Extract InMemoryHandler.refresh() to deduplicate init and ticker logic; on error keep the previously-held value instead of zeroing it. Fix GetVolumeByDate date range check which was computing StartDate.Sub(EndDate) instead of EndDate.Sub(StartDate), making the 30-day guard always pass. Call inMemoryHandler.Stop() on server startup failure so the background goroutine does not leak.
|
Warning Review limit reached
More reviews will be available in 56 minutes and 37 seconds. Learn how PR review limits work. Your organization has used up its prepaid credits, and credit purchases are no longer available. Enable the review add-on in the billing tab to keep reviews running — you're only billed for reviews past your plan's rate limits ($0.25/file). ⌛ How to resolve this issue?After more reviews become available, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans include higher PR review limits than trial, open-source, and free plans. In all cases, reviews become available again over time. During sustained high-volume PR review activity, CodeRabbit may temporarily slow when the next review becomes available. Please see our Fair Usage Limits Policy for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (1)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|



No description provided.