Error syncing RTM with recurring tasks

Bug #517569 reported by Chris Johnston on 2010-02-05
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Getting Things GNOME!
High
Luca Invernizzi

Bug Description

** (gtg:13120): CRITICAL **: atk_object_set_name: assertion `name != NULL' failed
Exception in thread Thread-4:
Traceback (most recent call last):
  File "/usr/lib/python2.6/threading.py", line 525, in __bootstrap_inner
    self.run()
  File "/usr/lib/python2.6/threading.py", line 477, in run
    self.__target(*self.__args, **self.__kwargs)
  File "/usr/share/gtg/GTG/plugins/rtm_sync/syncEngine.py", line 83, in synchronize
    self.synchronizeWorker()
  File "/usr/share/gtg/GTG/plugins/rtm_sync/syncEngine.py", line 111, in synchronizeWorker
    current_remote_ids = set(map(lambda t: t.id, remote_tasks))
  File "/usr/share/gtg/GTG/plugins/rtm_sync/syncEngine.py", line 111, in <lambda>
    current_remote_ids = set(map(lambda t: t.id, remote_tasks))
  File "/usr/share/gtg/GTG/plugins/rtm_sync/genericTask.py", line 54, in <lambda>
    id = property(lambda self: self._get_id())
  File "/usr/share/gtg/GTG/plugins/rtm_sync/rtmTask.py", line 54, in _get_id
    return self.__get_rtm_task_attribute("id")
  File "/usr/share/gtg/GTG/plugins/rtm_sync/rtmTask.py", line 61, in __get_rtm_task_attribute
    return getattr(self.task.task, attr)
AttributeError: 'list' object has no attribute 'id'

Related branches

Changed in gtg:
importance: Undecided → High
Changed in gtg:
status: New → Fix Committed
assignee: nobody → Luca Invernizzi (invernizzi)
milestone: none → 0.3
Luca Invernizzi (invernizzi) wrote :

Hi Chris,
thanks for your tests. I keep on being unable to reproduce these bugs, so your contribution is very useful.
 The patch should be in the daily repository in the next hour.

For the future, please run gtg in debug mode (gtg -d).
Moreover, it's more handy if you get the version of gtg to test directly from our code repository.
Here's how you can do it:

you'll need a program called bazaar:
    sudo aptitude install bazaar

and, for the branch you want to test:
    bzr branch A_BRANCH
    cd A_BRANCH
    ./scripts/debug.sh
where you have to substitute A_BRANCH with some branch name (like lp:gtg for trunk).
A good guide for that is here: http://live.gnome.org/gtg/contributing

bye!

Do you have any recurring tasks in RTM?

Luca Invernizzi (invernizzi) wrote :

in my test rtm account, I do.

Chris Johnston (cjohnston) wrote :

I believe this is the same error: using gtg -d... So without posting a list of all of my tasks, here is where I believe the problem starts.. Plus the errors:

2010-02-06 18:28:05,527 - DEBUG - rtmTask:__log:229 - getting a rtm task attribute(2): [dotted <task_0> : added, completed, deleted, due, estimate, has_due_time, id, postponed, priority, dotted <task_1> : added, completed, deleted, due, estimate, has_due_time, id, postponed, priority, dotted <task_2> : added, completed, deleted, due, estimate, has_due_time, id, postponed, priority]
Exception in thread Thread-4:
Traceback (most recent call last):
  File "/usr/lib/python2.6/threading.py", line 525, in __bootstrap_inner
    self.run()
  File "/usr/lib/python2.6/threading.py", line 477, in run
    self.__target(*self.__args, **self.__kwargs)
  File "/usr/share/gtg/GTG/plugins/rtm_sync/syncEngine.py", line 83, in synchronize
    self.synchronizeWorker()
  File "/usr/share/gtg/GTG/plugins/rtm_sync/syncEngine.py", line 111, in synchronizeWorker
    current_remote_ids = set(map(lambda t: t.id, remote_tasks))
  File "/usr/share/gtg/GTG/plugins/rtm_sync/syncEngine.py", line 111, in <lambda>
    current_remote_ids = set(map(lambda t: t.id, remote_tasks))
  File "/usr/share/gtg/GTG/plugins/rtm_sync/genericTask.py", line 54, in <lambda>
    id = property(lambda self: self._get_id())
  File "/usr/share/gtg/GTG/plugins/rtm_sync/rtmTask.py", line 54, in _get_id
    return self.__get_rtm_task_attribute("id")
  File "/usr/share/gtg/GTG/plugins/rtm_sync/rtmTask.py", line 65, in __get_rtm_task_attribute
    return getattr(self.task.task, attr)
AttributeError: 'list' object has no attribute 'id'

Changed in gtg:
status: Fix Committed → New
Chris Johnston (cjohnston) wrote :

Here is the error when running from lp:gtg

chris@andromeda:~/gtg$ ./scripts/debug.sh
Setting XDG vars to use default dataset.
Exception in thread Thread-6:
Traceback (most recent call last):
  File "/usr/lib/python2.6/threading.py", line 527, in __bootstrap_inner
    self.run()
  File "/usr/lib/python2.6/threading.py", line 479, in run
    self.__target(*self.__args, **self.__kwargs)
  File "/home/chris/gtg/GTG/plugins/rtm_sync/syncEngine.py", line 83, in synchronize
    self.synchronizeWorker()
  File "/home/chris/gtg/GTG/plugins/rtm_sync/syncEngine.py", line 111, in synchronizeWorker
    current_remote_ids = set(map(lambda t: t.id, remote_tasks))
  File "/home/chris/gtg/GTG/plugins/rtm_sync/syncEngine.py", line 111, in <lambda>
    current_remote_ids = set(map(lambda t: t.id, remote_tasks))
  File "/home/chris/gtg/GTG/plugins/rtm_sync/genericTask.py", line 54, in <lambda>
    id = property(lambda self: self._get_id())
  File "/home/chris/gtg/GTG/plugins/rtm_sync/rtmTask.py", line 54, in _get_id
    return self.__get_rtm_task_attribute("id")
  File "/home/chris/gtg/GTG/plugins/rtm_sync/rtmTask.py", line 65, in __get_rtm_task_attribute
    return getattr(self.task.task, attr)
AttributeError: 'list' object has no attribute 'id'

chris@andromeda:~/gtg$

Changed in gtg:
status: New → Confirmed
Changed in gtg:
status: Confirmed → In Progress
Luca Invernizzi (invernizzi) wrote :

I was finally able to reproduce it, which makes it much easier to fix it.
Chris, please try the branch lp:~gtg-user/gtg/rtm-fix .

Chris Johnston (cjohnston) wrote :

chris@titan:~/rtm-fix$ ./gtg
/usr/share/themes/Human/gtk-2.0/gtkrc:85: Murrine configuration option "gradients" is no longer supported and will be ignored.
the following line is important
dotted <task> : added, completed, deleted, due, estimate, has_due_time, id, postponed, priority
the following line is important
dotted <task> : added, completed, deleted, due, estimate, has_due_time, id, postponed, priority
the following line is important
dotted <task> : added, completed, deleted, due, estimate, has_due_time, id, postponed, priority
the following line is important
dotted <task> : added, completed, deleted, due, estimate, has_due_time, id, postponed, priority
the following line is important
dotted <task> : added, completed, deleted, due, estimate, has_due_time, id, postponed, priority
the following line is important
dotted <task> : added, completed, deleted, due, estimate, has_due_time, id, postponed, priority
the following line is important
dotted <task> : added, completed, deleted, due, estimate, has_due_time, id, postponed, priority
the following line is important
dotted <task> : added, completed, deleted, due, estimate, has_due_time, id, postponed, priority
the following line is important
dotted <task> : added, completed, deleted, due, estimate, has_due_time, id, postponed, priority
the following line is important
dotted <task> : added, completed, deleted, due, estimate, has_due_time, id, postponed, priority
the following line is important
dotted <task> : added, completed, deleted, due, estimate, has_due_time, id, postponed, priority
the following line is important
[dotted <task_0> : added, completed, deleted, due, estimate, has_due_time, id, postponed, priority, dotted <task_1> : added, completed, deleted, due, estimate, has_due_time, id, postponed, priority, dotted <task_2> : added, completed, deleted, due, estimate, has_due_time, id, postponed, priority, dotted <task_3> : added, completed, deleted, due, estimate, has_due_time, id, postponed, priority]
Exception in thread Thread-4:
Traceback (most recent call last):
  File "/usr/lib/python2.6/threading.py", line 527, in __bootstrap_inner
    self.run()
  File "/usr/lib/python2.6/threading.py", line 479, in run
    self.__target(*self.__args, **self.__kwargs)
  File "/home/chris/rtm-fix/GTG/plugins/rtm_sync/syncEngine.py", line 83, in synchronize
    self.synchronizeWorker()
  File "/home/chris/rtm-fix/GTG/plugins/rtm_sync/syncEngine.py", line 111, in synchronizeWorker
    current_remote_ids = set(map(lambda t: t.id, remote_tasks))
  File "/home/chris/rtm-fix/GTG/plugins/rtm_sync/syncEngine.py", line 111, in <lambda>
    current_remote_ids = set(map(lambda t: t.id, remote_tasks))
  File "/home/chris/rtm-fix/GTG/plugins/rtm_sync/genericTask.py", line 54, in <lambda>
    id = property(lambda self: self._get_id())
  File "/home/chris/rtm-fix/GTG/plugins/rtm_sync/rtmTask.py", line 54, in _get_id
    return self.__get_rtm_task_attribute("id")
  File "/home/chris/rtm-fix/GTG/plugins/rtm_sync/rtmTask.py", line 63, in __get_rtm_task_attribute
    return getattr(self.task.task, attr)
AttributeError: 'list' object has no attribute 'id'

Changed in gtg:
status: In Progress → Fix Committed
Changed in gtg:
milestone: 0.3 → 0.2.2
Changed in gtg:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers