UpStare is a dynamic software updating system for multi-threaded userspace applications that applies immediate updates using stack reconstruction. The program state and the program code are updated immediately in a single step. It is not necessary to wait indefinitely for a quiescent program state. A running algorithm can be updated midstream its execution and resumed from a different point (not necessarily the beginning) of another algorithm.
License: Freely Distributable
Changes:
This release fixes a critical issue in the runtime in determining which children have died and should be ignored when coordinating an update with children. It also handles non-blocking file descriptors created with open() and pipe(), and calls to select() with a pointer (possibly set to NULL) timeout argument that would block indefinitely. With these changes, the system can update PostgreSQL while multiple clients are connected to it.
More...