[Toaster] Need help with Production toaster setup
Lerner, Dave
dave.lerner at windriver.com
Thu Jul 3 14:17:59 PDT 2014
Hi Craig,
Did you delete your old database and recreate it using the current clone of poky as shown on
https://wiki.yoctoproject.org/wiki/Setting_up_a_local_instance_of_Toaster
that is, running the database creation/migration commands that execute in
'source toaster start'?
-dave
> -----Original Message-----
> From: Neth, Craig Allen [mailto:craig.neth at verizon.com]
> Sent: Thursday, July 03, 2014 4:05 PM
> To: Lerner, Dave
> Cc: toaster at yoctoproject.org
> Subject: Re: Need help with Production toaster setup
>
> Hi Dave,
>
> Thanks for the quick response!
>
> I had previous experienced the problem you mentioned and worked around it
> by adding a sleep between the —observe-only and the bitbake command.
> Without the sleep, as you mention the events were just getting dropped.
> It’s nice to see a proper fix for that, however.
>
> But I don’t think that’s what’s happening now; from the tracebacks it
> looks like the clients are sending events to the database but it’s not
> setup the way they expect...
>
> My suspicion is that the schemas have changed but I don’t know how to get
> my database back into a state where it matches the schema the client
> expects.
>
> Craig
>
>
>
>
> On 7/3/14, 4:52 PM, "Lerner, Dave" <dave.lerner at windriver.com> wrote:
>
> >Hi Craig,
> >
> >A patch submitted 15 minutes ago may solve your problem, it sounds
> >similar to the problem that appeared after daisy in my script that did:
> >
> >bitbake --server-only ...
> >bitbake --observe-only ... ToasterUI
> >bitbake <some-image>
> >
> >With recent releases the 'bitbake <some-image>' fires before the
> >ToasterUI is ready (2nd command) to read events. The patch in
> >https://bugzilla.yoctoproject.org/show_bug.cgi?id=6504 writes a message
> >to the log file. You can change your script to block until that log
> >message appears, before launching a build - if that's your problem.
> >
> >Hope this helps,
> >Dave Lerner
> >
> >> -----Original Message-----
> >> From: toaster-bounces at yoctoproject.org
> >>[mailto:toaster-bounces at yoctoproject.org] On
> >> Behalf Of Neth, Craig Allen
> >> Sent: Thursday, July 03, 2014 3:34 PM
> >> To: toaster at yoctoproject.org
> >> Subject: [Toaster] Need help with Production toaster setup
> >>
> >> A month or so ago, I set up a production toaster instance using the poky
> >> master branch.
> >> Our projects were building with Daisy. Everything was working fine.
> >>
> >> For various reasons, I needed to redo the production instance and that
> >> involved recloning the poky master repo, and now I¹m having issuesŠ
> >>
> >> After recloning poky and restarting the server, all my builds with the
> >> build logging turned on started throwing weird errors complaining like
> >> this:
> >>
> >> ERROR: Field 'project_id' doesn't have a default value
> >> <traceback omitted>
> >>
> >>
> >> And :
> >>
> >> ERROR:
> >> Traceback (most recent call last):
> >> File "/poky/bitbake/lib/bb/ui/toasterui.py", line 191, in main
> >> buildinfohelper.store_started_task(event)
> >> File "/poky/bitbake/lib/bb/ui/buildinfohelper.py", line 653, in
> >> store_started_task
> >> recipe_information =
> >> self._get_recipe_information_from_taskfile(event.taskfile)
> >> File "/poky/bitbake/lib/bb/ui/buildinfohelper.py", line 551, in
> >> _get_recipe_information_from_taskfile
> >> layer_version_obj = self._get_layer_version_for_path(localfilepath)
> >> File "/poky/bitbake/lib/bb/ui/buildinfohelper.py", line 533, in
> >> _get_layer_version_for_path
> >> assert 'build' in self.internal_state
> >> AssertionError
> >>
> >> So I figured that there was probably some difference of opinion between
> >> the client and the server about the schema; I tried running the Œsyncdb¹
> >> and Œmigrate orm¹ commands again on the server but that didn¹t help.
> >>
> >>
> >> ---
> >>
> >> So next I figured I would just delete the Œtoaster¹ database and start
> >> over. I tried going into mysql and dropping the toaster database,
> >> recreating it, and then redoing the two python commands, but that
> >>results
> >> in this error from the migrate orm command:
> >>
> >> python bitbake/lib/toaster/manage.py migrate orm
> >> Running migrations for orm:
> >> - Migrating forwards to 0007_auto__add_helptext.
> >> > orm:0001_initial
> >> > orm:0002_auto__add_field_build_timespent
> >> > orm:0003_timespent
> >> - Migration 'orm:0003_timespent' is marked for no-dry-run.
> >> > orm:0004_auto__add_field_package_installed_name
> >> >
> >>
> >>orm:0005_auto__add_target_image_file__add_target_file__add_field_variable
> >>hi
> >> stor
> >> FATAL ERROR - The following SQL query failed: ALTER TABLE `orm_build`
> >>ADD
> >> COLUMN `timespent` integer NOT NULL DEFAULT 0;
> >> The error was: (1060, "Duplicate column name 'timespent'")
> >> RuntimeError: Cannot reverse this migration. 'Target.file_name' and its
> >> values cannot be restored.
> >>
> >> This was all done while working on the daisy branch.
> >>
> >> So, then I tried the delete/recreate database trick again and changed
> >>back
> >> to the master branch. Now I can run the two python commands ok, but my
> >> daisy clients are back to throwing the assert errors...
> >>
> >> So, a few questions:
> >>
> >>
> >> - Does it still work to run the production server on the master and
> >> clients running daisy, or do I have to use the daisy version of the
> >> production server, or do I need something newer than daisy but not as
> >>new
> >> as master?
> >>
> >> - If for whatever reason I need to recreate the database, what are the
> >> exact steps that I need to do to delete/recreate?
> >> It seems like just dropping the Œtoaster¹ database and recreating it is
> >> insufficient, but I am not sure what else to do.
> >>
> >> The wiki pages are a bit vague on all this stuff, thanks for any help.
> >>
> >> Craig
> >>
> >> --
> >> _______________________________________________
> >> toaster mailing list
> >> toaster at yoctoproject.org
> >> https://lists.yoctoproject.org/listinfo/toaster
More information about the toaster
mailing list