Skip to content

Draft: feat(space ephemeral): add api for ephemeral spaces

Georgy Moshkin requested to merge ephemeral-space-api into 2.10.4-picodata

Space ids are usually chosen based on box.space._schema:get('max_id')'s value, which isn't viable for ephemeral spaces, because they aren't supposed to touch any system spaces.

But we do need to provide a unique id for every ephemeral space, if we want to use the box_insert, box_replase, etc. apis.

And we do want to use those, because we don't want to duplicate them for ephemeral spaces.

An alternative approach would be to automatically give ephemeral spaces ids starting from u32::MAX and going down, and also storing the last ephemeral space id we've given out.

Also the arguments to the api functions require some of the data to be passed encoded as msgpack, this is done for the purpose of code reuse and risk reduction (that way I don't write too much new C code).

Also I couldn't run the app-tap test, because of undefined reference errors, even though the tests I wrote in tarantool-module worked fine.

Edited by Georgy Moshkin

Merge request reports