Skip navigation
All Places > Esri Technical Support > Blog > 2012 > June
2012
With the release of ArcGIS 10.1, we have identified some issues that are affecting the GIS user community and have worked to fix these in some patches that were released today.

The ArcGIS 10.1 Parcel Editing General Maintenance Patch is now available on the ArcGIS Resource Center.
  • This patch resolves issues encountered with the Parcel Editor when connected to an ArcSDE database. Switching versions or database users results in broken editing templates and the reporting parcel layers are not turned on when joining. It also addresses issues with the Parcel Naming tool when working on parcels with origin connection lines.

The ArcGIS 10.1 (Desktop, Engine) ArcGIS Administrator Patch is now available on the ArcGIS Resource Center.
  • This patch addresses an issue where the IP address for the ArcGIS License Manager cannot be directly entered in the ArcGIS Administrator.

Please download these patches and install them at your earliest convenience.
Esri is pleased to announce that ArcGIS Runtime SDK 1.0 for WPF (Windows Presentation Foundation) and Java (Windows) was released today and can be downloaded from the Esri Customer Care Site. The Linux version of ArcGIS Runtime will be available in a few weeks.

ArcGIS Runtime is available to all Esri Developer Network (EDN) subscribers, and allows developers to create lightweight mapping applications for desktop and mobile devices using an SDK. For more information from the development team visit the related blog post on the ArcGIS Blog.
screenshot_03.pngHave you ever been doing a process that you have done time and time again, but the results are different or acting sporadic?  Examples of this could be an inability to snap a to layer, being unable to save your map, layers not drawing properly, or your map taking a longer than expected time to load.  Sometimes these issues can be resolved by created a new MXD.



I have found that starting with a "clean slate" can be an easy way to fix any unexpected behavior. The instructions below describe how to bring your data into a new map document.

1)      Open the map document that you are having issues with.

2)      Open a new instance of ArcMap and situate it so that it is next to your original map document.

3)      Drag your data frame from the existing map to your new blank map.

4)      Save your map.

5)      Try the process that you were trying unsuccessfully in the previous map document.

There is no guarantee that this will resolve your issue, as there could be any number of issues causing your problem.  I am amazed, however, at how many times just adding the data to a new MXD resolves the issue!

See others in our 5 Minute Troubleshooting series:

- Unable to Export Event Layer to ShapefileJuliana W. – Desktop Support Analyst
key-features1-lg-e1340223294881.jpgEsri is pleased to announce that ArcGIS for Windows Mobile 3.0 was released today, and is available for download on the Esri Customer Care Site.  ArcGIS for Windows Mobile 3.0 is compatible with ArcGIS 10.1 software, and the versions have been renamed to 3.x to better align with other mobile offerings from Esri.

For more information from the development team visit the related blog post on the ArcGIS Blog.
Are you working to put together a migration plan for the transition to ArcSDE 10.1?  There are some new changes for connecting and disconnecting users with ArcSDE 10.1!Good to Know

One of the more significant changes with ArcSDE 10.1 is that the default means of connecting to the geodatabases is via Direct Connections. And gone is the script, i.e. sde:sqlserver:servername, replaced by simply providing the instance name where the RDBMS resides.

database_connection-300x211.jpg

[Note:  ArcSDE service connections are still available through the use of geoprocessing tools or Python script to connect to an enterprise geodatabase.]

The geodatabase administrator can now disconnect users from a geodatabase from the Connections tab on the Administer Geodatabase dialog box in ArcGIS for Desktop.
  1. Right-click the database connection in the Catalog tree, point to Administration, then click Administer Geodatabase.
  2. Click the Connections tab.
  3. Choose the user connection (or connections) you want to remove.
  4. Right-click the connections and click Disconnect.

[Please note, the geodatabase administrator may need to be granted certain permissions to do this, e.g., for SQL Server the administrator must be added to the processadmin fixed server role.]Disconnect-300x183.jpg

And for administrators, there is a new tool that allows you to prevent connections during those times when you need to perform maintenance.
  1. Right-click the database connection in the Catalog tree and click Properties.
  2. Click the Connections tab.
  3. Uncheck Geodatabase is accepting connections.
NotAcceptingPics-300x193.jpgWay to prepare client systems with ArcSDE 10.1

Make sure you have the correct RDBMS client for your Windows client systems. One way to download the correct RDMBS client is through your Esri Customer Care Portal downloads folder. All of the supported RDBMS clients are located in the Software Downloads section under the DBMS Support Files link.Phillip W – Geodata Support Analyst
In Support Services, as we answer various types of ArcPad calls throughout the day, we are often asked the magical question:

