fedewi wrote:That would probably need to be a feature of the DBMS. Prioritization might be handled by setting the thread priority, but it then depends on how the DBMS processes requests (it might not be aware of priorities and might internally use queues etc that don't preserve priroity order). The DBMS would also have to support a "timeout" on a transaction commiting (to give it an effective deadline), or else support asynchronous rollback so that (for example) a timer-based activity could issue a rollback request when the "deadline" arrives. The problem with such a scheme is the inevitable race between the completion of the action and the execution of the deadline miss activity.
I need to use transactions that guaranties ACID properties (Atomicity, Consistency, Isolation, Durability) under the context of Real Time processing. But not only that, I would like to have the chance to add deadlines to each transaction or maybe to select priorities between transactions, etc.
However if such a thing does not exist, I would like to know how I can guarantee that normal operations over databases can meet certain temporal constrains when using JavaRTS ?In simple terms you can't guarantee anything without full knowledge of the DBMS (or without full participation by the DMS). The best I can think of is as above where you set a timer before doing a transaction and if the timer expires it then either tries to abort or simply records the fact that the "deadline" was missed - it all depends on what impact a missed deadline has, and what your DMS allows you to do about it.
could you also recommend me some in-memory database that support transactions that works well with JavaRTS ?Sorry, I have no personal experience here and have not heard of anyone using one.