Fixes are available
Rational ClearCase Fix Pack 09 (7.1.2.9) for 7.1.2
Rational ClearCase Fix Pack 05 (8.0.0.5) for 8.0
Rational ClearCase Fix Pack 14 (7.1.2.14) for 7.1.2
Rational ClearCase Fix Pack 11 (8.0.0.11) for 8.0
Rational ClearCase Fix Pack 12 (8.0.0.12) for 8.0
Rational ClearCase Fix Pack 15 (7.1.2.15) for 7.1.2
Rational ClearCase Fix Pack 13 (8.0.0.13) for 8.0
Rational ClearCase Fix Pack 16 (7.1.2.16) for 7.1.2
Rational ClearCase Fix Pack 17 (7.1.2.17) for 7.1.2
Rational ClearCase Fix Pack 14 (8.0.0.14) for 8.0
Rational ClearCase Fix Pack 18 (7.1.2.18) for 7.1.2
Rational ClearCase Fix Pack 15 (8.0.0.15) for 8.0
Rational ClearCase Fix Pack 19 (7.1.2.19) for 7.1.2
Rational ClearCase Fix Pack 16 (8.0.0.16) for 8.0
Rational ClearCase Fix Pack 17 (8.0.0.17) for 8.0
Rational ClearCase Fix Pack 18 (8.0.0.18) for 8.0
Rational ClearCase Fix Pack 19 (8.0.0.19) for 8.0
Rational ClearCase Fix Pack 20 (8.0.0.20) for 8.0
Rational ClearCase Fix Pack 21 (8.0.0.21) for 8.0
APAR status
Closed as program error.
Error description
The IBM Rational ClearCase type manager for text files (text_file_delta) can handle individual lines up to 8000 bytes or characters in length. Normally if a user attempts to check in a text file containing a line over 8000 characters an error will be presented and the checkin will fail. In a case where a text file is checked in containing only 7998 bytes and no newline character the checkin will also fail: Example: [ben@barndoor test1]$ touch foo.txt [ben@barndoor test1]$ for i in {1..7998}; do echo -n a ?? foo.txt; done [ben@barndoor test1]$ stat foo.txt File: `foo.txt' Size: 7998 Blocks: 16 IO Block: 8192 regular file Device: fc03h/64515d Inode: 2147483656 Links: 1 Access: (0644/-rw-r--r--) Uid: ( 500/ ben) Gid: ( 1011/rational) Access: 2012-06-29 14:52:54.485767000 -0400 Modify: 2012-06-29 14:53:05.000000000 -0400 Change: 2012-06-29 14:53:05.966006000 -0400 [ben@barndoor test1]$ ct mkelem -nc -eltype text_file foo.txt Created element 'foo.txt' (type 'text_file'). Checked out 'foo.txt' from version '/main/0'. [ben@barndoor test1]$ ct ci -nc foo.txt text_file_delta: Error: 'foo.txt' is not a 'text file': it contains a line exceeding 8000 bytes. Use a different type manager (such as compressed file). cleartool: Error: Type manager 'text_file_delta' failed create_version operation. cleartool: Error: Unable to check in 'foo.txt'. The reason for this is that the type manager adds a '^N ' sequence to the source container to indicate there is no newline. However, it is possible to check in a slightly smaller version with no newline (7997 bytes) so that the checkin succeeds but subsequent container operations fail: Example: [ben@barndoor test1]$ touch good [ben@barndoor test1]$ touch bad [ben@barndoor test1]$ for i in {1..7939}; do echo -n a ?? good; done [ben@barndoor test1]$ for i in {1..7997}; do echo -n a ?? bad; done [ben@barndoor test1]$ ct mkelem -nc -eltype text_file bar.txt Created element 'bar.txt' (type 'text_file'). Checked out 'bar.txt' from version '/main/0'. [ben@barndoor test1]$ ct ci -nc -rm -from good bar.txt Checked in 'bar.txt' version '/main/1'. [ben@barndoor test1]$ stat bar.txt File: `bar.txt' Size: 7939 Blocks: 16 IO Block: 8192 regular file Device: fc03h/64515d Inode: 284 Links: 1 Access: (0444/-r--r--r--) Uid: ( 500/ ben) Gid: ( 1011/rational) Access: 2012-06-29 15:19:21.000000000 -0400 Modify: 2012-06-29 15:19:21.000000000 -0400 Change: 2012-06-29 15:19:21.000000000 -0400 [ben@barndoor test1]$ ct co -nc bar.txt Checked out 'bar.txt' from version '/main/1'. [ben@barndoor test1]$ ct ci -nc -rm -from bad bar.txt Checked in 'bar.txt' version '/main/2'. [ben@barndoor test1]$ stat bar.txt File: `bar.txt' Size: 7997 Blocks: 16 IO Block: 8192 regular file Device: fc03h/64515d Inode: 284 Links: 1 Access: (0444/-r--r--r--) Uid: ( 500/ ben) Gid: ( 1011/rational) Access: 2012-06-29 15:20:17.000000000 -0400 Modify: 2012-06-29 15:20:17.000000000 -0400 Change: 2012-06-29 15:20:17.000000000 -0400 Errors are logged with mvfs and the view server: [ben@barndoor test1]$ ct getlog -last 2 mvfs ================================================================ ============= Log Name: mvfs Hostname: barndoor Date: 2012-06-29T15:20:55-04:00 Selection: Last 2 lines of log displayed ---------------------------------------------------------------- ------------- 2012-06-29T15:20:38-04:00 mvfs(0): Error: fetch cleartext view=dyn2 vob=/vobs/alpha dbid=0x120 - I/O error 2012-06-29T15:20:38-04:00 mvfs(0): Error: see view log on host barndoor for more info ================================================================ ============= [ben@barndoor test1]$ ct getlog -last 4 view ================================================================ ============= Log Name: view Hostname: barndoor Date: 2012-06-29T15:21:36-04:00 Selection: Last 4 lines of log displayed ---------------------------------------------------------------- ------------- 2012-06-29T15:20:38-04:00 view_server(4326): Error: Unable to construct cleartext for object '0x120' in VOB 'barndoor:/vobstore/alpha.vbs': error detected by ClearCase subsystem 2012-06-29T15:20:38-04:00 view_server(4326): Error: Type manager 'text_file_delta' failed construct_version operation. 2012-06-29T15:20:38-04:00 view_server(4326): Error: Use a different type manager (such as compressed file). 2012-06-29T15:20:38-04:00 view_server(4326): Error: text_file_delta: Error: '/vobstore/alpha.vbs/s/sdft/0/41/0-6de626e8c22011e184b300112527c 039-8m' is not a 'text file': it contains a line exceeding 8000 bytes. ================================================================ ============= Unfortunately chtype operations will also fail at this point. [ben@barndoor test1]$ ct chtype compressed_file bar.txt Change version manager and reconstruct all versions for 'bar.txt'? [no] yes text_file_delta: Error: '/net/barndoor/vobstore/alpha.vbs/s/sdft/0/41/0-6de626e8c22011e1 84b300112527c039-8m' is not a 'text file': it contains a line exceeding 8000 bytes. Use a different type manager (such as compressed file). cleartool: Error: Type manager 'text_file_delta' failed construct_version operation. cleartool: Error: Unable to change type of element 'bar.txt' to 'compressed_file'. Removing the problem version also fails: [ben@barndoor test1]$ ct rmver -data bar.txt@@/main/2 Removing data for these versions of 'bar.txt': /main/2 Remove data for versions? [no] y text_file_delta: Error: '/vobstore/alpha.vbs/s/sdft/0/41/0-6de626e8c22011e184b300112527c 039-8m' is not a 'text file': it contains a line exceeding 8000 bytes. Use a different type manager (such as compressed file). cleartool: Error: Type manager 'text_file_delta' failed delete_branches_versions operation. Steps to reproduce the issue: 1. Create a text_file element. 2. Check in a version containing 7997 bytes and no newlines. 3. Attempt to access that version or chtype the element. WORKAROUND: Change the type of text_file elements so they use another type manager (such as compressed file) before individual lines without a newline character approach the 8000 byte limitation.
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: * **************************************************************** * PROBLEM DESCRIPTION: * **************************************************************** * RECOMMENDATION: * **************************************************************** The IBM Rational ClearCase type manager for text files (text_file_delta) can handle individual lines up to 8000 bytes or characters in length. Normally if a user attempts to check in a text file containing a line over 8000 characters an error will be presented and the checkin will fail. There was also a case where a text file is checked in containing fewer than 8000 bytes and no newline character, and the checkin will also fail, incorrectly.
Problem conclusion
A solution is available in ClearCase 7.1.2.9 and 8.0.0.5.
Temporary fix
Comments
APAR Information
APAR number
PM68213
Reported component name
CC&CC MSITE UNI
Reported component ID
5724G3301
Reported release
711
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2012-07-05
Closed date
2012-12-15
Last modified date
2012-12-15
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Fixed component name
CC&CC MSITE UNI
Fixed component ID
5724G3301
Applicable component levels
R711 PSN
UP
Document Information
Modified date:
15 December 2012