Releases: valmat/RocksServer
Releases · valmat/RocksServer
v0.5.3
✨ Features & Improvements
- Added support for custom HTTP status codes and reason phrases in EvResponse, enabling full control over HTTP responses.
- Enhanced EvResponse to support a comprehensive list of HTTP status codes and improved const-correctness for response methods.
- Refactored ProtocolInPost to introduce dedicated isPost() and isEmpty() methods for clearer POST request checks.
- Enhanced process owner/group changing logic in RocksServer, adding group owner configuration and improved error handling.
- Improved error handling for file writes in human_readable_batches utility and clarified error messages.
- Added support for post-write command execution in human_readable_batches via a new -c option, allowing custom commands after batch file creation.
- Included rows_number and human_readable_batches binaries in the Debian build script.
📝 Documentation & Code Quality
- Updated README with clearer instructions, improved formatting, and new sections on dependencies, installation, and plugin development.
- Improved comments, fixed typos, and clarified configuration descriptions in source code.
- Refactored and cleaned up human_readable.cpp, simplifying variable initialization and employing RAII principles.
🐛 Fixes & Maintenance
- Fixed various typos and improved error messages across utilities and scripts.
- Improved error handling and messaging for ownership changes and file write operations.
- Simplified start logic in the initd script and improved script variable naming consistency.
Overall, this release focused on expanding HTTP customization capabilities, boosting code clarity and maintainability, and enriching utility tools for user convenience.
Updated dependencies
- Updated dependency versions.
- Fixed compatibility with new version of RocksDB
- Added new DB options.
- Updated extension example.
Version v.0.3.1
Fixed one serious bug in method const ProtocolOut& ProtocolOut::setValue(const char *val) const
Version v.0.3.0
v.0.2.2
- Improved
ProtocolOutinterface. - Fixed
RocksDBWrapper::keyExist()method taking into account false positives of the Bloom Filter. - Marked method
bool RocksDBWrapper::keyExist(const rocksdb::Slice &key, std::string &value, bool &value_found)as deprecated.
v.0.2.3
- Some Minor improvements of
human_readable.cpp. - Added restore_hr.cpp -- ability to restore DB from a
human readablebackup file. - Some other minor improvements and files restructuring.
v.0.2.3
- Added request listener
RequestMdelset: that allows to remove and set a keys for a single query. - Fixed human_readable.cpp.
- Some Minor improvements.
v.0.2.3
- Added new methods:
ProtocolOut& ProtocolOut::endl()std::vector<std::string> RocksDBWrapper::mget(const std::vector<std::string> &keys, std::vector<rocksdb::Status> &statuses)ProtocolInPostPairs::map()
- Made
RocksDBWrapper::_statusmutable to mark getters asconst - Added new method
std::unique_ptr<rocksdb::Iterator> RocksDBWrapper::newIter() const - Moved SFINAE trait
is_possible_iterablefrom classBatchto namespacetraits - Replaced
const EvResponse& add(const std::string &str) consttoconst EvResponse& EvResponse::add(T &&str) constfor cases when T is a string type
v.0.3.0
- Slightly accelerated compile due to precompiled header.
- Added method
const ProtocolOut::ProtocolOut& setFailPair() const. - Some Minor improvements.
Version v0.2.1
- Fixed one missing in init.d script.
- Updated Makefile. Added static linking libevent option.
- Fixed missing checking for the existence of the database directory.
- Fixed casting between pointer-to-function and pointer-to-object on plugin loading.
- Added config parameter
flush_before_backup. - Extended restore options:
- Added show backups list option
- Added restore by index option
Version v0.2.0
v.0.1.5
- Some minor fixes and some minor improvements.
- Changed the backups mechanism.
- Added option
num_backups_to_keep(when deletes old backups, keeping latestnum_backups_to_keepalive) - Added command
delete backupas an example. - Added new config settings: wal_dir, wal_ttl_seconds, wal_size_limit_mb
v.0.1.6
- Added listener
RequestBackupMdelas plugin example. - Added class
Batch. - Added
bool RocksDBWrapper::keyExist(const rocksdb::Slice &key). (bool RocksDBWrapper::keyExist(const rocksdb::Slice &key, std::string &value, bool &value_found)remained). - Fixed class
PostData - Fixed duplication in
RequestTailing - Restructured files structure.
- Separated version in the file version.h.
- Fixed & improved class
Batch. - Added template method
ProtocolOut::setKey(...).
v.0.1.7
- Some minor fixes
v.0.2.0
- Release version v0.2.0
Version v.0.1.4
RocksServer now is extensible.
Version v.0.1.3
v.0.1.1
- Implemented tailing iterator.
- Implemented request listener for command "stats" (Get statistics).
- Changed RocksDBWrapper interface.
- Added more RocksDB options.
- Dismembered EvLogger, changed EvLogger prototype.
- Added the use of the Protocol in the listeners.
v.0.1.2
- Added protocol classes.
- Changed class PostData.
- Changed class RequestBase.
- Removed PHP driver to https://github.com/valmat/rocksdbphp
v.0.1.3
- Implemented prefix iterator.
Version v.0.1.0 ready to use
v.0.0.4
- Added init.d script.
v.0.0.5
- Implemented logging for http server.
v.0.0.6
- Nofile soft limit is now configurable.
v.0.0.7
- Added the ability to make backups.
- Added restore tools.
- Tools for converting RocksDB database to human readable format.
v.0.1.0
- Some improvements.
- Added dependencies.
- Added struct DefaultConfigs: removed hardcode.
Some improvements.
v0.0.2
- Restruct files.
- Added ability to configure the server.
- Added if check RocksDB started.
- Some minor improvements.
v0.0.3
- Prevent server crash on signal SIGPIPE
- Changed order of runing servers: first run the RocksDB, after http server (destroyed in the reverse order).
- Update Makefile.
- Set signal handlers to safely shut down (issue #2 ).
- Some minor improvements.