19:55:15 <m-relay> <s​yntheticbird:monero.social> hello
19:55:20 <m-relay> <s​yntheticbird:monero.social> hyc are you there?
19:57:05 <m-relay> <s​yntheticbird:monero.social> sorry for the offtopic and plunge you into nostalgia but during latest Cuprate meeting we were wondering why you used both NO_SYNC and MAP_ASYNC together here: https://github.com/monero-project/monero/blame/90359e31fd657251cb357ecba02c4de2442d1b5c/src/blockchain_db/lmdb/db_lmdb.cpp#L1444
19:58:40 <m-relay> <s​yntheticbird:monero.social> from lmdb documentation we mainly understood that were trying to change the same behavior. So we are unsure of what combining the two actually do. Is one overloading the other on specific platform ?
20:08:44 <sech1> I took a quick glance over the mdb.c code, and it seems that MDB_NOSYNC takes precendence and if it's set, MDB_MAPASYNC does nothing
20:09:44 <m-relay> <s​yntheticbird:monero.social> thx sech1
20:10:23 <sech1> although, if a sync is forced, MDB_MAPASYNC flag will be used
20:10:48 <sech1> https://github.com/monero-project/monero/blob/master/external/db_drivers/liblmdb/mdb.c#L2811-L2813
20:11:56 <sech1> so it matters only when calling mdb_env_sync with force != 0
20:13:30 <sech1> MDB_NOSYNC|MDB_MAPASYNC result in no syncs, unless you explicitly call mdb_env_sync(env, 1); - then it will use async flushes to disk
20:13:57 <sech1> all that is based just on me reading the code, but you need to test it
20:14:37 <m-relay> <s​yntheticbird:monero.social> got it, thx again
20:14:52 <m-relay> <s​yntheticbird:monero.social> btw cuprate channel is on irc if you want
20:15:05 <m-relay> <s​yntheticbird:monero.social> I think i never saw you wandered in #cuprate
20:15:07 <sech1> I joined it today
20:15:13 <m-relay> <s​yntheticbird:monero.social> lets go