Changes to PostgreSQL source code - postgresql

I was working around with Postgres a bit. I am trying to get familiar to editing the source code of the same.
One of the suggested exercise was to change the buffer replacement policy of the system of Postgres 7.4. (It was in one of the homeworks of some university. First few links of google. I am just using them to get familiar to the code.)
I understand parts of it but I am not able to fully understand how to modify the system. I mean, I know the particular files,buffer folder files in the src/backend/storage location as the files where I have to make changes, but how to implement my own scheme and test it, is going over my head.
So my question is, can anyone help me with some basic code snippet understanding? (Probably, give me idea how to solve the question mentioned above? and how to test it ( most important). ) (This is not a homework of any sort, promise. I am just trying to get a hang of things.)
If not, can anyone refer me to some book which can help me with modification of the postgresql source code? There are books to use postgresql, but I couldn't find any that could help to modify the source code.
P.S: I know the online documentation of PGSQL source code resides at: http://doxygen.postgresql.org/
But I am not able to understand a lot from there. I need a book that can help the layman!
Any help is much appreciated!

Apart from the Developer FAQ your best starting point will be the PostgreSQL mailing lists.
You might start with posting to http://archives.postgresql.org/pgsql-novice/ ("No question is too simple for this list")
And if you really start changing the source code you will need to subscribe to http://archives.postgresql.org/pgsql-hackers/ as well.
And don't use the 7.x source code. PostgreSQL is at Version 9.1 now and I'm sure studying the ancient history won't be very helpful.

Related

Note taking extension on vscode that helps programming?

I'm new to programming, during learning I face problems like I don't fully understand some part of codes in a complex program, therefore I need to write down what I don't understand somewhere, and retrieve/review codes&my questions later. Therefore I'm looking for a vscode extension or software that can implement those functions:
comment on code
overview on my written comments(I want to go through everything I write down in one place)
jump to the location in codes where I write this comment
Any suggestions? Thanks!

How to apply a patch with GitExtensions

Maybe below sounds a little bit stupid so sorry in advance.
I use Visual Studio 2019 and Git as version control. I am not using the integrated Git that comes with Visual Studio, instead I am using the standalone version of GitExtensions.
Honestly I am newbie wit Git. I had always used TFVC.
Now I have a diff file (file.diff) which has some changes and I need to apply it. I have some branches and I need to apply it in a concrete one.
I have googled but I have not found a detailed explanation on how to do it. In GitExtensions web site, the explanation is minimal and I honestly don't quite understand the patch process at all.
So I would need that someone guide me and be so kind to help me with a detailed step by step explanation (some screenshots would be highly appreciated) or tell me somewhere where this process is described in detail: web, free book, etc.
Sorry, I need to apply the patch to a production environment so this is my first time and I do not want to break nothing.

Gaim - How to develop a plugin? (Pidgin)

I need some of your help.
I searched everywhere on the internet, but I could not find how to create a plugin for Gaim, the predecessor of Pidgin.
I do NOT want to create a Pidgin plugin. I want to create a Gaim plugin, but since Gaim is very old, well, it is hard to find documentation for it.
(PS : If you know how to write a plugin for Gaim, please note I want to make one for Windows - not Linux.)
(PPS : I'm french. Sorry for my bad English.)
You're going to run into a number of issues here...
First off, Gaim hasn't existed for 15 years, and of course we (the Pidgin core team many of who got involved during the Gaim days) aren't going to support it for that reason.
Secondly, building on windows has always been a pain for us as we had to carry all of the dependencies. I imagine most of the links that you might find are all long dead because of the 15 years that have passed since that. That said you might be able to get away with using our win32-dev directory from https://data.imfreedom.org/pidgin/win32-dev.7z but of course that's completely untested and that directory is used to build the Pidgin 2.x.y releases.
Finally, as you've found out, most of the documentation from Gaim has been gone for a very long time. We did set up https://gaim.pidgin.im as a joke which was the last copy of the site we had before the rename, but there's not much there when it comes to development documentation. So your best bet is to look at existing plugins. I still have the source code for guifications1 available at https://keep.imfreedom.org/grim/guifications1/file/default.

Table for subject/course/section in sakai

I was trying to find a way to manually add data for the said tables but I couldn't find it. I also tried searching in google but I couldn't find a correct answer either.
Do you guys know what table do they represent? Thanks!
You can't create course sites without having defined at least one academic term; if you haven't done so, Sakai leaves you in the cold, and the only way to fix it is to populate the database table in question, CM_ACADEMIC_SESSION_T, manually, by using an INSERT query.
The Sakai documentation doesn't explain how to do this, or whether it really suffices, but you can ask the sakai-dev mailing list or go by the answers to this question provided there in the past (e.g. here or here) and hope they still apply. (This is typical for Sakai.)
An alternative is not to use course sites at all (I didn't trust them after discovering this) and use project sites instead.

Versioned cloud-based social code snippet management

It seems a lot to ask, but I'm looking for a cloud-based solution to managing code snippets. I am looking for:
Tags
User accounts (I want to be able to see all of my snippets on a single page)
syntax highlighting
versioning - myself or others should be able to edit my snippets to improve them and have revisions save so that I can go back and use an older version if I prefer.
straightforward UI with minimal advertising if any
Does anyone know of a solution which meets these requirements? If not, would anyone be interested in something like this? As a software engineer, after step zero (does it already exist), I'm perfectly willing to go onto step 1 (would other people use it? If so, make it).
www.codebarrel.com
it has everything you asked for
Sounds like Gist.
http://gist.github.com/
Except for the tags part. But it might be workable anyway.
I'm working on a site for this. The very rough (as in: barely works, but not even functional yet) initial version is here: https://github.com/jasongrout/snippets