Open
Conversation
- Updated schema handling to use `Rc<str>` instead of `Rc<PgSchema>` for better memory efficiency. - Introduced `MultiContractEventIterator` to handle multiple event sources concurrently. - Modified table queries to include an owner field and adjusted related queries accordingly. - Improved error handling and logging during table initialization and event processing. - Cleaned up unused code and optimized imports across various modules. - Enhanced the `PgTable` struct to support new table creation and upgrades more effectively. - Updated tests and examples to reflect changes in event handling and schema management.
- Moved SQL-related functionality from `torii-common` to a new crate `torii-sql`. - Updated imports in various modules to reflect the new crate structure. - Removed the `db.rs` file from the `postgres` crate and refactored migration logic into `torii-sql`. - Introduced a new `DbConnection` trait for common database operations. - Implemented migration handling in `torii-sql` for both PostgreSQL and SQLite. - Updated Cargo.toml files to reflect the new dependencies and workspace structure. - Cleaned up unused code and dependencies across the affected crates.
- Added `SqliteBackend` struct and its implementation for `IntrospectBackend`. - Introduced `SqliteTable` and related error handling for table operations. - Created utility functions for generating SQL queries, including `create_table_query`. - Implemented JSON serialization for SQLite using `SqliteJsonSerializer`. - Added runtime support for handling introspection messages in SQLite. - Established a new module structure for SQLite backend, including processor, query, and table management. - Integrated metrics tracking for processed introspection envelopes. - Enhanced error handling and type conversions for database interactions.
- Changed the `Executable` trait to return a `BoxFuture` instead of using `async_trait`, improving performance and flexibility. - Introduced `FlexStr` and `FlexQuery` types to handle SQL strings and bind arguments more effectively. - Implemented SQLite migration functionality in the `AcquiredSchema` struct, including methods for managing migration tables and applying migrations. - Updated SQLite connection options and added utility functions for memory database detection. - Added custom types for SQLx integration, including encoding and decoding for `SqlFelt`. - Refactored dependencies in `Cargo.toml` files to streamline SQLx feature usage. - Removed unnecessary `Arc` wrapping for database connection pools in various services.
…ields; update related queries and data handling to accommodate new types. Add functionality to retrieve all extractor states for a given extractor type in EngineDb. Enhance EventExtractor to refresh dynamic contract states from the database. Enable Gzip compression for gRPC services and reflection endpoints in multiple examples and the main library.
…nhance table management and state persistence
- Introduced `DbPoolOptions` and `PoolConfig` for better database connection management. - Updated `DbPool` to support both PostgreSQL and SQLite connections. - Refactored `create_table`, `update_table`, and `insert_fields` methods to use the new connection structure. - Enhanced error handling and logging in database operations. - Updated event processing logic in the introspect example to utilize the new database connection methods. - Removed deprecated code and improved type safety with `DbType` enum. - Added tests to ensure compatibility with both PostgreSQL and SQLite backends.
…onnection handling
- Added `torii-sql` as a dependency in multiple Cargo.toml files. - Refactored database backend handling to use `DbType` and `DbUrl` enums for better clarity and type safety. - Updated various modules to accommodate the new database handling logic, including `EntitiesHistoricalSink`, `IntrospectQueryMaker`, and others. - Removed the `introspect_simple` example as it was deemed unnecessary. - Improved error handling and logging in database operations. - Adjusted SQL migration scripts for better compatibility with both Postgres and SQLite.
📊 Synthetic Benchmark ResultsComparing against baseline: 20260404T103542Z Performance Summary
Comparison with Baseline
Legend:
Stage Latency Breakdown
Generated by Synthetic Benchmark CI |
…in database handling
- Removed the `torii-entities-historical-sink` crate, consolidating its functionality into the main application. - Deleted the `restart copy.rs` example and updated the `restart.rs` example to improve event processing logic. - Enhanced the `run_events` function to handle `IntrospectBody` messages with `CreateTable` and set `append_only` to true. - Increased the batch size for event processing from 1000 to 2000 for improved performance. - Updated error handling during the initialization of the introspect SQL sink to ensure proper logging of errors.
…cher implementation
…erialization feat: implement conversions between StarkNet types and local Felt/Event types feat: enhance ControllersStore with batch upsert functionality for controllers fix: improve error handling and ensure proper transaction management in ControllersStore test: add tests for batch upsert functionality in ControllersStore feat: add SQLite memory URL detection for database initialization feat: implement pathfinder example for fetching emitted events build: create release script for SDK with npm publishing and GitHub release refactor: add start block configuration to extractors for better control over extraction ranges
refactor(decoder): improve error handling in event data decoding
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.