SeattleTestbed / softwareupdater

Software updater daemon
MIT License
1 stars 6 forks source link

Exception raised for software updater test. #26

Closed choksi81 closed 10 years ago

choksi81 commented 10 years ago

On both ubuntu 8.10 and testbed-mac when attempting to run the software updater test locally, as described in https://seattle.cs.washington.edu/wiki/UpdaterUnitTests I preformed the following steps:

python preparetest.py -t ../seattle_test
cd ../seattle_test
cp -r ../trunk/assignments/webserver/* .
cp -r ../trunk/softwareupdater/test/* .
python test_updater_local.py

On ubuntu I got:

Writing initial metainfo...
Copying files to /tmp/tmpwVdj3s/noup folder...
Copying files to wronghash directory
Changing nmmain.py to version: 0.999a
Writing updated nmmain.py metainfo...
Copying files to /tmp/tmpwVdj3s/updatenmmain folder...
Copying files to corruptmeta folder...
Writing badly signed metainfo
Copying files to /tmp/tmpwVdj3s/badkeysig folder...
Changing softwareupdater
Writing updated softwareupdater.py metainfo
Warning, 'softwareupdater.py' has only a hash or file size change but not both (how odd).
Copying files to /tmp/tmpwVdj3s/updater folder...
Changing nmmain.py to version: 1234
Writing metainfo with new valid key
Copying files to /tmp/tmpwVdj3s/updater_new folder...
Copying back files from noup folder...
Generating key...
Writing config file...
Writing vessel dictionary...
listening for connection on:  192.168.1.101
Traceback (most recent call last):
  File "test_updater_local.py", line 252, in main
  File "test_updater_local.py", line 125, in runRsyncTest
  File "test_updater_local.py", line 225, in run_webserver
Exception: Webserver exitted with code -15

On testbed-mac I got:

Writing initial metainfo...
Copying files to /tmp/tmp9tURmB/noup folder...
Copying files to wronghash directory
Changing nmmain.py to version: 0.999a
Writing updated nmmain.py metainfo...
Copying files to /tmp/tmp9tURmB/updatenmmain folder...
Copying files to corruptmeta folder...
Writing badly signed metainfo
Copying files to /tmp/tmp9tURmB/badkeysig folder...
Changing softwareupdater
Writing updated softwareupdater.py metainfo
Warning, 'softwareupdater.py' has only a hash or file size change but not both (how odd).
Copying files to /tmp/tmp9tURmB/updater folder...
Changing nmmain.py to version: 1234
Writing metainfo with new valid key
Copying files to /tmp/tmp9tURmB/updater_new folder...
Copying back files from noup folder...
Generating key...
Writing config file...
Writing vessel dictionary...
Traceback (most recent call last):
  File "test_updater_local.py", line 252, in main
  File "test_updater_local.py", line 125, in runRsyncTest
  File "test_updater_local.py", line 225, in run_webserver
Exception: Webserver exitted with code 98

Note: we've tested r3050 and it's ready to push once this is fixed

choksi81 commented 10 years ago

Author: jsamuel These pass for me on Ubuntu 9.04. I can't repeat the error.

In terms of what could cause these errors:

The only place I see 98 is line 610 of nonportable.py with the comment "# Repy exceeded its resource limit, kill it".

For the exit code of -15, that means it was killed by a signal 15, which is a SIGTERM. So, my guess is that's probably also coming from harshexit but is just the difference of what we see as the exit status of the process on Darwin. (Can anyone confirm or refute this?)

So, where would repy log info about killing the webserver so we can find out what restriction is the culprit, assuming it is a restriction from webserver_restrictions.test being exceeded?

choksi81 commented 10 years ago

Author: justinc I know what the problem is. If you use 'preparetest -t' to set up the software updater tests, there are too many files and the test are either too slow or over quota for disk (likely the latter).

So I think all is well and we should push.