Skip to content
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

153 implement a code generator to to automatically create all redis commands scaffolding arguments parsing and commands callbacks #170

Commits on Jul 24, 2022

  1. Configuration menu
    Copy the full SHA
    68a9521 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    e5c4280 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    9cdc235 View commit details
    Browse the repository at this point in the history
  4. Rename network_protocol_redis in module_redis in preparation to move …

    …the code under a modules/redis folder
    danielealbano committed Jul 24, 2022
    Configuration menu
    Copy the full SHA
    b2a0324 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    7011710 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    9bd4bbe View commit details
    Browse the repository at this point in the history
  7. Move the prometheus module under the modules folder and rename all th…

    …e related network_protocol_prometheus in module_prometheus
    danielealbano committed Jul 24, 2022
    Configuration menu
    Copy the full SHA
    b085b20 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    db06d30 View commit details
    Browse the repository at this point in the history
  9. Reorganize the configuration to move the modules away from the "netwo…

    …rk protocols" as they are not just "protocols"
    danielealbano committed Jul 24, 2022
    Configuration menu
    Copy the full SHA
    4276938 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    8518f83 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    8e390e4 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    7cc0796 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    4bacda7 View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    52d46d3 View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    fe7da94 View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    454cf97 View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    878e0d4 View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    f857b50 View commit details
    Browse the repository at this point in the history
  19. Plenty of small fixes to the scaffolding auto generation, add a mecha…

    …nism to add a command end callback for the commands that aren't implemented
    danielealbano committed Jul 24, 2022
    Configuration menu
    Copy the full SHA
    c1de375 View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    30b3037 View commit details
    Browse the repository at this point in the history

Commits on Jul 25, 2022

  1. Rename modules in module and all the "network_protocol" or "protocol_…

    …context" references to use the wording module
    danielealbano committed Jul 25, 2022
    Configuration menu
    Copy the full SHA
    c2ea974 View commit details
    Browse the repository at this point in the history
  2. Callbacks for the command begin and free have been dropped in favour …

    …of generalised implementations
    danielealbano committed Jul 25, 2022
    Configuration menu
    Copy the full SHA
    060c325 View commit details
    Browse the repository at this point in the history
  3. Fix arguments, sub arguments and context generation and add fields of…

    …fset tracking for automatic memory freeing
    danielealbano committed Jul 25, 2022
    Configuration menu
    Copy the full SHA
    e0b2443 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    3fb4cd1 View commit details
    Browse the repository at this point in the history

Commits on Jul 28, 2022

  1. Refactor the scaffolding generator to spllit module_redis_autogenerat…

    …ed_commands_table.h in 3 separated headers with arguments, key_specs and the info_map
    danielealbano committed Jul 28, 2022
    Configuration menu
    Copy the full SHA
    ed52dde View commit details
    Browse the repository at this point in the history
  2. Add a component to handle the redis connections (send out ok messages…

    …, handle error messages, handle connection termination and so on)
    danielealbano committed Jul 28, 2022
    Configuration menu
    Copy the full SHA
    88af86e View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    8d25d61 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    2bec0ec View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    73ed14b View commit details
    Browse the repository at this point in the history

