Support and Troubleshooting

Customer Care Notes

To assist in a speedy resolution of problems with AccuRev usage or performance, Customer Care personnel may ask you to provide data that you may not be accustomed to gathering on a day-to-day basis. The most frequently requested items are listed below, with instructions on how to gather the data. When you submit your initial Support Incident, please include the data items that you know (or suspect) are related to your specific issue.

Back to top

Collecting metadata

UNIX or Linux

  1. Run the accurev backup command. This command will back up your metadata into the AccuRev  site_slice/backup directory.
  2. Use accurev show slices to find the location of the relevant depot directory (slice).
  3. Stop the AccuRev Server.
  4. tar your site_slice directory (including the backed-up metadata from step 1).

    Example:

    cd /opt/accurev/storage/site_slice

    tar -cvf ~/site_slice.tar .

    Remember to include the dot '.' at the end of the tar command.

  5. tar the relevant depot directory (slice), but exclude the data subtree.
    (The data subtree contains the content of the files you have placed into AccuRev source control;  please do not send it to us!) :

    Example:

    cd /opt/accurev/storage/depots/ACME

    tar -cvf ~/ACME.tar --exclude data .

  1. Compress the .tar files using gzip.

    Example:

    gzip ~/site_slice.tar ~/ACME.tar

  1. Start the AccuRev Server.
  2. Send the gzipped files (.tar.gz suffix) to Customer Care. We recommend using FTP rather than email, since the files may be too large for your outgoing email server. Please use your Support Incident to obtain a username and password for an FTP server.

Windows

  1. Run the accurev backup command. This command will back up your metadata into the AccuRev site_slice/backup directory.
  2. Use accurev show slices to find the location of the relevant depot directory (slice).
  3. Stop the AccuRev Server.
  4. Create a ZIP archive of the entire site_slice directory (including the backed-up metadata from step 1). Typically, it is C:\Program Files\AccuRev\storage\site_slice.
  5. Create a ZIP archive of the relevant depot directory (slice). Typically, it's a subdirectory of C:\Program Files\AccuRev\storage\depots. Remove the data subtree from the ZIP archive. (The data subtree contains the content of the files you have placed into AccuRev source control;  please do not send it to us!)
  6. Start the AccuRev Server.
  7. Send the ZIP files to Customer Care. We recommend using FTP rather than email, since the files may be too large for your outgoing email server. Please use your Support Incident to obtain a username and password for an FTP server.

Back to top

Database inconsistencies

Gather the following information to begin troubleshooting the issue:

  1. What changed in the environment? Power failure? Hardware failure?
  2. What are the hardware specs on the AccuRev Server machine?
  3. What is the AccuRev version on the AccuRev Server machine?
  4. Get output of accurev info on the AccuRev Server machine.
  5. Copy (ZIP or tar file) all AccuRev Server logs, located in subdirectory .../storage/site_slice/logs. Search for any messages that might be the cause of your issue: disk failure, power outage, etc.
  6. Copy all operating system logs (location varies from OS to OS).
  7. Stop the AccuRev Server.
  8. Get output of maintain dbcheck.
  9. Start the AccuRev Server.
  10. Gather AccuRev metadata.

Back to top

Running the AccuRev GUI in debug mode

You might occasionally experience problems in the AccuRev GUI — the GUI might appear to hang, or it might display errors that running the equivalent command in the AccuRev CLI does not, for example. Running the AccuRev GUI in Java debug mode can help you diagnose and troubleshoot problems you encounter, and being able to monitor the commands the GUI calls can help with scripting efforts.

The following sections describe how to run the AccuRev GUI on different platforms for different AccuRev versions. Executing these commands starts the AccuRev GUI; debug output is written to the command prompt. Note that paths shown are examples only. You might have to adjust them for your installation.

Windows