Which version of ArcPad should I install onto my desktop and mobile device?


Which is always followed up with:

Where can I get the latest version of ArcPad?

 

bulb_yel-1-e1339628094776.png

This gives me the opportunity to think about the best answer and then it comes, the “light bulb”.

First, for the question: "Which version of ArcPad should I install onto my desktop and mobile device?"

wrench-e1339629145208.png I simply let the user know that they should download and install the latest version of ArcPad. This will allow them to work with a version of the product that has gone through a series of improvements. Improvements that have addressed previously identified bugs and have enhanced the functionality and performance of the software.


Then for the question: "Where can I get the latest and greatest version of ArcPad?"

I guide my users to the Esri Customer Care Site. After logging in with their Esri Global ID credentials, they are able to see their products and any updates that are available for download from the product line.

ECCP.png

 

They can then select the most current version of ArcPad.

ECCP1.pngECCP2.pngtrimble_gps_map03-e1339630496630.png
After downloading the latest version of the ArcPad software, the user is then ready to download and install it onto their desktop. From the desktop, this version of ArcPad can then be sent to the mobile device.
With the newest software downloaded and installed, ArcPad will be ready to use in the field!Juan L. – ArcPad/Desktop Support Analyst
Subscriptions for ArcGIS Online has officially launched and is now available for purchase or a 30-day free trial.ArcGISOnline.jpg
With ArcGIS Online, organizations can create feature and tile services, publish their maps and data in the Esri cloud, and leverage all of the existing basemaps to create great looking maps that can be shared with others. With an ArcGIS Online account, administrators can also manage user accounts, permissions and content.


If you are already subscribed to ArcGIS Online, here is a quick list of available tools and self-help resources to help you get started with ArcGIS Online:
  • Getting Started Videos - These videos provide quick tutorial demos about using specific capabilities in ArcGIS Online.
  • Troubleshooting - Common issues you might encounter when using a Software-as-a-Solution (SaaS) product such as ArcGIS Online and some recommended solutions.
  • What’s New - The latest updates from the ArcGIS Online team about regularly added features and enhancements.
  • ArcGIS Online Blogs - Expert opinion on features, tips and tricks and how to get the most from your ArcGIS Online subscription.
  • ArcGIS Online Forums – The Forums on the Resource Center are a place to find posts from other users with similar views, questions, and/or challenges.
  • ArcGIS Ideas - Submit new feature or enhancement requests or vote on existing requests via ArcGIS Ideas.

Now that you have all the required tools and resources, here is something that will help you determine if ArcGIS Online is firing on all cylinders!

We are excited to announce the ArcGIS Online Health Dashboard, a one-stop-shop for authoritative information on ArcGIS Online system availability and performance. This site provides you with:
  • A log of all service interruptions and historical performance data for up to 4 weeks
  • Real-time updates on planned maintenance activity
  • The ability to report system outages (authorized caller login required)
  • RSS feed signup for specific or general service availability

The dashboard is our way of providing ArcGIS Online users with an effective, transparent interface that shows the latest and most relevant information on ArcGIS Online. The RSS feeds allow users to sign up for, and receive automatic updates on, the status of each of the services.

In case of an issue (performance issue, service disruption) or if there is an informational message, you can hover on the icon to get more details.

dashboard2.jpg


We hope you enjoy using ArcGIS Online!Nitin B. – Program Manager Support Readiness & Timothy H. - Raster/3D Support Analyst
I’ve been doing some load testing against ArcGIS Server recently, and it came to mind that while we often tell users to use load testing tools prior to going public with a GIS application, we don’t go into too much detail into how to go about setting up those tests. In this blog, I’ll describe how to configure and run tests using an open source Java tool called JMeter to assist with load testing your GIS Server installation and application.First, what is JMeter?

From the JMeter website:

“The Apache JMeter™ desktop application is open source software, a 100% pure Java application designed to load test functional behavior and measure performance. It was originally designed for testing Web Applications but has since expanded to other test functions. “What can I do with it?

“Apache JMeter may be used to test performance both on static and dynamic resources (files, Servlets, Perl scripts, Java Objects, Data Bases and Queries, FTP Servers and more). It can be used to simulate a heavy load on a server, network or object to test its strength or to analyze overall performance under different load types. You can use it to make a graphical analysis of performance or to test your server/script/object behavior under heavy concurrent load."

That’s all great, but here’s what I do with it:

I use JMeter to simulate the load of a group of users concurrently working with ArcGIS Server. These simulated users are SUPERHUMAN, as my JMeter tests fire off requests at the rate of hundreds or thousands per minute. I recently tested memory utilization of 10.1 after sending literally 100 million + query feature requests to ArcGIS Server on an AMI over the course of a week or so. (You’ll be happy to know that I found that memory was well managed during this test).

