What transaction atomicity is available in kdb, where if one tableupdate fails the other Tables are rolled back?Also in previous versions, if due to any type errors, only partialupsert was applied on a given kdb Table.This has been fixed in latest version, is this correct. Pleaseconfirm.Appreciate your answer of transaction and data Integrity.Thanks and Regards
there is no atomicity/transaction support in kdb
if any error occurred and uncaught, the program simply stop there
1)?Check out: ?https://code.kx.com/trac/wiki/Cookbook/Logging
-
Build your own mechanism with protected execution and use one or more log files via streaming execute (-11!)
-
If your tables are small (and this is relative to memory) you can have a begin[
tabName] function that makes a copy of
tabName and if there’s an error just replace the updated copy with the backup. You can call rollback[tabName] on .z.pc or an exception. When you're done, you can call commit[
tabName]. Obviously, you can nest these things and get complicated if you really want to.
Nothing is terribly ideal, but one of the three might suffice for your problem.
>?This has been fixed in latest version, is this correct. Please?confirm.
I’m pretty sure. You can always give it a try with a few lines of code.
be carefull with the built in logging.
it records the messages that has lead to changes and it can be
dangerous in case you implement some logic with side effects (like
issuing a market order based on the value received from the
tickerplant).
2011/7/9 Tim Rieder :
> 1)=A0Check out: =A0https://code.kx.com/trac/wiki/Cookbook/Logging
> 2) Build your own mechanism with protected execution and use one or more =
log
> files via streaming execute (-11!)
> 3) If your tables are small (and this is relative to memory) you can have=
a
> begin[tabName] function that makes a copy of
tabName and if there’s an
> error just replace the updated copy with the backup. You can call
> rollback[tabName] on .z.pc or an exception. When you're done, you can ca=<br>ll<br>> commit[
tabName]. Obviously, you can nest these things and get complicate=
d
> if you really want to.
> Nothing is terribly ideal, but one of the three might suffice for your
> problem.
>>=A0This has been fixed in latest version, is this correct. Please=A0confi=
rm.
> I’m pretty sure. You can always give it a try with a few lines of code.
>
>
> On Fri, Jul 8, 2011 at 12:58 PM, Man Kei Lee <mankei.lee> wrote=
:
>>
>> there is no atomicity/transaction support in kdb
>> if any error occurred and uncaught, the program simply stop there
>>
>> On Fri, Jul 8, 2011 at 11:20 PM, dev12 <writeto.rb> wrote:
>>>
>>> What transaction atomicity is available in kdb, where if one table
>>> update fails the other Tables are rolled back?
>>> Also in previous versions, if due to any type errors, only partial
>>> upsert was applied on a given kdb Table.
>>> This has been fixed in latest version, is this correct. Please
>>> confirm.
>>>
>>> Appreciate your answer of transaction and data Integrity.
>>>
>>> Thanks
>>> =A0 =A0 =A0 =A0 and
>>> =A0 =A0 =A0 =A0 =A0 =A0 Regards
>>>
>>> –
>>> You received this message because you are subscribed to the Google Grou=
ps
>>> “Kdb+ Personal Developers” group.
>>> To post to this group, send email to personal-kdbplus@googlegroups.com.
>>> To unsubscribe from this group, send email to
>>> personal-kdbplus+unsubscribe@googlegroups.com.
>>> For more options, visit this group at
>>> http://groups.google.com/group/personal-kdbplus?hl=3Den.
>>>
>>
>> –
>> You received this message because you are subscribed to the Google Group=
s
>> “Kdb+ Personal Developers” group.
>> To post to this group, send email to personal-kdbplus@googlegroups.com.
>> To unsubscribe from this group, send email to
>> personal-kdbplus+unsubscribe@googlegroups.com.
>> For more options, visit this group at
>> http://groups.google.com/group/personal-kdbplus?hl=3Den.
>
> –
>
Submitted via Google Groups</writeto.rb></mankei.lee>