The comment by [a_horse_with_no_name][1] is actually the answer, but since it was not posted as an answer, I'm not able to mark it so. I've completely forgotten about transaction isolation levels, I've [asked the question in VoltDB forums][2] and it appears that as long as make sure that stored procedures are local to nodes (sorry, this is a bit of a VoltDB terminology), that is, they don't process data across partitioned tables, this should work. [1]: https://dba.stackexchange.com/users/1822/a-horse-with-no-name [2]: https://forum.voltdb.com/showthread.php?514-Creating-temporary-tables-from-stored-procedures-Is-it-possible