Edgewall Software
Modify

Opened 16 years ago

Closed 16 years ago

#6787 closed defect (worksforme)

Trac 0.10.4 - ticket module provider fails in background

Reported by: artur.kwiatkowski@… Owned by: Jonas Borgström
Priority: normal Milestone:
Component: ticket system Version: 0.10.4
Severity: normal Keywords: mysql UnicodeDecodeError needinfo
Cc: Branch:
Release Notes:
API Changes:
Internal Changes:

Description

hi there,

I've got a pretty bad problem which for i dont know the solution. I tried to find the reason of this problem but seriously - i dont have a clue, what is going on, i've tested something like 20 potential causes but any of them wasnt right.

My server configuration is:

  • python virtual, which is like maded from real python which exist on machine, but i've musted to choose virtual version because this is a shared machine and i dont have a root access
  • database is mysql 5
  • trac is in version 0.10.4 - main cause - number of plugins available for version 0.10.4 is greather than it is in version 0.11
  • plugins which I have installed globally: aztech callendar, account manager, extended xml rpc, svn auth, svn hooks, webadmin, xmlrpc

And what is my problem: Well it's kinda hard to describe it so I try like this: Im turning up the processes: svn server in daemonized mode, trac in daemonized mode

after some time - I cant say how log it is - Im entering the page on any of the projects and in the timeline there is a error: (TicketChangeProvider) UnicodeDecodeError: 'utf8' codec can't decode bytes in position 3-5: invalid data and the similiar problem is when I click on the browser tab.

simple restart of trac by killing the process and turning it up again clears this error and timeline and browser are working good - there is no error, but after some part of time (few hours) the problem is coming back.

I even dont have any chance to to point any of You guys what can be the main cause of the problem. In project logs - I readed every single line in every log file - there are no specific log messages which would point to source of the problem.

In the crontab I have few tasks wich are running every 10 minutes:

  1. bash script which is checking that trac and svn process are alive - if not, then they are automaticly restored. And I think that this is not an cause of my problem, cuz there are no more than 1 trac process and 1 svn process running at the same time after bash script makes his check.
  2. email2trac plugin mail converter - also a handwritten plugin that gets email from a file and puts it into the trac system - but when ticket is added - directly after this action the problem dont shows.

maybe some of You guys have a similiar problem ? i really dont know what is going on that those two trac modules receive an error.

any hints would be appreciated ! thanks for any help !

Attachments (0)

Change History (5)

comment:1 by artur.kwiatkowski@…, 16 years ago

Update: I know that this problem is related to repository checkins option in timeline.

just noticed the error:

Repository checkins event provider (ChangesetModule) failed:

UnicodeDecodeError: 'utf8' codec can't decode bytes in position 3-5: invalid data

on one of the projects - thats funny now.

comment:2 by Piotr Kuczynski <piotr.kuczynski@…>, 16 years ago

Component: generalticket system
Milestone: 0.10.6

comment:3 by Christian Boos, 16 years ago

Keywords: mysql needinfo added
Milestone: 0.10.6

Well, see what's written on 0.10.6: we actually should move tickets away from that milestone.

For this ticket, the best advice I can give is to have a try at upgrading to 0.11-stable (not 0.11) or wait for 0.11.1, as the r7286 changes to MySQL's unicode handling could possibly help here.

If the issue persists despite of the above upgrade, then we could schedule it for 0.11.1 or 0.11.2 (hence the needinfo flag).

(I'm no MySQL expert, but I think the encoding for text fields in the tables have to be changed to utf_bin, see MySqlDb - jonas, can you confirm and give a hint how to do this?)

comment:4 by jd@…, 16 years ago

I can duplicate similar problems on PostgreSQL:

I am on .10.5

Traceback (most recent call last):
  File "/usr/lib/python2.5/site-packages/trac/web/main.py", line 406, in dispatch_request
    dispatcher.dispatch(req)
  File "/usr/lib/python2.5/site-packages/trac/web/main.py", line 237, in dispatch
    resp = chosen_handler.process_request(req)
  File "/usr/lib/python2.5/site-packages/trac/ticket/web_ui.py", line 313, in process_request
    get_reporter_id(req, 'author'))
  File "/usr/lib/python2.5/site-packages/trac/ticket/web_ui.py", line 631, in _insert_ticket_data
    for change in self.grouped_changelog_entries(ticket, db):
  File "/usr/lib/python2.5/site-packages/trac/ticket/web_ui.py", line 678, in grouped_changelog_entries
    changelog = ticket.get_changelog(when=when, db=db)
  File "/usr/lib/python2.5/site-packages/trac/ticket/model.py", line 298, in get_changelog
    for t, author, field, oldvalue, newvalue, permanent in cursor:
  File "/usr/lib/python2.5/site-packages/trac/db/util.py", line 40, in __iter__
    row = self.cursor.fetchone()
  File "/usr/lib/python2.5/encodings/utf_8.py", line 16, in decode
    return codecs.utf_8_decode(input, errors, True)
UnicodeDecodeError: 'utf8' codec can't decode bytes in position 51-52: invalid data

in reply to:  4 comment:5 by Christian Boos, 16 years ago

Resolution: worksforme
Status: newclosed

Replying to jd@…:

I can duplicate similar problems on PostgreSQL:

I am on .10.5

0.11.1 should have much improved MySQL support, please upgrade and look at MySqlDb for details about setting up your database encodings.

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain Jonas Borgström.
The resolution will be deleted. Next status will be 'reopened'.
to The owner will be changed from Jonas Borgström to the specified user.

Add Comment


E-mail address and name can be saved in the Preferences .
 
Note: See TracTickets for help on using tickets.