mirror of
https://github.com/rustfs/rustfs.git
synced 2026-07-27 00:38:16 +00:00
8eba7bb9be
xl.meta roundtrip coverage was one fixed example test plus byte-level no-panic fuzz properties; nothing generated STRUCTURED version graphs, so a lossy encoding bug in version headers, ordering, delete markers, or the dual internal-metadata-key handling would only surface if the fixed example happened to hit it. Add crates/filemeta/tests/version_graph_roundtrip_proptest.rs with two generated-input properties over multi-version graphs (1-7 versions, ~30% delete markers, deliberately colliding mod_times to exercise tie-break ordering, user metadata, and the AGENTS.md dual x-rustfs-internal-*/x-minio-internal-* keys written via the real insert_bytes helper): - version_graph_marshal_load_roundtrip: marshal -> load preserves version count, meta_ver, the exact (id, type) sequence, full headers, fully decoded per-version content, delete-marker payload shape, and both internal metadata key forms with identical values. - version_graph_marshal_is_idempotent: marshal(load(marshal(x))) is byte-identical to marshal(x), catching encoders that mutate or reorder state on the way out. Complements the existing byte-level no-panic properties: those prove hostile bytes cannot crash the decoder; these prove honest graphs are encoded losslessly. Refs: backlog#1151 (sec-10)
RustFS FileMeta - File Metadata Management
Advanced file metadata management and indexing module for RustFS distributed object storage
📖 Documentation
· 🐛 Bug Reports
· 💬 Discussions
📖 Overview
RustFS FileMeta provides advanced file metadata management and indexing capabilities for the RustFS distributed object storage system. For the complete RustFS experience, please visit the main RustFS repository.
Quick Use
cargo run -p rustfs-filemeta --example dump_fileinfo -- "/path/to/file/xl.meta"
✨ Features
- High-performance metadata storage and retrieval
- Advanced indexing with full-text search capabilities
- File attribute management and custom metadata
- Version tracking and history management
- Distributed metadata replication
- Real-time metadata synchronization
📚 Documentation
For comprehensive documentation, examples, and usage guides, please visit the main RustFS repository.
📄 License
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