Remember that JMeter is not a browser. While the server is going to complete whatever operation you submit to it, JMeter will not render the response graphically. You get results in the form of a PASS/FAIL notification.

Nice. Let’s put that together and run a test. Allow me to walk you through it.What do I need?

Great question. You’ll need:
  • Your ArcGIS Server machine. You can test Java or .Net, on any supported OS.
  • Somewhere to install JMeter. This can be the same machine as your ArcGIS Server, but I find that you’ll get more accurate results if JMeter is installed somewhere else. That’s because as it runs, the JMeter application’s Java container will chew up a good bit of RAM, which may skew your results. JMeter is a pure Java tool, so it can run on Windows and Linux. For my testing, I’m running JMeter on Win08.
  • Fiddler and Firebug. I find that the Fiddler tool is helpful for troubleshooting failed requests and the like. It’s also good for helping to build requests to be used in your test plan. Fiddler and Firebug (add-on for the Firefox browser) are both excellent lightweight tools for testing and debugging.
  • The Java Runtime Environment (JRE) installed and an environment variable pointing to JAVA_HOME.
Where do I start?

There’s not really an installer for JMeter, everything you need is inside the application folder. The first thing to do is open the JMeterbin folder, and have a look at the JMeter.bat file.  On line 71, find the line that reads as follows:set HEAP=-Xms512m –Xmx512m

This variable defines the amount of memory dedicated to the Java Heap.

I’d increase this to 1024, devoting a full gigabyte of memory to the JVM, like so:set HEAP=-Xms1024m -Xmx1024m

Otherwise, particularly on larger tests, you run the risk of going over the Java Heap threshold, which can cause the JVM dedicated to JMeter to fail.

After you’ve downloaded JMeter, installed the JRE, and set the JAVA_HOME environment variable to point to your Java install location, it’s time to fire up JMeter. To do this, open a command prompt and navigate down into the JMeter BIN directory (the same place where JMeter.bat lives). Call JMeter.bat from a command line, and the JMeter application will open.jmeter1.png

With JMeter open, it’s time to first define some defaults. To do that, right click on the Test Plan icon (It looks like a beaker) and add an HTTP Request Defaults Element.  (Add>Config Element>HTTP Request Defaults)jmeter2.png

Now we will populate some of these parameters on the HTTP Request Defaults page.

Server name or IP: that’s self-explanatory. Insert the IP address or hostname of the machine that runs ArcGIS Server (or the proxy that points to server).  I don’t usually define any connect or response timeouts here in JMeter. The path will be the path to your SOAP or REST endpoint – to the operation you want to perform (query, export map, etc.). The parameters that are sent with the request are similar to the parameters that are defined if you’re querying through the REST Services Directory.

I find it helpful to use the Fiddler tool to capture the URLs of queries sent either through the service’s REST page or your web application to assist with populating these parameters.

For instance, you may issue a query based on a set of X/Y coordinates with the intention of retrieving some attributes for a given feature. In that case, you may capture a URL similar to the following in Fiddler:
http://randall:6080/arcgis/rest/services/usa/MapServer/0/query?where=
&text=&objectIds=&time=&geometry=-119.78861600000%2C35.30318900030
&geometryType=esriGeometryPoint&inSR=4269&spatialRel=esriSpatialRel
Intersects&relationParam=&outFields=*&returnGeometry=true&maxAllowable
Offset=&outSR=&returnIdsOnly=false&returnCountOnly=false&orderByFields
=&groupByFieldsForStatistics=&outStatistics=&returnZ=false&returnM=false
&f=pjson

In this URL, I’m issuing a query to layer ‘0’ in a service called ‘usa’ serviced from port 6080 on machine called ‘randall’.

I’m not using any real SQL operators (the where clause), nor am I looking for a specific text attribute (text). I don’t care about the object ID, or the time element. I do care about the geometry, that’s where my XY values are specified. In fact, the only elements I care about in this test is the spatial reference (4326), the spatial relationship (intersect), the outfields (*, since I want them all), and I’m submitting the geometry as a point. Finally, for this test, I would like for the server to respond to the requests I send in JSON format.  With that in mind, I can truncate the URL that I’ll be parsing a bit, to make setting up the JMeter test a bit more manageable:
http://localhost:6080/ArcGIS/rest/services/usa/MapServer/0/query?&geometry
=-149.54518800000%2C70.42196900010&geometryType=esriGeometryPoint&inSR=4269
&spatialRel=esriSpatialRelIntersects&returnCountOnly=false&returnIdsOnly=
false&returnGeometry=true&outFields=*&f=json

