Google Summer of Code 2021. Tarantool connector enhancement - AnaNek/tarantool GitHub Wiki
Organization: Tarantool
Mentors: Nikita Pettik, Timur Safin
Student: Anastasiy Belyaev
- GitHub: AnastasMIPT
- LinkedIn: Anastasiy Belyaev
Introduction
Tarantool’s team has released a new C++ connector, which is based on compile-time MsgPack encoder/decoder. Reaching the limits of C++, this library is really state of the art, eliminating any possible overheads. The project idea aims related to it is: Complete providing support of SQL statements and user authorization.
What was done
Providing SQL statements
-
Added support for sql-queries. Implemented methods:
Connection::execute()
- equivalent of box.execute()Connection::prepare()
- equivalent of box.prepare()
-
Added tests for the methods above. These methods allow you to send sql-queries to the server using the connector.
Pull-request: https://github.com/tarantool/tntcxx/pull/16
Providing user authentication
- Added an overload to the
Connector::connect()
method, which takes aconfig
structure containing address, port, username and password. If the name and password are specified, the user is authorized. - Added tests to check and as an example of how to use the function.
Pull-request: https://github.com/tarantool/tntcxx/pull/21
Future Connector Improvements
- Port connector to Windows/MacOS (rewrite network engine)
- Add wrappers for DDL