Thanks,

I have tried to create the empty tables and then to insert the data using the INSERT INTO statement and everything worked in parallel perfectly!

Stefano

On 23 Aug 2016, at 16:59, Mark Raasveldt <m.raasveldt@cwi.nl> wrote:

Hey Stefano,

MonetDB tracks which tables exist inside of another table (called sys.tables). When you create a table, ‘sys.tables’ is updated with the newly created table. When multiple clients create tables at the same time, they each update the same table (‘sys.tables’). This causes concurrency conflicts. 

Regards,

Mark

On 23 Aug 2016, at 16:48, Stefano Fioravanzo <fioravanzos@gmail.com> wrote:

Hello,

I am trying to execute in parallel a few queries in MonetDB.
I have read in the documentation that Monet uses the OCC transaction model so read operations should not block the table.

I have 3 CREATE TABLE queries that read from the same source table, I launch 3 different mclient processes and launch one query on each client.
The queries execute in parallel as expected, I can see them running in sys.queue().

The first query that completes, creates the table and commits fine. When the other two queries finish their job I can see the message “operation successful” but right after the client prints "COMMIT: transaction is aborted because of concurrency conflicts, will ROLLBACK instead”.

What am I doing wrong? Apart from the newly created table, I did non write anything to the db so it should work fine.

Any suggestion would be much appreciated,
Thanks,
Stefano
_______________________________________________
users-list mailing list
users-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/users-list

_______________________________________________
users-list mailing list
users-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/users-list