[jonah] Re: I want to fix DB Error: constraint violation error.
Rob Rosenfeld
rosenfeld at alum.mit.edu
Wed Feb 16 13:51:04 PST 2005
Quoting Zachary Denison <zacharydenison at yahoo.com>:
> Hello,
>
> I just checked out jonah from the cvs today (I have
> the latest horde etc... from cvs) and am trying to
> debug a problem in jonah where you try to add a new
> rss feed and you get a constraint violation. this
> problem seems to affect only adding new rss feeds. I
> seem to have found the cause of the problem but I am
> not sure where to begin the fixing of it. If you
> could give me a small pointer where to start, I can
> fix it. Also what is the proper way to submit a
> change like this to you so that you can commit it so
> that everyone benefits from it, I am assuming that
> posting a diff to the entire list is not the best
> way..
>
> I seem to have localized the problem to:
>
> ~jonah/lib/News/sql.php
>
> if (empty($info['channel_id'])) {
>
> ----> here the value is 0, this is correct.
>
> $info['channel_id'] =
> $this->_db->nextId('jonah_channels');
>
> ----> here the value is set to that of one which
> already exists in the table, instead of returning
> 1+(the last channel_id) -- here is where I need some
> help, how is nextId determining the next id, because
> mysql_insert_id should not work here... since we
> havent inserted anything. If you can point me in the
> right direction, I would love to fix this bug.
>
> if (is_a($info['channel_id'],
> 'PEAR_Error')) {
> Horde::logMessage($info['channel_id'],
> __FILE__, __LINE__, PEAR_LOG_ERR);
> return $info['channel_id'];
>
>
I noticed this, too. I fix it by incrementing the initial value on the
last line of script.feeds.sql -ALTER SEQUENCE jonah_channels_seq
RESTART WITH 122;
+ALTER SEQUENCE jonah_channels_seq RESTART WITH 123;
More information about the jonah
mailing list