NickGuest
Hi – in a case where there may be many writers and readers pointin at the same set of data – is there any concept of transaction control in KDB?
Thanks
Hi Nick,
There is a concept of transactions and rollbacks in kdb+ but their usefulness is extremely limited by their poor support and slow speed.
The concept your discussing of multiple reads/writers in particular is definitely not supported out of the box, many places roll their own. Usually this is quite basic and either involves only a single writer and/or freezing all readers.
If one process tries to read a table that has been partially written that reader can throw a length error. Some places try to use the file system to atomically switch directories over, this can again be troublesome and a lot of work. Others just let the readers keep going and are either ignorant of the potential problems or choose to ignore them.
So sorry but there’s no quick answer to what you want and once a company has started invested in creating that infrastructure:
– they have to keep amending it for edge cases
– they won’t release their code as it becomes valuable
If you want to experiment more yourself I recommend investigating the replication -r and logging -l command line features.