Commits on Jul 30, 2022

  1. Configuration menu
    Copy the full SHA
    c909277 View commit details
    Browse the repository at this point in the history
  2. Drop the generation of the callbacks for argument_stream_begin/data/e…

    …nd, argument_full and argument_require_stream
    danielealbano committed Jul 30, 2022
    Configuration menu
    Copy the full SHA
    8ebbec2 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    08d6238 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    2573a8d View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    41c9075 View commit details
    Browse the repository at this point in the history
  6. Correct the argument size calculation, add sub arguments, sub argumen…

    …ts count and parent argument, also declare the arguments at the beginning of the header
    danielealbano committed Jul 30, 2022
    Configuration menu
    Copy the full SHA
    ae90641 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    b9fdb12 View commit details
    Browse the repository at this point in the history
  8. Fix the command info table generation and add a flag to indicate if t…

    …he command has a variable number of arguments
    danielealbano committed Jul 30, 2022
    Configuration menu
    Copy the full SHA
    5fa66d0 View commit details
    Browse the repository at this point in the history
  9. Refactor the storage db to use sequence of chunks instead of having 2…

    … distinct preallocated structs in the entry_index
    danielealbano committed Jul 30, 2022
    Configuration menu
    Copy the full SHA
    07fe7a6 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    66213bb View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    2db2d9d View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    e66900f View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    926c93a View commit details
    Browse the repository at this point in the history
  14. Restore the callback to free the command context as the auto generate…

    …d code now invokes the ad-hoc function to free up the context of the command
    danielealbano committed Jul 30, 2022
    Configuration menu
    Copy the full SHA
    254f2bd View commit details
    Browse the repository at this point in the history
  15. Drop the unused callbacks and update the command info struct to match…

    … the updated autogenerated command table
    danielealbano committed Jul 30, 2022
    Configuration menu
    Copy the full SHA
    b62e8e7 View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    c867b80 View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    3068962 View commit details
    Browse the repository at this point in the history
  18. Always fill up the command argument parser context with zeros when th…

    …e connection context is resetted
    danielealbano committed Jul 30, 2022
    Configuration menu
    Copy the full SHA
    3318586 View commit details
    Browse the repository at this point in the history
  19. Configuration menu
    Copy the full SHA
    0767f1b View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    44f6228 View commit details
    Browse the repository at this point in the history
  21. Configuration menu
    Copy the full SHA
    c24f182 View commit details
    Browse the repository at this point in the history
  22. Configuration menu
    Copy the full SHA
    975552a View commit details
    Browse the repository at this point in the history
  23. Pass the storage db onto the connection context, drop the callbacks f…

    …or argument stream begin/data/end argument full and argument require stream in favour of the stubs in module_redis_command, cleanup the code that cleans up the connection context after a failure, plus minor things
    danielealbano committed Jul 30, 2022
    Configuration menu
    Copy the full SHA
    baa5b3c View commit details
    Browse the repository at this point in the history
  24. Configuration menu
    Copy the full SHA
    91eb61c View commit details
    Browse the repository at this point in the history
  25. Update commands to include the amount of required arguments, if they …

    …have a variable amount of arguments and the structure of the hello command
    danielealbano committed Jul 30, 2022
    Configuration menu
    Copy the full SHA
    dc31ec2 View commit details
    Browse the repository at this point in the history

Commits on Aug 8, 2022

  1. Configuration menu
    Copy the full SHA
    ff40ab5 View commit details
    Browse the repository at this point in the history
  2. Drop the key specs as they are unused but keep in the json as took qu…

    …ite some time to put it together
    danielealbano committed Aug 8, 2022
    Configuration menu
    Copy the full SHA
    4b13e75 View commit details
    Browse the repository at this point in the history
  3. Fix a bug in the slab allocator mem realloc which was preventing the …

    …memory from being properly zeroed
    danielealbano committed Aug 8, 2022
    Configuration menu
    Copy the full SHA
    c1ba87e View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    b084e59 View commit details
    Browse the repository at this point in the history
  5. Reorganize module_redis_command_info to optimize memory consumption a…

    …nd drop the length field as it's a duplicate of string_len
    danielealbano committed Aug 8, 2022
    Configuration menu
    Copy the full SHA
    7c7619f View commit details
    Browse the repository at this point in the history
  6. Fix the argument processing flow, argument being has to be called bef…

    …ore argument require stream
    danielealbano committed Aug 8, 2022
    Configuration menu
    Copy the full SHA
    e18a9cd View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    b62bc83 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    103133f View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    f418a92 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    739c90b View commit details
    Browse the repository at this point in the history
  11. key_specs dropped

    danielealbano committed Aug 8, 2022
    Configuration menu
    Copy the full SHA
    7845f0f View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    85bc6d7 View commit details
    Browse the repository at this point in the history
  13. Minor headers cleanup

    danielealbano committed Aug 8, 2022
    Configuration menu
    Copy the full SHA
    0745df1 View commit details
    Browse the repository at this point in the history

Commits on Aug 11, 2022

  1. Rename the benchmarks and the tests for the multi producer multi cons…

    …umer hashtable in test/bench=hashtable-mpmc-*
    danielealbano committed Aug 11, 2022
    Configuration menu
    Copy the full SHA
    4fff9dd View commit details
    Browse the repository at this point in the history
  2. Fix typo

    danielealbano committed Aug 11, 2022
    Configuration menu
    Copy the full SHA
    6236f90 View commit details
    Browse the repository at this point in the history
  3. Implement a new hashtable single producer single consumer used intern…

    …ally for caching or small sets of data
    danielealbano committed Aug 11, 2022
    Configuration menu
    Copy the full SHA
    3094efe View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    99431d3 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    346d380 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    7e04b3e View commit details
    Browse the repository at this point in the history
  7. Fix headers

    danielealbano committed Aug 11, 2022
    Configuration menu
    Copy the full SHA
    d395282 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    9c7d9ce View commit details
    Browse the repository at this point in the history
  9. Update the configuration documentation after the massive reorganisati…

    …on of network protocols to modules
    danielealbano committed Aug 11, 2022
    Configuration menu
    Copy the full SHA
    ddb3074 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    1d87974 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    81a6bb1 View commit details
    Browse the repository at this point in the history
  12. No reason to generate "values" for bool arguments because they are al…

    …ways paired with the tokens
    danielealbano committed Aug 11, 2022
    Configuration menu
    Copy the full SHA
    406d186 View commit details
    Browse the repository at this point in the history
  13. Fix message

    danielealbano committed Aug 11, 2022
    Configuration menu
    Copy the full SHA
    64b6c3c View commit details
    Browse the repository at this point in the history

