Opened at 2008-06-12T18:20:41Z
Closed at 2010-06-12T23:00:22Z
#460 closed defect (fixed)
cp -rv fails rather gracelessly in face of network quake
| Reported by: | robk | Owned by: | |
|---|---|---|---|
| Priority: | minor | Milestone: | 1.6.0 |
| Component: | code-frontend-cli | Version: | 1.1.0 |
| Keywords: | tahoe-cp error | Cc: | |
| Launchpad Bug: |
Description (last modified by robk)
c.f. #459
when a long running cp -rv hits a network quake (e.g. laptop is taken to a different network locale) one of the copies fails, but the error reported stems from within the node, and hence the exception propagated back up is a '500 internal server error' containing verbatim the source of a nevow rendered exception. this is perhaps not the most suitable way to report a problem on the command line.
furthermore when using the 'tahoe' cli from the mac .app bundle, the error appears in a dialogue box which fills the screen.
Attachments (1)
Change History (3)
Changed at 2008-06-12T18:21:43Z by robk
comment:1 Changed at 2008-06-12T18:24:26Z by robk
- Description modified (diff)
capture of the output of cli 'tahoe cp -rv'
the break after the first few lines indicates the point of the network quake:
1505/10802 files, 156/987 directories
1506/10802 files, 156/987 directories
1507/10802 files, 156/987 directories
1508/10802 files, 156/987 directories
Traceback (most recent call last):
File "/Users/robk/trees/tahoe/mac/dist/Allmydata.app/Contents/Resources/__boot__.py", line 131, in ?
_run('allmydata_tahoe.py')
File "/Users/robk/trees/tahoe/mac/dist/Allmydata.app/Contents/Resources/__boot__.py", line 128, in _run
execfile(path, globals(), globals())
File "/Users/robk/trees/tahoe/mac/dist/Allmydata.app/Contents/Resources/allmydata_tahoe.py", line 57, in ?
main(sys.argv)
File "/Users/robk/trees/tahoe/mac/dist/Allmydata.app/Contents/Resources/allmydata_tahoe.py", line 53, in main
additional_commands=runner_extensions,
File "allmydata/scripts/runner.pyc", line 66, in runner
File "allmydata/scripts/cli.pyc", line 283, in cp
File "allmydata/scripts/tahoe_cp.pyc", line 711, in copy
File "allmydata/scripts/tahoe_cp.pyc", line 468, in do_copy
File "allmydata/scripts/tahoe_cp.pyc", line 619, in copy_to_directory
File "allmydata/scripts/tahoe_cp.pyc", line 648, in copy_files_to_target
File "allmydata/scripts/tahoe_cp.pyc", line 687, in copy_file_into
File "allmydata/scripts/tahoe_cp.pyc", line 375, in put_file
File "allmydata/scripts/tahoe_cp.pyc", line 36, in PUT
allmydata.scripts.tahoe_cp.WriteError: Error during PUT: 500 Internal Server Error <html><head><title>Exception</title></head><body><style type="text/css">
p.error {
color: black;
font-family: Verdana, Arial, helvetica, sans-serif;
font-weight: bold;
font-size: large;
margin: 0.25em;
}
div {
font-family: Verdana, Arial, helvetica, sans-serif;
}
strong.variableClass {
font-size: small;
}
div.stackTrace {
}
div.frame {
padding: 0.25em;
background: white;
border-bottom: thin black dotted;
}
div.firstFrame {
padding: 0.25em;
background: white;
border-top: thin black dotted;
border-bottom: thin black dotted;
}
div.location {
font-size: small;
}
div.snippet {
background: #FFFFDD;
padding: 0.25em;
}
div.snippetHighlightLine {
color: red;
}
span.lineno {
font-size: small;
}
pre.code {
margin: 0px;
padding: 0px;
display: inline;
font-size: small;
font-family: "Courier New", courier, monotype;
}
span.function {
font-weight: bold;
font-family: "Courier New", courier, monotype;
}
table.variables {
border-collapse: collapse;
width: 100%;
}
td.varName {
width: 1in;
vertical-align: top;
font-style: italic;
font-size: small;
padding-right: 0.25em;
}
td.varValue {
padding-left: 0.25em;
padding-right: 0.25em;
font-size: small;
}
div.variables {
margin-top: 0.5em;
}
div.dict {
background: #cccc99;
padding: 2px;
float: left;
}
td.dictKey {
background: #ffff99;
font-weight: bold;
}
td.dictValue {
background: #ffff99;
}
div.list {
background: #7777cc;
padding: 2px;
float: left;
}
div.listItem {
background: #9999ff;
}
div.instance {
width: 100%;
background: #efefef;
padding: 2px;
float: left;
}
span.instanceName {
font-size: small;
display: block;
}
span.instanceRepr {
font-family: "Courier New", courier, monotype;
}
div.function {
background: orange;
font-weight: bold;
float: left;
}
</style><a href="#tracebackEnd"><p class="error">twisted.internet.error.ConnectionLost: Connection to the other side was lost in a non-clean fashion.</p></a><div class="stackTrace"></div><a name="tracebackEnd"><p class="error">twisted.internet.error.ConnectionLost: Connection to the other side was lost in a non-clean fashion.</p></a></body></html>
2008-06-12 10:55:41.387 Allmydata[changeset:1a6da7286188b492] Allmydata Error
2008-06-12 10:55:41.388 Allmydata[changeset:1a6da7286188b492] Allmydata Error
An unexpected error has occurred during execution of the main script
WriteError: Error during PUT: 500 Internal Server Error <html><head><title>Exception</title></head><body><style type="text/css">
p.error {
color: black;
font-family: Verdana, Arial, helvetica, sans-serif;
font-weight: bold;
font-size: large;
margin: 0.25em;
}
div {
font-family: Verdana, Arial, helvetica, sans-serif;
}
strong.variableClass {
font-size: small;
}
div.stackTrace {
}
div.frame {
padding: 0.25em;
background: white;
border-bottom: thin black dotted;
}
div.firstFrame {
padding: 0.25em;
background: white;
border-top: thin black dotted;
border-bottom: thin black dotted;
}
div.location {
font-size: small;
}
div.snippet {
background: #FFFFDD;
padding: 0.25em;
}
div.snippetHighlightLine {
color: red;
}
span.lineno {
font-size: small;
}
pre.code {
margin: 0px;
padding: 0px;
display: inline;
font-size: small;
font-family: "Courier New", courier, monotype;
}
span.function {
font-weight: bold;
font-family: "Courier New", courier, monotype;
}
table.variables {
border-collapse: collapse;
width: 100;
}
td.varName {
width: 1in;
vertical-align: top;
font-style: italic;
font-size: small;
padding-right: 0.25em;
}
td.varValue {
padding-left: 0.25em;
padding-right: 0.25em;
font-size: small;
}
div.variables {
margin-top: 0.5em;
}
div.dict {
background: #cccc99;
padding: 2px;
float: left;
}
td.dictKey {
background: #ffff99;
font-weight: bold;
}
td.dictValue {
background: #ffff99;
}
div.list {
background: #7777cc;
padding: 2px;
float: left;
}
div.listItem {
background: #9999ff;
}
div.instance {
width: 100;
background: #efefef;
padding: 2px;
float: left;
}
span.instanceName {
font-size: small;
display: block;
}
span.instanceRepr {
font-family: "Courier New", courier, monotype;
}
div.function {
background: orange;
font-weight: bold;
float: left;
}
</style><a href="#tracebackEnd"><p class="error">twisted.internet.error.ConnectionLost: Connection to the other side was lost in a non-clean fashion.</p></a><div class="stackTrace"></div><a name="tracebackEnd"><p class="error">twisted.internet.error.ConnectionLost: Connection to the other side was lost in a non-clean fashion.</p></a></body></html>
#[Thu Jun 12 10:56:52] otto:~$
comment:2 Changed at 2010-06-12T23:00:22Z by davidsarah
- Keywords tahoe-cp error added
- Milestone changed from undecided to 1.6.0
- Resolution set to fixed
- Status changed from new to closed
Probably fixed by #646.

screen shot of error reporting from mac 'tahoe'