[redland-dev] Concurrent updates with MySQL storage engine
Jan Algermissen
jalgermissen at topicmapping.com
Mon Sep 4 20:21:29 UTC 2006
Dave,
On Jul 27, 2006, at 7:31 AM, Dave Beckett wrote:
> Jan Algermissen wrote:
>> Hi,
>>
>> AFAIK, transactionality has not yet been added to Redland and as the
>> MySQL storage uses ISAM (as opposed to InnoDB) tables, so I cannot
>> really add it myself by simply getting hold of the connection
>> handle. At
>> least not without loosing the ability to update redland with new
>> releases.
>
> but we could add storage parameters to let you switch table type
> (small
> change) or add an API call to get the connection handle (another
> small change)
>
[Sorry if this has already been answered and I only missed it]
These two changes would be absolutely sufficient for what I need to
do. What are the chances that you manage to add them to Redland? I am
also happy to help in doing that, but I'd need some hints what places
of the code I have to change - so that I don't miss any, especially
in the bindings.
Thanks,
Jan
>> Does anyone know, how/if massive update concurrency[1] affects
>> creation
>> of single statements? I am not concerned so much with rollbacks, only
>> with added statements being correct. IOW, my business logic would not
>> suffer from concurrency but I need to be sure the individual
>> statements
>> do not get screwed up.
>>
>> [1] Could be that aprox. 200 clients hit the DB at the same time
>> and try
>> to remove all statements of a context and then insert several hundred
>> new statements in that context . No two clients would use the same
>> context.
>
> I think massive concurrency would probably be problematic, you are
> really
> wanting transactions so that overlapping updates - which require
> multiple
> SQL commands - will work correctly in all cases. Adding
> transactions would
> be a medium sized project. The tracking bug for this is
> http://bugs.librdf.org/mantis/view.php?id=38
>
> Dave
>
More information about the redland-dev
mailing list