Closed bovine closed 12 years ago
Note that changing the table creation code to only create one of the two tables in shmem also allows it to work fine. It only fails when both tables are in shmem.
This is due to lack of support for multiple shared files, you have to use the same file for both structures.
Workaround is to use the same "file" argument for all tables.
Recommend adding an error if you try to initialize more than one shared memory file. Alternatively, add full support for multiple files.
After commit 6eb2e96aa47838505fd978dbd84f3afc22d362d5 we have support for multiple shared files, but recommend having only a small number due to the need to have the file mapped to the same address in the master and all off the readers.
When more than one shared-memory speedtable is created in a process, data starts getting lost from the inserted rows. Here is a sample program:
Run it with argument of 0 and it will work:
Run it with 1 and it fails: