Re: [HACKERS] RustgreSQL
Joel Jacobson j...@trustly.com wrote: > My motivation is primarily I don't want to learn all the over-complicated details of C, That's rich, mate. C is one of the simplest languages. It's simplicity is its main benefit and its biggest drawback: it shields very little from the actual underlying hardware and system. C++ is incredibly complex, while still granting one access to the underlying system. Every other high-level language I've seen that shields its users from the "details", ultimately suffers for it: either you the programmer must accept the limitations of what the language provides at the cost of flexibility and power, or you can't do what you really want to do, or you have to use lower-level primitives to accomplish what you want. Craig Ringer said: > This is only partly a deficiency of C. Lots of it is down to low level systems being complex, hard and varied. Weak vs strong memory ordering, LP64 vs ILP64, etc etc etc. Well-said. Adding to that: interprocess management and communication. > I suspect we'd land up having to move to C++ exceptions Craig, isn't it the case that C++ exceptions still cause tremendous slow-downs of the entire code-base?
Re: [HACKERS] async replication code
On Wed, Mar 16, 2016 at 8:30 PM, otheus uibk <otheus.u...@gmail.com> wrote: > I will ask again: where in the code is the asynchronous replication code? > The docs are not detailed/exact enough. > > Nevermind. Thomas Munro answered my question in the General list. Quoting: > Look for WalSndWakeupRequest() in xlog.c, which expands to a call to > WalSndWakeup in walsender.c which sets latches (= a mechanism for > waking processes) on all walsenders, and see the WaitLatchOrSocket > calls in walsender.c which wait for that to happen. -- Otheus otheus.u...@gmail.com otheus.shell...@uibk.ac.at
[HACKERS] async replication code
Greetings, I am new here. Apologetic question: how can i search the archives of this mailing list? Is there some set of magic words to put in Google? Must I wade through 20 pages of hits? Should I download all the archives and grep? :) Main question: I want to understand very precisely the exact algirithm used in PG to do asynchronous streaming replication. Eg, I want to know how the record is written and flushed to the socket and how that happens in time w.r.t WAL-to-disk and response to client. Will someone please give me a head start as to where to begin my code-spelunking? -- Otheus otheus.u...@gmail.com otheus.shell...@uibk.ac.at
Re: [HACKERS] async replication code
I will ask again: where in the code is the asynchronous replication code? The docs are not detailed/exact enough. > > Main question: I want to understand very precisely the exact algirithm > used in PG to do asynchronous streaming replication. Eg, I want to know how > the record is written and flushed to the socket and how that happens in > time w.r.t WAL-to-disk and response to client. Will someone please give me > a head start as to where to begin my code-spelunking? > > > > WAL synced to disc, then everything else is happening. > > > http://www.postgresql.org/docs/9.5/static/warm-standby.html#STREAMING-REPLICATION > > --- > Stas Kelvich > Postgres Professional: http://www.postgrespro.com > Russian Postgres Company > > -- Otheus otheus.u...@gmail.com otheus.shell...@uibk.ac.at