I've got a module.pmod acting as a static class for some modules. In this class there is an error, but it didn't show up until I made another error in the same class (with newly added code)
This means I've been using _some_ version of my module.pmod other than I was expecting. This is very, very strange and frustrating.
Even more, when you take into account that I regularly start/stop roxen, using the startup script, killall ... and killall -9 ..., roxen is started with the --remove-dumped option, and the error even went by unnoticed after a full system (cold) reboot, which left the machine down for at least 48 hours.
Did pike or Roxen not notice the error or was the code not used at all?
Greetings,
Coen
__________________________________________________________ Deze e-mail en de inhoud is vertrouwelijk en uitsluitend bestemd voor de geadresseerde(n). Indien u niet de geadresseerde bent van deze e-mail verzoeken wij u dit direct door te geven aan de verzender door middel van een reply e-mail en de ontvangen e-mail uit uw systemen te verwijderen. Als u geen geadresseerde bent, is het niet toegestaan om kennis te nemen van de inhoud, deze te kopieren, te verspreiden, bekend te maken aan derden noch anderszins te gebruiken.
The information contained in this e-mail is confidential and may be legally privileged. It is intended solely for the addressee. If you are not the intended recipient, any disclosure, copying, distribution or any action taken or omitted to be taken in reliance on it, is prohibited and may be unlawful. Please notify us immediately if you have received it in error by reply e-mail and then delete this message from your system. __________________________________________________________
Did pike or Roxen not notice the error or was the code not used at all?
What kind of error, and how can it be triggered? Can you produce the steps to trigger the error in the original module, now that you've found it? And are those the same steps production use of the module follows?
The file is on the same system as the Roxen server. I was referring to a constant in the module.pmod itself with a dot prefixed ( '.EMPTY' instead of 'EMPTY', of course, no quotes)
I haven't taken the time at the moment to reproduce the problem and I seriously doubt if I can. Now that the error is spotted, the module only compiles now if the error is fixed. One thing I can say though, is that I've equipped every Roxen module with a creation time stamp because I had a gut feeling before that after reloading a module and it's related code Roxen didn't always use the latest version of the code (either correct or incorrect)
__________________________________________________________ Deze e-mail en de inhoud is vertrouwelijk en uitsluitend bestemd voor de geadresseerde(n). Indien u niet de geadresseerde bent van deze e-mail verzoeken wij u dit direct door te geven aan de verzender door middel van een reply e-mail en de ontvangen e-mail uit uw systemen te verwijderen. Als u geen geadresseerde bent, is het niet toegestaan om kennis te nemen van de inhoud, deze te kopieren, te verspreiden, bekend te maken aan derden noch anderszins te gebruiken.
The information contained in this e-mail is confidential and may be legally privileged. It is intended solely for the addressee. If you are not the intended recipient, any disclosure, copying, distribution or any action taken or omitted to be taken in reliance on it, is prohibited and may be unlawful. Please notify us immediately if you have received it in error by reply e-mail and then delete this message from your system. __________________________________________________________
I haven't taken the time at the moment to reproduce the problem and I seriously doubt if I can. Now that the error is spotted, the module only compiles now if the error is fixed. One thing I can say though, is that I've equipped every Roxen module with a creation time stamp because I had a gut feeling before that after reloading a module and it's related code Roxen didn't always use the latest version of the code (either correct or incorrect)
In Roxen, I've seen caching to sometimes be a bit to thorougly (editing files does not clear them in cache automatically). However a Roxen restart and /or Flush Cash from the admin interface always reloads them.
Persisten cash for modules, between Roxen starts, has never happend to me.
Well, it seems as if it did happen to me.
Marc Dirix wrote:
I haven't taken the time at the moment to reproduce the problem and I seriously doubt if I can. Now that the error is spotted, the module only compiles now if the error is fixed. One thing I can say though, is that I've equipped every Roxen module with a creation time stamp because I had a gut feeling before that after reloading a module and it's related code Roxen didn't always use the latest version of the code (either correct or incorrect)
In Roxen, I've seen caching to sometimes be a bit to thorougly (editing files does not clear them in cache automatically). However a Roxen restart and /or Flush Cash from the admin interface always reloads them.
Persisten cash for modules, between Roxen starts, has never happend to me.
__________________________________________________________ Deze e-mail en de inhoud is vertrouwelijk en uitsluitend bestemd voor de geadresseerde(n). Indien u niet de geadresseerde bent van deze e-mail verzoeken wij u dit direct door te geven aan de verzender door middel van een reply e-mail en de ontvangen e-mail uit uw systemen te verwijderen. Als u geen geadresseerde bent, is het niet toegestaan om kennis te nemen van de inhoud, deze te kopieren, te verspreiden, bekend te maken aan derden noch anderszins te gebruiken.
The information contained in this e-mail is confidential and may be legally privileged. It is intended solely for the addressee. If you are not the intended recipient, any disclosure, copying, distribution or any action taken or omitted to be taken in reliance on it, is prohibited and may be unlawful. Please notify us immediately if you have received it in error by reply e-mail and then delete this message from your system. __________________________________________________________
cschalkwijk wrote:
I've got a module.pmod acting as a static class for some modules. In this class there is an error, but it didn't show up until I made another error in the same class (with newly added code)
Did pike or Roxen not notice the error or was the code not used at all?
I would presume the latter. Could the timestamp on the module have been off because of inadvertent backward system time corrections? Is the file on a remote filesystem with clock skew relative to the server running Pike/Roxen?
pike-devel@lists.lysator.liu.se