Skip to Content

Patches and updates

ArcSDE 9.0 Reconcile and Post Patch

Published: April 13, 2007

Summary

Custom reconcile and post applications written using ArcObjects are vulnerable to a defect that can create duplicate rows within a versioned table when a second session attempts to reconcile against the same version before the first process has exited (committed). This defect has been identified as being responsible for incidents where customers have experienced problems in opening geometric networks. The Patch also prevents the ArcSDE service from being affected by malicious connection packets.

Description

      NIM007147 - Using custom ArcObjects to reconcile/post within an edit operation may cause data inconsistencies.

  • Description

    Applications that start an Edit Operation, perform a Reconcile and then call Post or Stop Editing without explicitly stopping the Edit Operation are vulnerable to this defect. An example is when the version being reconciled transfers data to the result state, the changes are not committed to the database and a following post operation which relabels the source and target versions to reference the result state is committed. If another session reconciles against the same version during the time window when the data changes have not been committed, the transactional inconsistency can lead to duplicate rows.

    {Applications that stop any pending Edit Operations and call Reconcile and Post outside of an edit operation are not vulnerable to this defect. Applications that call Reconcile within an Edit Operation but explicitly stop the Edit Operation before calling Reconcile are not vulnerable to this defect.}

    The problem is specific to ArcGIS and ArcSDE 9.0, 9.1 with Oracle and has been addressed in ArcGIS 9.2.

    This issue can not be encountered when using the out-of-the-box ArcGIS tools.

    NIM007075 - The giomgr can be crashed by sending extra characters in the connectiion string.

  • Description

    A security issue has been identified where it is theoretically possible for someone to create a connection packet that could cause the ArcSDE server to crash when using three tiered ArcSDE configurations (i.e., app server). Sending a maliciously-crafted connection packet to an ArcSDE service can crash the service. This will not happen under normal use of the software and we are unaware of any occasion when anyone has created one of these malicious packets. Therefore ESRI considers the risk of an attack to be very low. As a precaution ESRI has developed this patch to ArcSDE that will remove the ability for someone to create a malicious packet that could cause the system to crash and thereby secures the ArcSDE service against such an attack.
     

    Installing the Patch

    ArcSDE 9.0 General Update Patch 3 must be installed before you can install this Patch. It is strongly recommended that you back up your database including all previous ArcSDE system tables and user layer data before upgrading your ArcSDE installation. Install this Patch using your SDE user account.

    REQUIRED INSTALL STEP: If you connect to ArcSDE 9.0 via an Application Server and Direct Connect connections using ArcGIS 9.0, ArcIMS 9.0, or ArcView GIS 3.3 with DBA 2.1f make sure you also see ESRI Products connecting to ArcSDE (Application and Direct Connect connections).
     

    Server Install for UNIX

    Installation Steps

    During installation, you can either save the original 9.0 files or overwrite them. If you choose to save them, make sure you have enough disk space. The disk space requirements, for each platform, are displayed during the installation process.

    1. Download the appropriate tar file to a location other than $SDEHOME:

      Oracle 8i  
      HP (coming soon)
      15 MB
      IBM sde90-reconcile-ora8i-ibm.tar
      9 MB
      Solaris sde90-reconcile-ora8i-slrs.tar
      10 MB
      Tru64 (coming soon)
      14 MB
         
      Oracle 9i (Use these with Oracle 10g)  
      HP64 sde90-reconcile-ora9i-hp64.tar
      11 MB
      IBM64 sde90-reconcile-ora9i-ibm64.tar
      9 MB
      Linux sde90-reconcile-ora9i-lx.tar
      8 MB
      Solaris sde90-reconcile-ora9i-slrs.tar
      10 MB
      Solaris64 sde90-reconcile-ora9i-slrs64.tar
      10 MB
      Tru64 sde90-reconcile-ora9i-tru64.tar
      14 MB

      Stop your current ArcSDE service.

      % sdemon -o shutdown

      NOTE (AIX only): You must remove any inactive libraries that are loaded into memory before proceeding to the next step. Not doing so will result in an installation error. To remove them, as ROOT user, type:

      # /usr/sbin/slibclean

      (Optional) To list the libraries loaded into memory, as ROOT user, type:

      # /usr/sbin/genkld

      For further information on the slibclean and genkld commands please refer to your AIX system administrator documentation.

    2. Extract the specified tar file by typing:

      % tar -xvf sde90-reconcile-<Database>-<Platform>.tar

    3. Start the installation by typing:

      % ./applypatch

      This will start the dialog for the menu-driven installation procedure. Default selections are noted in parentheses ( ). To quit the installation procedure, type 'q' at any time.

      Start your service again

      % sdemon -o start
       

    Server Install for Windows

    Installation Steps

    1. Make sure you have write access to the ArcSDE installation folder, that no one is using ArcSDE, and that the ArcSDE service is down.
    2. Download the appropriate files to a location other than the ArcSDE installation folder:

      Oracle 8i  
      (coming soon) 2 MB
      Oracle 9i (Use this with Oracle 10g)  
      sde90-reconcile-ora9i-win.exe 2 MB

    3. Double-click the appropriate executable to start the install process.
    4. When Setup starts, follow the instructions on your screen.
    5. As the SDE user, run the following command to restart the ArcSDE service:

      sdemon -o start
       

    ArcSDE SDK Install for UNIX

    Installation Steps

    1. Download the appropriate tar file to a location other than ArcSDE SDK installation location:

      All Databases (32 bit Operating System)  
      HP (coming soon)
      3 MB
      IBM sde90-reconcile-sdk-ibm.tar
      3 MB
      Linux sde90-reconcile-sdk-lx.tar
      2 MB
      Solaris sde90-reconcile-sdk-slrs.tar
      4 MB
         
      All Databases (64 bit Operating System)  
      HP64 sde90-reconcile-sdk-hp64.tar
      3 MB
      IBM64 sde90-reconcile-sdk-ibm64.tar
      3 MB
      Solaris64 sde90-reconcile-sdk-slrs64.tar
      2 MB
      Tru64 sde90-reconcile-sdk-tru64.tar
      10 MB

    2. Extract the specified tar file by typing:

      % tar -xvf sde90-reconcile-sdk-<Platform>.tar

    3. Start the installation by typing:

      % ./applypatch

      This will start the dialog for the menu-driven installation procedure. Default selections are noted in parentheses ( ). To quit the installation procedure, type 'q' at any time.

    ArcSDE SDK Install for Windows

    Installation Steps

    1. Make sure you have write access to the ArcSDE SDK installation folder:.
    2. Download the appropriate files to a location other than the ArcSDE SDK installation folder:

      ArcSDE SDK sde90-reconcile-sdk-win.exe 3 MB

    3. Double-click the appropriate executable to start the install process.
    4. When Setup starts, follow the instructions on your screen.

    ESRI Products connecting to ArcSDE (Application and Direct Connect connections).

    • UNIX

      If you connect to ArcSDE 9.0 using ArcGIS 9.0 Workstation or ArcIMS 9.0 SP3 on any supported Unix/Linux platform please follow the steps below to install this Service Pack to your ArcGIS 9.0 software installation directory. This also applies if connecting to ArcSDE 9.0 using ArcGIS Server, ArcGIS Engine, and ArcGIS Reader for Sun Solaris and Linux:

      • Before you start, make sure you have write access to the installation directory then download the appropriate compressed tar file to that location:


      • ArcIMS only, stop the ArcIMS Tasker, ArcIMS Monitor, ArcIMS Application Server (in that order).

      • Uncompress and extract the specified tar file for your platform. Ensure that the last letter of the file name is a capital Z. Otherwise, the uncompress command will not work. At the UNIX prompt type:

        %cd <installation_directory> (i.e. cd $ARCHOME or $AGSHOME)

        • <Workstation Installation Directory>/lib
        • <ArcGIS Server Installation Directory>/bin
        • <ArcGIS Engine Installation Directory>/bin
        • <ArcGIS Reader Installation Directory>/bin
        %uncompress sde90-reconcile-esri-<Platform>.tar.Z
        %tar xvf sde90-reconcile-esri-<Platform>.tar


        • ArcIMS only, restart ArcIMS Application Server, ArcIMS Monitor and ArcIMS Tasker (in that order).


        Windows

        • If you connect to ArcSDE 9.0 using ArcGIS 9.0, ArcIMS 9.0, ArcInfo Workstation 9.0, or ArcView GIS 3.3 with DBA 2.1f, please follow the steps below to install this Patch to your ArcGIS 9.0, ArcIMS 9.0, ArcInfo Workstation 9.0, or ArcView GIS 3.3 with DBA 2.1f installation folder:

        • Before you start, make sure you have write access to the installation folder, then download the zip file to that location:


        • ArcIMS only, stop the ArcIMS Tasker, ArcIMS Monitor, ArcIMS Application Server (in that order).

        • Use WinZip to extract the new file from sde90-reconcile-esri-win.zip to the appropriate installation folder, see list below:

          • ArcGIS Desktop, Server, Engine, Reader, or ArcView 9 - <installation-folder>\arcgis\bin
          • ArcGIS Workstation - <installation-folder>\arcexe9x\bin
          • ArcView GIS - <installation-folder>\av_gis30\arcview\(bin32 & DCONNECT\LIB)
          • Depending on the ArcIMS Setup features installed, the SDE client file could be located in one or more of the following locations:
            • C:\Program Files\ArcGIS\bin
            • C:\Program Files\ArcGIS\ArcIMS\IndexBuilder
            • C:\Program Files\ArcGIS\ArcIMS\Metadata\Commands
            • C:\Program Files\ArcGIS\ArcIMS\Server\bin

        • ArcIMS only, restart ArcIMS Application Server, ArcIMS Monitor and ArcIMS Tasker (in that order).

      How to identify which Patch is installed


      1. UNIX

        Any modified UNIX executables (or libraries) being sent out as part of a Patch will return the unique identification number for that fix when checked with the "what" command for UNIX and the "strings" command for Linux. For example, to display the identification string for this Patch on UNIX, type:

        • %what gsrvr.static | grep QFE

          QFE-SDE-90-CQ00304003

        Windows

        To check for the presence of a Patch, for each file examine the unique identification information provided (right click, properties, version tab, item name, QFE Version). With only a few exceptions, all files modified as part of a Patch distribution can be uniquely identified in this manner. The identification string for this Patch should read:

        • QFE-SDE-90-CQ00304003

      Patch Updates

      Check the Online Support Center periodically for the availability of additional Patches or Service Packs. New information about this Patch will be posted here.

      UPDATE 04/20/2007 - Now Available:

      • The Oracle9i downloads for HP64, Linux, Tru64 and Windows.
      • The SDK downloads for HP64, Linux, Tur64 and Windows.
      • The ESRI Products downloads for Linux, Tru64 and Windows.
         

      UPDATE 04/17/2007 - Now Available:

      • The Oracle8i downloads for IBM and Solaris.
      • The Oracle9i downloads for Solaris and Solaris64.
      • The SDK downloads for IBM, Solaris and Solaris64.
      • The ESRI Products downloads for IBM and Solaris.

      Getting Help

      Domestic sites, please contact ESRI Technical Support at 1-888-377-4575, if you have any difficulty installing this Patch. International sites, please contact your local ESRI software distributor.



    Download ID:1268

    Get help from ArcGIS experts

    Contact technical support

    Download the Esri Support App

    Go to download options