To run the AccuRev GUI in debug mode on Windows:

  1. Open a CMD shell.
  2. cd to the \bin directory where you installed AccuRev. For example:

    cd C:\Program Files\AccuRev\bin

  1. To run the AccuRev GUI in debug mode, execute the following command:

    ..\jre\bin\java -cp
    "fw.jar;xercesImpl.jar;xml-apis.jar;oro.jar;logback-classic-1.0.1.jar;
    logback-core-1.0.1.jar;slf4j-api-1.6.4.jar;sam.jar;lax.jar;
    shef-accurev3.jar;jtidy-8.0.jar;bizlaf-cezanne-2.3.11.29.jar;
    AccuRevCommon.jar;jgrapht-0.8.3.jar;org-netbeans-swing-outline.jar" fw.MainApp

Note: Any jar files with version numbers may change between releases, so change the command line to match the jar file names that you have installed.

UNIX/Linux

To run the AccuRev GUI in debug mode on UNIX/Linux:

  1. Open a shell window.
  2. cd to the /bin directory where you installed AccuRev. For example:

    cd /opt/accurev/bin

  3. To run the AccuRev GUI in debug mode, execute the following command:

    ../jre/bin/java -cp
    "fw.jar;xercesImpl.jar;xml-apis.jar;oro.jar;logback-classic-1.0.1.jar;
    logback-core-1.0.1.jar;slf4j-api-1.6.4.jar;sam.jar;lax.jar;
    shef-accurev3.jar;jtidy-8.0.jar;bizlaf-cezanne-2.3.11.29.jar;
    AccuRevCommon.jar;jgrapht-0.8.3.jar;org-netbeans-swing-outline.jar" fw.MainApp

Note: Note that any jar files with version numbers may change between releases, so change the command line to match the jar file names that you have installed.

Back to top

User authentication problems

You can diagnose authentication problems with the accurev secinfo command:

accurev secinfo

The output is one of three keywords: anyuser, authuser, or notauth.

anyuser

The user is allowed to perform operations on streams except where permissions require an authenticated user.

authuser

The user is considered authenticated.

notauth

The user is not authenticated.

For more information on the secinfo command, see secinfo in the AccuRev CLI User's Guide.

Back to top

Getting AccuRev Server and client version information

How can you get the version information about the AccuRev Server without having to log into the server machine? You can perform either of the following operations on any AccuRev client machine:

To get the integer version number of the AccuRev server and client software:

> accurev info -v
...
client_ver:    58
...
server_ver:    58

 ...

To get the major/minor/patch version numbers of the AccuRev Server, use the accurev xml command:

  1. Create a file (say, ver.xml), containing this very short XML document:
  2. Submit this file as an argument to the xml command:

    accurev xml -l ver.xml

    The command output in this format:

    <serverInfo>
      <serverVersion
        major="4"
        minor="7"
        patch="2"/>
      <handleCount>10</handleCount>
    </serverInfo>

    This example indicates that the AccuRev Server is Version 4.7.2.

Back to top

Integration issues

If you are reporting a problem with an AccuRev integration with a third-party IDE, include the following in your Support Incident:

  1. The name and version number of the IDE software.
  2. The steps required to reproduce the problem. Be sure to include the type of project you're working with in the IDE and the location of the AccuRev workspace you're accessing through the IDE.
  3. The version of AccuRev you are using.
  4. (if applicable) The version of the AccuBridge integration you are using.

Back to top

AccuRev license issues

Include copies of the following in your Support Incident:

  • The acserver.log file (in .../storage/site_slice/logs).
  • The license file: aclicense.txt,accurev.lic, or keys.txt (in .../storage/site_slice).

    [Note: accurev.lic is not supported as of AccuRev 7.0, and keys.txt is not supported as of AccuRev 5.4.]

  • A screen shot of the error box or a copy of the error text.
  • Output from accurev info, executed on the AccuRev Server machine.
  • Output from accurev show users.

Back to top

Potential AccuRev defects