Once I’ve gathered these defaults, I putthese inputs into my JMeter project:jmeter3.png

Next, I’ll need to set up some simulated users. While we’ve got the request defaults down, we want to test with a good many values – in other words, we don’t want our application to just take the same request over and over, that’s too easy. It’s best if we can test with many different samples.  In JMeter, this is accomplished by creating ‘thread groups’.

Right-click on the test plan and select ‘Add’, then ‘Threads (Users). In my case, we’re simulating a load of 16 users, so each thread group will contain 2 threads. I want to see how much load my application can take before it fails, so I’m setting this test to loop forever.jmeter4.png

Once the Thread Groups are set up, we’ll need to set up the actual requests, which contain the defaults we set up earlier, as well as the variables that we want to pass in our requests. To that end, right click on a Thread Group; choose ‘Add’, ‘Config Element’, and then ‘HTTP request defaults’. This screen should look familiar; it’s exactly like the defaults we originally created.

In this case, the objective of the test is to see how much load the server can handle if many hundreds of thousands of query requests are sent to gather the attributes of a feature based on XY coordinates passed through the query.

So, for each request sent by JMeter, the only query element that changes from request to request will be the input point geometry. To that end, I’ve compiled a .CSV file, and set up a CSV Data Set Configuration element in my test project (Add>Config element>CSV data set Config). Your data source doesn’t have to be CSV, you can use a database table if you prefer – use a JDBC connection for that.jmeter5.png

