mirror of
https://github.com/hanzoai/tasks.git
synced 2026-10-04 02:04:03 +00:00
## What changed? - CHASM nodes are now internally represented as split distinctly between Metadata and Data parts. - Additional columns were added to SQL plugins, bumping the SQL schema - No change was made to the Cassandra columns; instead, ExecutionManager ensures that when running on Cassandra, the entire node continues to be represented in a single blob, to avoid lowering Cass performance post-change. ## Why? Before, a ChasmNode contained both its metadata fields, and the user data blob. Decoding a ChasmNode would cause an additional (often large, relative to the metadata) allocation to store the inner data blob, as well as additional memcpys while encoding/decoding. With this change, the data field can be passed along as-is, opaquely, while the metadata field can be decoded without additional penalty from a large data blob. ## How did you test it? - Updated tests --------- Co-authored-by: Yichao Yang <[email protected]>