I tried to couple a (pre)forking socket server with foundationDB, using the C API directly.
The socket server is a slight modification of https://gist.github.com/paulsmith/204301
for unix domain sockets.
A client connects with an input that ultimately translates into a key to be looked up in a foundationDB database.
Using a variation of function getKey in
I intended to send the value corresponding to the key back to the client.
Everything works as intended when I disable forking alltogether.
However, with fork() enabled in the server code, the execution blocks indefinitely at the first fdb_future_block_until_ready invocation.
Questions: Is this expected behaviour? What are best practices to provide a concurrent socket interface to foundationDB using the low-level C API?