Per the figure above, my CSV file is called xycord.csv (I’ve got the CSV stored in the same folder as my test plan – if yours is stored somewhere else, set the filename to the absolute path where it’s located.

Be sure to set the variable names properly – if there are spaces and commas in your CSV file; make sure that this element reflects those spaces. The comma delimitation here only separates variable names in the CSV – the actual delimiter used in the CSV file is described in the ‘Delimiter’ parameter. Since I’m allowing my test to run until I force it to stop, I’m recycling the requests and am not stopping when JMeter detects that the end of the file is reached.

For my test, I’ve replicated each HTTP request parameter for each of the users that I’m simulating in the thread groups I’ve set up.

Now it’s time to test. Save the test plan.

In JMeter, go to ‘Run’, then ‘Start’. Click on one of the reports.

With luck, your requests will run. If the error percentage you get is 100%, then you’re likely shooting bad requests.

You can examine the requests you’re sending to the server by working with the Fiddler tool:

If Fiddler is installed on the same machine as JMeter, then in the main HTTP request defaults page, you may force traffic to go through the Fiddler proxy so that requests and subsequent responses are captured. By default, Fiddler listens on port 8888, so you can set up JMeter as follows:jmeter6.png

When you start your JMeter run again, Fiddler will capture the traffic, which will allow you to see what JMeter is passing so that you may make adjustments according to your needs.A Few Tips

Use as few listeners as possible. For smaller tests, the graphical counters are great. These counters are memory intensive, however, and I’ve crashed my JVM with larger tests when running with counters. I just use the Summary Report – it’s got the information I need.

Consider using JMeter from a command line interface once your configuration is set up. The Command Line option is minimally resource intensive.

That’s about it for this installment. I’ll follow up with additional testing workflows as I can.Randall W. - Server Support Analyst
bulb_yel-11-e1340840911868.pngA common question that I see in Desktop Support is “Why is ArcMap performing so slowly?” This can be a particularly tricky question as the answer depends on so many factors. For some, the answer is related to having a DEM with ½ centimeter accuracy turned on for the entire contiguous U.S., along with parcels, hydrology, streets network, and land use data for an entire county, with a 50% transparency set to each layer. Of course this example is an exaggeration, but it is true that we (myself included) expect our computers to handle whatever we throw at them and still get optimal performance. While the solution to the question can sometimes be to reduce the amount of layers ArcMap needs to draw, there can be times where the analyses that we are running are completely reasonable and the performance that we are experiencing is not. Here are several troubleshooting steps that resolve a lot of performance related issues that I see in Desktop Support.

  1. Reboot your machine. I, too, am a victim of leaving my machine on for days on end. This can cause applications and processes to pile up in the Task Manager and, because of this, we can expect slow performance. It is best to start with a clean slate and reboot the machine.
  2. Do you meet the minimum requirements? Some users upgrade from version 9.3 to version 10 without checking this, and later realize they don’t meet the RAM or video card requirements. The "Can you run it utility" will scan your machine and tell you if it's up to the task.
  3. Is the behavior MXD specific? If you are experiencing unexpected behavior, the issue may be related to the MXD. To test this, open another instance of ArcMap next to your existing MXD and drag and drop your layers into the new MXD. Test to see if the behavior persists. You can also try using the MXD Doctor. This will analyze your MXD for corrupt objects and will generate a new copy of your MXD. You can find this at Start > All Programs > ArcGIS > Desktop Utilities > MXD Doctor.
  4. Is the behavior data specific? Similar to MXD issues, performance issues can be related to shapefiles, feature classes, or other data. Test to see if the issues persist with other datasets. If they do not, it may be data specific. Try exporting your feature classes out to a new location and test your workflow on this copy of the data.
  5. Does this happen on other machines? While this suggestion won’t actually resolve any issues, it is helpful in narrowing down the problem. If everyone in your organization is having issues, it is most likely data, MXD, or network specific issues. If you are the only one, you know it is something with your configuration.
  6. Does this happen if you log into the machine with a different Windows User Profile? This sounds bizarre, but ArcGIS for Desktop relies heavily on your Windows User Profile, so once in a while, these can become corrupt and you may need to consider creating a new profile.
  7. Does this happen with local data? If you are working with shapefiles or file/personal geodatabases on your network, try exporting them to your C drive. If the issues leave, it may very well be a network issue. In this case, you will want to talk with IT to discuss potential causes and solutions. If you are using SDE data and you export to a local file geodatabase and it resolves the issue, you will want to look into your SDE connection.
  8. Rename your Normal templates.The normal template is the template that is automatically loaded from your user profile every time you launch ArcGIS for Desktop. It contains the UI customizations you have made, including toolbars, buttons, window placements, and more. These templates can become corrupt, so by renaming them, you will prompt the software to generate a new, default normal template. Here is how to rename your normal template in version 10:
    1. Close ArcCatalog and ArcMap.
    2. Navigate to root %userprofile%\AppData*\Roaming\ESRI\Desktop10.0\ArcMap (*if hidden go to the Tools folder options view).
    3. Open the Templates folder.
    4. There will be a "Normal.mxt" file. Right-click on that file, and rename it to something besides Normal. Then re-start ArcMap.
    5. ArcCatalog and ArcToolbox also have normal templates. If need be, navigate to their respective folders and rename their normal templates as well.
  9. Are you up to date on Service Packs? You can find an updated list of service packs and patches on our Resource Center.
  10. Is your My Documents folder stored to your C drive? Some organizations map out their My Documents folders to their network. This can be problematic with ArcGIS for Desktop 10.x, as several files and folders that ArcMap relies on are stored here, including the Default.gdb. Talk with IT to see if you can get your My Documents folder redirected to your local drive.
  11. Check for any 3rd party tools. There are a lot of great third party extensions out there, but unfortunately, we do not test or certify against them. Some can occasionally cause conflicts, so it is worth uninstalling these to see if the behavior persists. If it does, you may want to consider logging a support request with that third party company to see if it is a known issue. Here are a few places to check for hidden 3rdparty tools on your machine:
    1. All programs and features in the Control Panel.
    2. Look through the list of all toolbars in ArcMap (Open ArcMap > Customize > Toolbars)
    3. Look through the list of all extensions in ArcMap (Open ArcMap > Customize > Extensions)
    4. Look in the Add-In Manager (Open ArcMap > Customize > Add-in Manager)
  12. Are you using continual scan anti-virus? Try temporarily disabling a continual scan anti-virus, as this can cause performance issues in ArcGIS for Desktop.
  13. Do you have any drivers that need updating?
    1. Open Control Panel > Device Manager.
    2. Expand Display Adapters.
    3. Right click the adapter below this > Properties.
    4. Go to the Driver tab > Update Driver > Search Automatically.
    5. If you can upgrade, then install the newer driver.
  14. Redirect your temporary folders and optimize your Virtual Memory:
    1. Navigate to Start > Settings > Control Panel > System (Advanced System Settings) > Advanced tab > Environment Variables.
    2. For both TEMP and TMP, you will likely see a value such as C:/Users/<username>/AppData/Local/Temp.
    3. If so, edit each so that they equal "C:/Temp", without the quotes.
    4. Click OK to close the Environment Variables window.
    5. Under performance, click Settings.
    6. Click Advanced.
    7. For Virtual Memory, select Change.
    8. Select System managed size > OK.

Again, keep in mind that there are limits on what we can realistically expect the software to do. If the above steps don’t resolve your performance issues, you may want to consider logging a request with Support Services and we’d be more than happy to continue testing from there.Lucas D. - Desktop Support Analyst

Filter Blog

By date: By tag: