addressalign-toparrow-leftarrow-rightbackbellblockcalendarcameraccwcheckchevron-downchevron-leftchevron-rightchevron-small-downchevron-small-leftchevron-small-rightchevron-small-upchevron-upcircle-with-checkcircle-with-crosscircle-with-pluscontroller-playcrossdots-three-verticaleditemptyheartexporteye-with-lineeyefacebookfolderfullheartglobegmailgooglegroupshelp-with-circleimageimagesinstagramFill 1launch-new-window--smalllight-bulblinklocation-pinm-swarmSearchmailmessagesminusmoremuplabelShape 3 + Rectangle 1ShapeoutlookpersonJoin Group on CardStartprice-ribbonprintShapeShapeShapeShapeImported LayersImported LayersImported Layersshieldstartickettrashtriangle-downtriangle-uptwitteruserwarningyahoo

Re: [postgresql-1] 1337 h4x0ring for Fun and Profit(TM)

From: Steve C.
Sent on: Thursday, August 12, 2010 5:48 PM
After listening to the talk and questions/comments, reading these emails 
and reading the wiki it finally dawned on me that although the talk was 
oriented to the "non-coder" there were many coder-oriented assumptions. 
Being a non-coder may also imply unfamiliarity with one or more of the 
steps involved in the fetch/patch/configur­e/compile process and some 
hand-holding may be required.

Sure, the typical BSD/Linux user probably has most of the pieces 
installed or readily available but a typical Windows user may not.

A couple additions to the wiki might be useful (and if I get time, I may 
take a crack at adding them).

One would be prerequisites. "So you want to review a patch..."
C-compiler
gmake
patch
other libs/tools (readline, etc.)
...
The above might be separated out to be oriented to users of different OSs.

The other would be a high-level overview of the process:
Select patch for review
Announce your planned review??
Get (ftp snapshot/untar, git, ...) recent copy of clean source code
Get patch (where? how?)
Apply patch
Build
Test (include caveats to protect against accidental cross-pollination 
with installed versions of PG)
Provide feedback

The wiki concentrates on the test/feedback portion of the process. It 
may also be useful to include a section on where and how to ask for help.

Cheers,
Steve