Commits on Aug 12, 2022

  1. Configuration menu
    Copy the full SHA
    4104553 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    050b1bf View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    a43ebf8 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    7dc362d View commit details
    Browse the repository at this point in the history
  5. Refactor the hashtable spsc to make it more testable, also add hashta…

    …ble_spsc_op_iter and keys cleanup if new flag free_keys_on_deallocation is set
    danielealbano committed Aug 12, 2022
    Configuration menu
    Copy the full SHA
    c432aba View commit details
    Browse the repository at this point in the history
  6. Add a new component to pre-generation at the start of some data for t…

    …he commands and commands arguments tokens handling to avoid making the scaffolding generator even more complex
    danielealbano committed Aug 12, 2022
    Configuration menu
    Copy the full SHA
    cb1f956 View commit details
    Browse the repository at this point in the history
  7. Fix headers order

    danielealbano committed Aug 12, 2022
    Configuration menu
    Copy the full SHA
    2ed41c9 View commit details
    Browse the repository at this point in the history
  8. Remove the token found from token entry and get the live value from t…

    …he command context, the token entries are now pre-generated and shared
    danielealbano committed Aug 12, 2022
    Configuration menu
    Copy the full SHA
    b1251f0 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    c873199 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    4a6f7a8 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    2baf697 View commit details
    Browse the repository at this point in the history
  12. Merge branch 'main' into 153-implement-a-code-generator-to-to-automat…

    …ically-create-all-redis-commands-scaffolding-arguments-parsing-and-commands-callbacks
    danielealbano committed Aug 12, 2022
    Configuration menu
    Copy the full SHA
    42b6579 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    2d6043b View commit details
    Browse the repository at this point in the history

Commits on Aug 14, 2022

  1. If the command parser returns false the connection needs to be aborte…

    …d (invalid received data or no memory), no reason to send a message
    danielealbano committed Aug 14, 2022
    Configuration menu
    Copy the full SHA
    9645363 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    a0d0364 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    90cbd85 View commit details
    Browse the repository at this point in the history
  4. If an error message is set, no failure should be reported as if it's …

    …necessary an assert will kick in a few lines before the free
    danielealbano committed Aug 14, 2022
    Configuration menu
    Copy the full SHA
    5bb1b08 View commit details
    Browse the repository at this point in the history
  5. To make the code more readable, avoid that the nested command argumen…

    …t parser functions emit errors, instead emit the errors only in the main functions
    danielealbano committed Aug 14, 2022
    Configuration menu
    Copy the full SHA
    b062d91 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    e5b427a View commit details
    Browse the repository at this point in the history
  7. Style fixes

    danielealbano committed Aug 14, 2022
    Configuration menu
    Copy the full SHA
    402f9ff View commit details
    Browse the repository at this point in the history
  8. In argument end, if a ONEOF argument type is supposed to be expected …

    …set it to null, these kind of arguments can only have tokens
    danielealbano committed Aug 14, 2022
    Configuration menu
    Copy the full SHA
    8edd4a6 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    7a9fab6 View commit details
    Browse the repository at this point in the history
  10. Fix tests to work with the new automated parser (different error mess…

    …ages, no need to test the key length per command anymore, etc.)
    danielealbano committed Aug 14, 2022
    Configuration menu
    Copy the full SHA
    5398d36 View commit details
    Browse the repository at this point in the history
  11. Fix LGTM alerts and ensure that the module_redis_connection_error_mes…

    …sage_printf_(non)critical functions are checked with the printf arguments validation
    danielealbano committed Aug 14, 2022
    Configuration menu
    Copy the full SHA
    9a72133 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    745bdaa View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    cc96f4b View commit details
    Browse the repository at this point in the history
  14. Style fix

    danielealbano committed Aug 14, 2022
    Configuration menu
    Copy the full SHA
    72f548d View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    c5417ae View commit details
    Browse the repository at this point in the history

Commits on Aug 15, 2022

  1. Configuration menu
    Copy the full SHA
    8110106 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    e73c983 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    117eed5 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    d1b039f View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    7c82e64 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    5521368 View commit details
    Browse the repository at this point in the history