20.03.2017 19:43, Vlad Khorsun wrote: > >> Firebird doesn't use signals for AST delivery for a long time already >> and it might be possible to issue new locks from inside AST handler. >> >> Therefore it might make sense to go back to this logic. This would make >> nbackup state locks very transient and do not require flushing page >> cache during transitions. > > It would be very good to avoid flushing.
Agreed. But I'm really worried about taking locks in ASTs, this sounds as a dangerous practice to me. I smell new deadlocks. >> It also might be possible to use shared memory for synchronization >> instead of lock manager calls to speed things up. > > Could you explain more ? I suppose Nickolay means replacing GlobalRWLock with native OS-level RW primitives used similar to shared memory mutexes. For Windows, they're just shared as named objects, for POSIX they're stored in shmem. Dmitry ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot Firebird-Devel mailing list, web interface at https://lists.sourceforge.net/lists/listinfo/firebird-devel