Forum OpenACS Q&A: Re: Long-running AOLServer is forgetful?

Collapse
Posted by Janine Ohmer on
The Twilight Zone music is really blaring now...

I modified the -html_p parameter to forum::message::new, renaming it -format.  There are no traces of html_p left anywhere that matters (I'm on Oracle):

[janine@pacad2 forums]$ fgrep -rl html_p *
sql/oracle/upgrade-0.1d-0.2d.sql
sql/oracle/upgrade-0.4d-0.5d.sql
sql/postgresql/forums-messages-create.sql
sql/postgresql/forums-messages-package-create.sql
sql/postgresql/upgrade-0.1d-0.2d.sql

However, every time I restart the server, it reverts back to thinking that the parameter is called -html_p, and when I call it with -format I get an error.  I turn on watching for the forums package and go into tcl/messages-post.tcl and add a comment to the ::new function.  Voila, everything works again until the next restart, even if I remove the comment.

I've even verified that it thinks I should be using -html_p by changing the name back in message-post.tcl and verifying that the error goes away.  This is truly bizarre.

Collapse
Posted by Andrew Piskorski on
At server startup, are you somehow sourcing in a second older copy of the forum::message::new Tcl proc from elsewhere in your AOLserver? Do you see anything suspicious in your server log up though the "Notice: Done loading OpenACS."?

Hm, I haven't paid any attention yet to how the new Tcl service contracts work. Is it possible that some service contract type thing is reading the PL/SQL function definitions with the "html_p" switch and dynamically defining Tcl procs that match? I kind of doubt it, but...