-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Table::set and Table::get should return bool and pass the result string as ref-argument. #5
Comments
… table as well as any other user-table. The root of the web server is a generated HTML page with navigation for all the system features. There is now a map of tables. Selecting the current table is with the /tablename/?use rest command. Tables can also be dropped. Table::compact was reworked to shift-up deleted keys in the index. An index_revolver coroutine was introduced to return one index per invocation. This logic also has index cleanup capabilities. The Table::list() command uses this coroutine to produce the list of all keys. Table::get/set are now boolean. The set prevents overinserting and updating of unknown keys. The get returns false if the key is unknown. This allows now for inserting or updating "null" values. Better statistics. Better formatted output. All REST logic is in one DefaultHandle where the table list lock is maneaged. Everything the DB server does is listed in the / page which is built by DefaultHandle::build_help. Added the new Table::self_test method and the corresponding /?selftest=0 REST command. This system of self-testing obsoletes the rest.bat file while also aiming at raw performance. This version has problems with deleting keys that are in cache. TODO. This version closes issues: #1, #2, #3, #4, #5, #6, #8. It advances on issues #13 and #11.
The newest signatures for Table::get and Table::set are: Line 457 in 4df6de3
Line 568 in 4df6de3
The empty string is now an accepted value. Relates to #6. |
Table::set should return false if the key is already present, rather than update the value.
Table::get should return false if the key is not present, rather than return "" which should be a legal value.
The text was updated successfully, but these errors were encountered: