|
Home About Us A-Z Index Search * Contact Us Register Login Press ShopThe Open Brand -- Problem Reporting and Interpretations System |
Problem Report 0547 Details
Show help | Quick Search | Submit a Test Suite Support Request | Click here to view your privileges
This page provides all information on Problem Report 0547.
Report 0547 Actions
Problem Report Number 0547 Submitter's Classification Test Suite problem State Resolved Resolution Rejected (REJ) Problem Resolution ID REJ.X.0151 Raised 1970-01-01 08:00 Updated 2003-03-13 08:00 Published null Product Standard Commands and Utilities V2 (UNIX 95) Certification Program The Open Brand certification program Test Suite VSC version 5.0.2 Test Identification POSIX.upe/ex 13 222 223 247 249 250 252 Problem Summary PG4C.00127 This request claims that ex -r need not recover the most recently saved buffer after a system crash or preserve command. Problem Text
These testcases are failing INTERMITTENTLY on our implementation
due to a lack of clean up between test suite runs.
The testsuite continually uses the filename ex_data_1.
Every time a preserve command is issued, vi/ex creates backup files
in /etc/recover/$LOGNAME. Therefore, after a run, multiple files
exist in this directory that map to the filename ex_data_1. The file
that is pulled from /etc/recover/$LOGNAME is fairly random unless
there are no other files in the directory.
There is no mention in the standard that says ex/vi must pull the
most recent temp files from /etc/recover/$LOGNAME.
If we issue the following commands before (and between) runs
these tests succeed:
rm /etc/recover/VSC/*
rm /tmp/VI*
However, this should not be a requirement.Test Output
400|349 13 1 11:25:33|IC Start
200|349 1 11:25:34|TP Start
520|349 1 301989902 1 1|Assertion #13 (C): use of -r option to recover
preserve
520|349 1 301989902 1 2| <LC> d files
520|349 1 301989902 1 11|Expected exit code = 0; Received 2
220|349 1 1 11:25:44|FAIL
410|349 13 1 11:25:44|IC End
10|361 /tset/POSIX.upe/ex/ex_05.ex 13:28:29|TC Start, scenario ref 124-1
15|361 1.10 70|TCM Start
400|361 222 1 13:30:13|IC Start
200|361 1 13:30:14|TP Start
520|361 1 1979711516 1 1|Assertion #222 (C): preserve command can be
entered as
520|361 1 1979711516 1 2| <LC> pre, .., preserve
520|361 1 1979711516 1 11|pre not interpreted as preserve command
520|361 1 1979711516 1 12|pres not interpreted as preserve command
520|361 1 1979711516 1 13|prese not interpreted as preserve command
520|361 1 1979711516 1 14|preser not interpreted as preserve command
520|361 1 1979711516 1 15|preserv not interpreted as preserve command
520|361 1 1979711516 1 16|preserve not interpreted as preserve command
220|361 1 1 13:30:48|FAIL
410|361 222 1 13:30:49|IC End
400|361 223 1 13:30:50|IC Start
200|361 1 13:30:52|TP Start
520|361 1 1979711516 1 1|Assertion #223 (C): preserved changes can be
recovered
520|361 1 1979711516 1 2| <LC> with ex -r <file>
520|361 1 1979711516 1 11|ex -r did not recover preserved file correctly
220|361 1 1 13:31:02|FAIL
410|361 223 1 13:31:03|IC End
400|361 247 1 13:40:41|IC Start
200|361 1 13:40:42|TP Start
520|361 1 1979711516 1 1|Assertion #247 (C): recover command can be entered
as
520|361 1 1979711516 1 2| <LC> rec, .., recover
520|361 1 1979711516 1 11|rec not interpreted as substitute command
520|361 1 1979711516 1 12|diff of "ex_data_1" and "ex_exp_1":
520|361 1 1979711516 1 13|*** ex_data_1 Sun Feb 14 13:40:47 1999
520|361 1 1979711516 1 14|--- ex_exp_1 Sun Feb 14 13:40:46 1999
520|361 1 1979711516 1 15|***************
520|361 1 1979711516 1 16|*** 1,4 ****
520|361 1 1979711516 1 17|! abc
520|361 1 1979711516 1 18| def
520|361 1 1979711516 1 19| ghi
520|361 1 1979711516 1 20| jkl
520|361 1 1979711516 1 21|--- 1,4 ----
520|361 1 1979711516 1 22|! 012
520|361 1 1979711516 1 23| def
520|361 1 1979711516 1 24| ghi
520|361 1 1979711516 1 25| jkl
520|361 1 1979711516 1 26|reco not interpreted as substitute command
520|361 1 1979711516 1 27|diff of "ex_data_2" and "ex_exp_1":
520|361 1 1979711516 1 28|*** ex_data_2 Sun Feb 14 13:41:10 1999
520|361 1 1979711516 1 29|--- ex_exp_1 Sun Feb 14 13:40:46 1999
520|361 1 1979711516 1 30|***************
520|361 1 1979711516 1 31|*** 1,4 ****
520|361 1 1979711516 1 32|! abc
520|361 1 1979711516 1 33| def
520|361 1 1979711516 1 34| ghi
520|361 1 1979711516 1 35| jkl
520|361 1 1979711516 1 36|--- 1,4 ----
520|361 1 1979711516 1 37|! 012
520|361 1 1979711516 1 38| def
520|361 1 1979711516 1 39| ghi
520|361 1 1979711516 1 40| jkl
520|361 1 1979711516 1 41|recov not interpreted as substitute command
520|361 1 1979711516 1 42|diff of "ex_data_3" and "ex_exp_1":
520|361 1 1979711516 1 43|*** ex_data_3 Sun Feb 14 13:41:32 1999
520|361 1 1979711516 1 44|--- ex_exp_1 Sun Feb 14 13:40:46 1999
520|361 1 1979711516 1 45|***************
520|361 1 1979711516 1 46|*** 1,4 ****
520|361 1 1979711516 1 47|! abc
520|361 1 1979711516 1 48| def
520|361 1 1979711516 1 49| ghi
520|361 1 1979711516 1 50| jkl
520|361 1 1979711516 1 51|--- 1,4 ----
520|361 1 1979711516 1 52|! 012
520|361 1 1979711516 1 53| def
520|361 1 1979711516 1 54| ghi
520|361 1 1979711516 1 55| jkl
520|361 1 1979711516 1 56|recove not interpreted as substitute command
520|361 1 1979711516 1 57|diff of "ex_data_4" and "ex_exp_1":
520|361 1 1979711516 1 58|*** ex_data_4 Sun Feb 14 13:41:53 1999
520|361 1 1979711516 1 59|--- ex_exp_1 Sun Feb 14 13:40:46 1999
520|361 1 1979711516 1 60|***************
520|361 1 1979711516 1 61|*** 1,4 ****
520|361 1 1979711516 1 62|! abc
520|361 1 1979711516 1 63| def
520|361 1 1979711516 1 64| ghi
520|361 1 1979711516 1 65| jkl
520|361 1 1979711516 1 66|--- 1,4 ----
520|361 1 1979711516 1 67|! 012
520|361 1 1979711516 1 68| def
520|361 1 1979711516 1 69| ghi
520|361 1 1979711516 1 70| jkl
520|361 1 1979711516 1 71|recover not interpreted as substitute command
520|361 1 1979711516 1 72|diff of "ex_data_5" and "ex_exp_1":
520|361 1 1979711516 1 73|*** ex_data_5 Sun Feb 14 13:42:17 1999
520|361 1 1979711516 1 74|--- ex_exp_1 Sun Feb 14 13:40:46 1999
520|361 1 1979711516 1 75|***************
520|361 1 1979711516 1 76|*** 1,4 ****
520|361 1 1979711516 1 77|! abc
520|361 1 1979711516 1 78| def
520|361 1 1979711516 1 79| ghi
520|361 1 1979711516 1 80| jkl
520|361 1 1979711516 1 81|--- 1,4 ----
520|361 1 1979711516 1 82|! 012
520|361 1 1979711516 1 83| def
520|361 1 1979711516 1 84| ghi
520|361 1 1979711516 1 85| jkl
220|361 1 1 13:42:39|FAIL
410|361 247 1 13:42:40|IC End
400|361 249 1 13:42:52|IC Start
200|361 1 13:42:54|TP Start
520|361 1 1979711516 1 1|Assertion #249 (C): file recovery when filename
contai
520|361 1 1979711516 1 2| <LC> ns unescaped %
520|361 1 1979711516 1 11|recover % did not recover file
520|361 1 1979711516 1 12|*ERROR - JrnlDiff: unable to open or read file
"ex_ou
520|361 1 1979711516 1 13| <LC> t_1".
220|361 1 1 13:43:08|FAIL
410|361 249 1 13:43:09|IC End
400|361 250 1 13:43:11|IC Start
200|361 1 13:43:12|TP Start
520|361 1 1979711516 1 1|Assertion #250 (C): file recovery when filename
contai
520|361 1 1979711516 1 2| <LC> ns unescaped #
520|361 1 1979711516 1 11|recover # did not recover file
520|361 1 1979711516 1 12|*ERROR - JrnlDiff: unable to open or read file
"ex_ou
520|361 1 1979711516 1 13| <LC> t_1".
220|361 1 1 13:43:25|FAIL
410|361 250 1 13:43:26|IC End
400|361 252 1 13:43:38|IC Start
200|361 1 13:43:39|TP Start
520|361 1 1979711516 1 1|Assertion #252 (C): file recovery in other than
visual
520|361 1 1979711516 1 2| <LC> mode
520|361 1 1979711516 1 11|recover did not set current line to last line
520|361 1 1979711516 1 12|diff of "ex_out_1" and "ex_exp_1":
520|361 1 1979711516 1 13|*** ex_out_1 Sun Feb 14 13:44:11 1999
520|361 1 1979711516 1 14|--- ex_exp_1 Sun Feb 14 13:43:44 1999
520|361 1 1979711516 1 15|***************
520|361 1 1979711516 1 16|*** 1,4 ****
520|361 1 1979711516 1 17|! abc
520|361 1 1979711516 1 18| def
520|361 1 1979711516 1 19| ghi
520|361 1 1979711516 1 20| 345
520|361 1 1979711516 1 21|--- 1,4 ----
520|361 1 1979711516 1 22|! 012
520|361 1 1979711516 1 23| def
520|361 1 1979711516 1 24| ghi
520|361 1 1979711516 1 25| 345
220|361 1 1 13:44:46|FAIL
410|361 252 1 13:44:47|IC EndReview Information
Review Type TSMA Review Start Date null Completed null Status Complete Review Recommendation No Resolution Given Review Response
We recommend this request be refused.
We believe the only reason the spec does not explicitly state
that the ex and vi preserve/recover system must retrieve the most
recently preserved buffer is that this expectation is inherent in
the preservation process.
The ex spec states
Preserve
Synopsis: pre[serve]
Save the current buffer in a form that can later be
recovered by using ex -r or by using the recover
command. ...
Command Line Options
-r Recover the named files after an editor or
system crash, after the editor has been
terminated by a signal, or after the use of
a preserve editor command. ... A system
crash implies that any utilities running at
the time also crash.
We believe that the act of saving the current buffer in a form
that can later be recovered must properly differentiate that
buffer from any previous buffers that exist. Such functionality
is also required to allow a reasonable chance of recovery after
less controlled events such as a system crash.
It is important to note that the "cleanup" the submitter is
referring to is system dependent since the recovery mechanism
used is implementation specific. There is no way the test suite
can do this portably in order to prevent the behavior described
here. Such cleanup should certainly not be expected of users
during day to day use.
Review Type SA Review Start Date null Completed null Status Complete Review Resolution Rejected (REJ) Review Conclusion
This request is refused.
Problem Reporting System Options:
- View Report 0547
- List All PRs
- Search Reports
- Email the System Administrator
- View the The Open Brand Interpretations Database User Manual
Contact the Certification Authority