You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@httpd.apache.org by Kai Engels <ka...@gmx.de> on 2005/09/21 21:03:53 UTC
patch to mod_arm4
Hello,
I write to this address since I have made some changes to the mod_arm4
module which I hope you will find usefull.
Patch it by unzipping the patch, changing into the mod_arm4 directory
and say
patch -p1 < mod_arm4_20052009.patch
Then change to the mod_arm4 source directory and say
autoreconf -ivf
./configure
make
make install
This should do the job. Check if apxs is in your PATH, otherwise use
"--with-apxs=path/where/apxs/is".
--------------------------------------
My changes are:
1. added a configure structure to the module
2. added a new metric to each transaction which allows to measure the
amount of bytes sent during that transaction. I currently use the
variable "bytes_sent" from the request_rec structure. I also tried
"clength" but it seemed not to give as good results as "bytes sent".
Maybe you guys can give me a hint which of them better suites my needs
since I made my decision on "try and error" but was not sure what
exactly each variable contains.
3. Added the environment variable "ARM_CORRELATOR" with the current
stringified correlator to the "subprocess_env" table in order to be able
to hand over the correlator to other processes (e.g. cgi scripts,
databases etc.). The apache server transaction can then be identified as
parent transaction by these processes (in case they interpret this
environment variable). I have currently instrumented sqlite and used the
same mechanism for this purpose.
I did not fix yet all compiler warnings (since I am not sure what
"warning: dereferencing type-punned pointer will break strict-aliasing
rules" exactly means). How shall I handle future changes to this module
(e.g. above mentioned compiler warnings)? Send them to this list again?
BTW: Is the arm4 module not listed on modules.apache.org? Or did I just
not see it?
Greetings
Kai
Re: patch to mod_arm4
Posted by Kai Engels <ka...@gmx.de>.
Hi Bill,
>
> Kai,
> mod_arm4 is not on modules.apache.org.
Ok, I am starting with a patch that adds the configure structure.
The code is almost not touched, I only removed some compiler warnings
(unused variables etc.)
I also changed the README accordingly and added a file called arm4.conf
which holds an example configuration.
Hope that is ok, even hope that a configure structure is wanted.
Other patches will follow..
Greetings
Kai
BTW: Why is it not on modules.apache.org?
Re: patch to mod_arm4
Posted by Bill Stoddard <bi...@wstoddard.com>.
William A. Rowe, Jr. wrote:
> Bill Stoddard wrote:
>
>> Bill Stoddard wrote:
>>
>>> Kai Engels wrote:
>>>
>>>> Hello,
>>>>
>>>> I write to this address since I have made some changes to the
>>>> mod_arm4 module which I hope you will find usefull.
>>>>
>>
>> Hello Kai,
>> Your patch is difficult to review because there are too many unrelated
>> changes. Please break the mod_arm4.c patch into smaller, independently
>> reviewable patches.
>
>
> Kai, before you say 'OMG, they are making me jump through hoops just to
> offer back all the things I've fixed!!!'...
>
> ...just know that Stoddard did the same thing to me 4+yrs ago, and now,
> heh, I'm how deep in Win32/Apache stuff? Listen to FirstBill LOL.
>
> Bill
Kai,
Just to drive the point home I'll get on my soap-box for a minute...
<soapbox>
One of the strengths of open source development is peer-review. A thriving open source project enables many
eyes to see every line of code going into the project which improves the quality of the project's code. As
open source developers (and you are an open source developer because you are submitting patches publically to
an open source project development mailing list) we have the responsibility to the development community to
make our patches as easy to review as possible. If I see a 1000 line patch come across the mailing list that
adds new functions, does some code reformatting, fixes a few bugs, etc., I and most of the other developers
here are just going to ignore it. If a patch is more than I can understand in maybe 30 minutes, I'm not
spending my time on it. That's why I suggested breaking your patch up into multiple self standing patches that
are self contained and easy to understand/consume. I can't eat the whole thing at once, but send it in bite
sized pieces and maybe I can help. Make sense?
</soapbox>
Thanks
Bill
Re: patch to mod_arm4
Posted by "William A. Rowe, Jr." <wr...@rowe-clan.net>.
Bill Stoddard wrote:
> Bill Stoddard wrote:
>
>> Kai Engels wrote:
>>
>>> Hello,
>>>
>>> I write to this address since I have made some changes to the
>>> mod_arm4 module which I hope you will find usefull.
>>>
>
> Hello Kai,
> Your patch is difficult to review because there are too many unrelated
> changes. Please break the mod_arm4.c patch into smaller, independently
> reviewable patches.
Kai, before you say 'OMG, they are making me jump through hoops just to
offer back all the things I've fixed!!!'...
...just know that Stoddard did the same thing to me 4+yrs ago, and now,
heh, I'm how deep in Win32/Apache stuff? Listen to FirstBill LOL.
Bill
Re: patch to mod_arm4
Posted by Kai Engels <ka...@gmx.de>.
Hi Bill,
>
> Patch 1: Add the environment variable "ARM_CORRELATOR" with the
> current stringified correlator to the "subprocess_env" table
>
>
And the last one, adding the environemtn variable
Besides the added environment variable: I moved the addition of
variables to any tables to the place where the stop_transaction is
registered, i.e. the environment variable and the other variables are
only "activated" in case the start_transaction was successfull.
The applying of patches shopuld work in any order (as far as I know
patch can handle this), but the order of the pacthes is
1. configure structure
2. arm_destroy_app
3. added metric
4. ARM_CORRELATOR environment
Uff
Hope it works
Greetings
Kai
Now a beer :-)
Re: patch to mod_arm4
Posted by Kai Engels <ka...@gmx.de>.
Hi Bill,
>
> Patch 3: bytes sent metric
>
Here is it. There is still the open question about the right variable to
use:
2. added a new metric to each transaction which allows to measure the
amount of bytes sent during that transaction. I currently use the
variable "bytes_sent" from the request_rec structure. I also tried
"clength" but it seemed not to give as good results as "bytes sent".
Maybe you guys can give me a hint which of them better suites my needs
since I made my decision on "try and error" but was not sure what
exactly each variable contains.
Any hints available? Thanks in advance
Greetings
Kai
Re: patch to mod_arm4
Posted by Bill Stoddard <bi...@wstoddard.com>.
Kai Engels wrote:
> Hi Bill
>
>>
>> Patch 2: Call to arm_destory_application
>>
>>
>>
> This is it. Just a call to arm destroy application() as the standard
> awaits it
> Greetings
> Kai
>
Committed.
Bill
Re: patch to mod_arm4
Posted by Kai Engels <ka...@gmx.de>.
Hi Bill
>
> Patch 2: Call to arm_destory_application
>
>
>
This is it. Just a call to arm destroy application() as the standard
awaits it
Greetings
Kai
Re: patch to mod_arm4
Posted by Bill Stoddard <bi...@wstoddard.com>.
Bill Stoddard wrote:
> Kai Engels wrote:
>
>> Hello,
>>
>> I write to this address since I have made some changes to the mod_arm4
>> module which I hope you will find usefull.
>>
Hello Kai,
Your patch is difficult to review because there are too many unrelated changes. Please break the mod_arm4.c
patch into smaller, independently reviewable patches.
Patch 1: Add the environment variable "ARM_CORRELATOR" with the current stringified correlator to the
"subprocess_env" table
Patch 2: Call to arm_destory_application
Patch 3: bytes sent metric
Patch 4: ???
Compile warnings... I have no idea what this means:
"warning: dereferencing type-punned pointer will break strict-aliasing rules"
what compiler are you using? I get no warning compiling mod_arm4 on RH/Suse Linux or Windows.
Bill
Re: patch to mod_arm4
Posted by Bill Stoddard <bi...@wstoddard.com>.
Kai Engels wrote:
> Hello,
>
> I write to this address since I have made some changes to the mod_arm4
> module which I hope you will find usefull.
>
> Patch it by unzipping the patch, changing into the mod_arm4 directory
> and say
>
> patch -p1 < mod_arm4_20052009.patch
>
> Then change to the mod_arm4 source directory and say
>
> autoreconf -ivf
> ./configure
> make
> make install
>
> This should do the job. Check if apxs is in your PATH, otherwise use
> "--with-apxs=path/where/apxs/is".
>
> --------------------------------------
> My changes are:
>
> 1. added a configure structure to the module
>
> 2. added a new metric to each transaction which allows to measure the
> amount of bytes sent during that transaction. I currently use the
> variable "bytes_sent" from the request_rec structure. I also tried
> "clength" but it seemed not to give as good results as "bytes sent".
> Maybe you guys can give me a hint which of them better suites my needs
> since I made my decision on "try and error" but was not sure what
> exactly each variable contains.
>
> 3. Added the environment variable "ARM_CORRELATOR" with the current
> stringified correlator to the "subprocess_env" table in order to be able
> to hand over the correlator to other processes (e.g. cgi scripts,
> databases etc.). The apache server transaction can then be identified as
> parent transaction by these processes (in case they interpret this
> environment variable). I have currently instrumented sqlite and used the
> same mechanism for this purpose.
>
> I did not fix yet all compiler warnings (since I am not sure what
> "warning: dereferencing type-punned pointer will break strict-aliasing
> rules" exactly means). How shall I handle future changes to this module
> (e.g. above mentioned compiler warnings)? Send them to this list again?
>
> BTW: Is the arm4 module not listed on modules.apache.org? Or did I just
> not see it?
> Greetings
> Kai
>
Kai,
mod_arm4 is not on modules.apache.org. Thanks for the patch, I'll review it 'soon'. Bug me if I don't get to
it within a week.
Thanks
Bill
Re: patch to mod_arm4
Posted by Kai Engels <ka...@gmx.de>.
Bill Stoddard wrote:
> Kai Engels wrote:
>
>> HI,
>> just wanted to move this thread to the top, since there was no
>> reaction to my patches
>> (I have splitted the one to 4 different) ?
>> Are they too bad :-) ? Or was it just forgotten ?
>>
>
> I've not forgotten, just really busy. One of the patches I can commit
> no problem. Need to look at the other 3.
>
> Bill
>
Hi Bill,
ok, no problem. I can wait.
Was just wondering...
:-)
Greetings
Kai
Re: patch to mod_arm4
Posted by Bill Stoddard <bi...@wstoddard.com>.
Kai Engels wrote:
> HI,
> just wanted to move this thread to the top, since there was no reaction
> to my patches
> (I have splitted the one to 4 different) ?
> Are they too bad :-) ? Or was it just forgotten ?
>
I've not forgotten, just really busy. One of the patches I can commit no problem. Need to look at the other 3.
Bill
Re: patch to mod_arm4
Posted by Kai Engels <ka...@gmx.de>.
HI,
just wanted to move this thread to the top, since there was no reaction
to my patches
(I have splitted the one to 4 different) ?
Are they too bad :-) ? Or was it just forgotten ?
Thanks in advance
Greetings
Kai
> Hello,
>
> I write to this address since I have made some changes to the mod_arm4
> module which I hope you will find usefull.
>
> Patch it by unzipping the patch, changing into the mod_arm4 directory
> and say
>
> patch -p1 < mod_arm4_20052009.patch
>
> Then change to the mod_arm4 source directory and say
>
> autoreconf -ivf
> ./configure
> make
> make install
>
> This should do the job. Check if apxs is in your PATH, otherwise use
> "--with-apxs=path/where/apxs/is".
>
> --------------------------------------
> My changes are:
>
> 1. added a configure structure to the module
>
> 2. added a new metric to each transaction which allows to measure the
> amount of bytes sent during that transaction. I currently use the
> variable "bytes_sent" from the request_rec structure. I also tried
> "clength" but it seemed not to give as good results as "bytes sent".
> Maybe you guys can give me a hint which of them better suites my needs
> since I made my decision on "try and error" but was not sure what
> exactly each variable contains.
>
> 3. Added the environment variable "ARM_CORRELATOR" with the current
> stringified correlator to the "subprocess_env" table in order to be
> able to hand over the correlator to other processes (e.g. cgi scripts,
> databases etc.). The apache server transaction can then be identified
> as parent transaction by these processes (in case they interpret this
> environment variable). I have currently instrumented sqlite and used
> the same mechanism for this purpose.
>
> I did not fix yet all compiler warnings (since I am not sure what
> "warning: dereferencing type-punned pointer will break strict-aliasing
> rules" exactly means). How shall I handle future changes to this
> module (e.g. above mentioned compiler warnings)? Send them to this
> list again?
>
> BTW: Is the arm4 module not listed on modules.apache.org? Or did I
> just not see it?
> Greetings
> Kai
>