Forum OpenACS Q&A: rowid vs oid and parens and/or errors

Collapse
Posted by Bob OConnor on

Errors: Here's what happens: A user tries to log on to the acs system after having registered.... Say he decides not to wait for the email and tries to log in. ... server error!

Error is in first select statement in /register/awaiting-email- verification.tcl

Error 1: Postgresql doesn't use rowid so the Select needs to be re-written as
... oid as rowid ...

Error 2: Multiple rows returned because in pseudocode
Select... user_id = 9 and user_state =... or user_state= ...
THis is fixed with parens to make the logic right.
Select... user_id = 9 and (user_state =... or user_state= ...)

This was reported in sdm as Bug 949

Discussion:

I am somewhat surprised to find this error in 3.2.4. I would have expected that it would have been found in earlier versions. So, the first error is a difference between Oracle and Postgresql The Second error is a logic error and probably has been there for years...

I know there are other errors like this and I'll look for more but, wouldn't be helpful for the SDM to have a "within package text SEARCH?" I would love to search for "rowid" and see if this was a reported bug, perhaps in another module etc...

I'm looking forward to 3.2.5. Will there be versions like 3.2.6 or are we on to the 4.x series ? 4x is a major rewrite and being software will have simular bugs...
OR
is this just "A Programmer's Life: bugs will always be found? -Bob

Collapse
Posted by Don Baccus on
3.2.4's been out for a *long* time, we more or less dropped our effort  on it.

You've probahly read some of the criticisms of 4.x, i.e. the fact that  in many ways it's not complete or ready for prime time.  That kind of messed us up as we were pumped to start porting soon after it was released then were somewhat deflated by the news that it (ummm) sucks in some (not all!) ways.

Keep in mind that the group actively involved in helping out with tasks was *far* smaller as recently as six months ago.  We've now got a lot more volunteers, as well as people using the code, reporting bugs and often fixes.

What a luxury!

The current plan is to release at least two or three more 3.2.* updates, say every three months or so.  3.2.5 looks to be very solid,  but if need be we could release a 3.2.6 in more like a couple of months.  These will strictly be maintenance releases.  Roberto's setting up a "contrib" mechanism for user add-ons (like the back-port of the db api).  The SDM will be enhanced with Pascal's updates so we can tie patches submitted to the SDM and applied to bug reports.

Should help a lot.

Jonathan is working on 3.2.5 RPMs this weekend so it looks like Roberto will be ready to announce on Sunday? Monday?  Very soon.