Include the following in your Support Incident:

  • A screen shot of the error dialog or a copy of the error text.
  • The steps required to reproduce the problem. Include the depot's stream structure, if it is relevant.
  • The operating system version on the client machine
  • Are multiple users or multiple machines (client vs. server) involved?
  • Output from these commands:

    accurev

    accurev info -v

    accurev show wspaces

    accurev show streams

    accurev show slices

    accurev show depots

    accurev diag

Back to top

Replication problems

Include the following in your Support Incident:

  • A copy of the acserver.cnf file from both the master server and  the replica server.
  • A copy of the acserver.log file from both the master server and  the replica server.
  • Output from this command (if the problem is performance-related):

    accurev diag

Back to top

Performance problems

Include the answers to this questionnaire in your Support Incident:

  1. Has performance always been poor? If not, what changed in the environment?
  2. What exactly was the user trying to do? Does the performance problem occur with other users, on different client machines?  Or is it a common issue on the same machine?
  3. Does the operation actually finish? (A hang or lock-up can often be mistaken as performance problem.)
  4. What are the AccuRev versions on the problem clients and server machines?
  5. What are the hardware specs on the problem clients and server machines?
  6. Is performance different in the AccuRev CLI and the AccuRev GUI?
  7. Is the user's home directory on a remote disk? If so, consider moving the home directory so that it is on the machine where the AccuRev client software runs.
  • Include copies of the following in your Support Incident:
  • Complete AccuRev server logs (in .../storage/site_slice/logs)
  • Two samples of output from accurev diag, run on the AccuRev Server machine in the depot storage directory.
  • Two samples of output from accurev diag, run on the client machine in the user's workspace directory.
  • Output from accurev show triggers.
  • The contents of the trigger script files with the names listed below, located anywhere under the storage directory on the AccuRev Server machine:

    server_admin_trig

    server_preop_trig

    The filenames might include a suffix, such as .bat on Windows.

  • The AccuRev Server task list.

Back to top

Server task list

How do you create a listing of the AccuRev Servers currently active tasks (execution threads)?

  1. Create a file (say, tasks.xml), containing this very short XML document:

    <tasklist/>

  1. Submit this file as an argument to the xml command:

    accurev xml -l tasks.xml > tasklist.out

The contents of tasklist.out will resemble this example:

<tasklist>
  <task>
    <task_id>1299</task_id>
    <task_name>promote</task_name>
    <user>john</user>
    <host>192.168.89.222</host>
    <status>1</status>
    <starttime>2006/07/25 14:42:49</starttime>
    <seconds_on_server>2</seconds_on_server>
    <depot_write_lock>true</depot_write_lock>
    <progress_counter
      counter="0"
      count="6"
      max_count="11"/>
    <progress_counter
      counter="1"
      count="200"
      max_count="900"/>
  </task>
  <task>
    <task_id>1300</task_id>
    <task_name>xml</task_name>
    <user>john</user>
    <host>192.168.89.222</host>
    <status>1</status>
    <starttime>2006/07/25 14:42:51</starttime>
    <seconds_on_server>0</seconds_on_server>
  </task>
</tasklist>

Back to top

If you are not seeing an element...

If you cannot see an element that you believe that exists, there is a good chance that your AccuRev administrator has set element-level security using the eacl command, and you are being denied access to the element (or its container directory). For more information about EACLs and their behavior, see Element ACLs (EACLs).

If you perform an Update, and the version displayed in the File Browser is correct but the content of the file does not appear to have been updated, this is typically due to a timestamp problem. It usually occurs when a file is changed outside of the workspace and then copied back in. The timestamp of the file that was dropped back into the workspace has a date and time stamp older than the date and time stamp of the file in the workspace. To update the file, temporarily uncheck Timestamp Optimization and perform the Update again. See Timestamp Optimization (TSO) in the AccuRev Administrator’s Guide for more information.

Back to top