On 08/12/[masked]:16 PM, VM Brasseur wrote:
> Igor, that's a GREAT step toward dispelling the intimidation for
> non-coders, thanks!.  As a non- (OK, former-) coder I'll gladly edit
> the wiki (after your changes are reviewed/posted) to try to make it
> even more approachable.  I've spent years translating 'geek' to
> 'normal' and back again so it has some chance of hitting the "more
> approachable" target.
>
>
> On Thu, Aug 12, 2010 at 14:52, Igor Polishchuk<[addre­ss removed]>  wrote:
>    
>> David,
>> I understand the goal is to involve more people into the patch reviewing
>> process, even if they are just users of Postgres and don't necessary
>> understand all the intricacies of Postgres code, C and the development.
>> However, the reviewing still requires some knowledge of the process, which
>> creates an entry threshold, no mater how small or big. To reduce this
>> threshold, more details need to be added to
>> http://wiki.postg...­, or perhaps even a
>> separate a step-by-step instruction for non-hackers might be created.
>>
>> To figure out what is the review process and what I'm missing, I've
>> attempted a review of the simplest patch I could find "INSERT and
>> parentheses" from CommitFest 2010-09.
>>
>> Perhaps you could look at the result, and if some important omissions are
>> noticed, they might be added to this clarifying document.
>> Otherwise, below are the questions which I had going through the review
>> process. Perhaps other people non-involved in postgres development may have
>> similar questions:
>>
>> === How do I download/update the current source tree? ===
>>
>> We may just have a link or an excerpt from the Postgres documentation here:
>> There are several ways to obtain the source tree. Occasional developers can
>> just get the most recent source tree snapshot from
>> ftp://ftp.postgresql­.org/pub/snapshot/de­v.
>> If I'm using a snapshot, I need to get a new one every day, is it right?
>> It might be nice to add a link to a document describing for newbies how to
>> get the source from git.
>>
>> === Install postgres from the sourse ===
>> What exactly should we do with debugging configuration? Non-hacker users are
>> not necessary familiar with the Postgres debugging features. Should it look
>> like this text adopted from the Postgres manual with the addition of the
>> debugging options? Is it missing something?
>>
>> ./configure  --enable-cassert --enable-debug
>> gmake
>> su
>> gmake install
>> adduser postgres
>> mkdir /usr/local/pgsql/dat­a
>> chown postgres /usr/local/pgsql/dat­a
>> su - postgres
>> /usr/local/pgsql/bin­/initdb -D /usr/local/pgsql/dat­a
>> /usr/local/pgsql/bin­/postgres -D /usr/local/pgsql/dat­a>logfile 2>&1&
>> /usr/local/pgsql/bin­/createdb test
>> /usr/local/pgsql/bin­/psql test
>>
>> === How to get the patch text ===
>> Do I always need to copy and paste the diff from my browser?
>> How can I get the diff as a file?
>>
>> ==  How to apply the patch text ===
>> What are the reccomended parameters for the patch command?
>> Is this sufficient?:
>>
>> patch  -b -p1<  yourpatchfile.patch
>>
>> === Compiling with the patch ===
>> What do I do after the patch is applied to the source code?
>> Should I run "gmake install" again?
>> Can I somehow only recompile only the affected files instead of doing a full
>> install?
>> Besides the obvious failure to build, what should I look at to make sure the
>> build is successful?
>>
>> === Testing the patch ===
>> What are the standard testing steps to make sure the patch does not brake
>> anything?
>> Should all the regression steps be provided with the patch?
>>
>>
>> If we really want to involve as many people as possible, even without C
>> knowledge, the document should probably assert what was said on the August
>> meet-up, that everybody is welcome to participate, and a review should not
>> necessary include the codding review part.
>> Frankly, I still have my little doubts. Do we really think that such partial
>> reviews add much value?
>> Anyway, these are just my two cents.
>>
>> Regards
>> Igor
>>
>>
>>
>> ____________________­____________
>> From: David Fetter<[address removed]>
>> To: [address removed]
>> Sent: Wed, August 11,[masked]:11:54 AM
>> Subject: [postgresql-1] 1337 h4x0ring for Fun and Profit(TM)
>>
>> Folks,
>>
>> What was it exactly about the process of patch reviewing that you
>> found confusing?  "Everything" is one possible answer, and in either
>> case, we'd love to have people test out the instructions.
>>
>> Thanks to the speakers, our generous hosts at iParadigms, and to those
>> who participated :)
>>
>> Cheers,
>> David.
>> --
>> David Fetter<[address removed]>  http://fetter.org...­
>> Phone: [masked]  AIM: dfetter666  Yahoo!: dfetter
>> Skype: davidfetter      XMPP: [address removed]
>> iCal: webcal://www.tripit.­com/feed/ical/people­/david74/tripit.ics
>>
>> Remember to vote!
>> Consider donating to Postgres: http://www.postgr...­
>>
>>
>>
>> --
>> Please Note: If you hit "REPLY", your message will be sent to everyone on
>> this mailing list ([address removed])
>> http://www.meetup...­
>> This message was sent by David Fetter ([address removed]) from The San
>> Francisco Bay Area PostgreSQL Meetup Group.
>> To learn more about David Fetter, visit his/her member profile:
>> http://www.meetup...­
>> To unsubscribe or to update your mailing list settings, click here:
>> http://www.meetup...­
>> Meetup, PO Box 4668 #37895 New York, New York[masked] |
>> [address removed]
>>
>>
>>
>>
>>
>> --
>> Please Note: If you hit "REPLY", your message will be sent to everyone on
>> this mailing list ([address removed])
>> This message was sent by Igor Polishchuk ([address removed]) from The
>> San Francisco Bay Area PostgreSQL Meetup Group.
>> To learn more about Igor Polishchuk, visit his/her member profile
>> To unsubscribe or to update your mailing list settings, click here
>>
>> Meetup, PO Box 4668 #37895 New York, New York[masked] |
>> [address removed]
>>      
>
>
> --
> Please Note: If you hit "REPLY", your message will be sent to everyone on this mailing list ([address removed])
> http://www.meetup...­
> This message was sent by VM Brasseur ([address removed]) from The San Francisco Bay Area PostgreSQL Meetup Group.
> To learn more about VM Brasseur, visit his/her member profile: http://www.meetup...­
> To unsubscribe or to update your mailing list settings, click here: http://www.meetup...­
> Meetup, PO Box 4668 #37895 New York, New York[masked] | [address removed]
>
>
>
>    

People in this
Meetup are also in:

Sign up

Meetup members, Log in

By clicking "Sign up" or "Sign up using Facebook", you confirm that you accept our Terms of Service & Privacy Policy