Select to view content in your preferred language

X,Y event layer and not all rows

1906
10
11-09-2011 09:13 AM
LorindaGilbert
Frequent Contributor
Hi All,
Has anyone else run into this?  I have a view in Oracle that I am using for an x,y event layer in ArcMap (and by way of publishing, a mapping service).  I have over 21K rows in the view when I query in Oracle.  When I open the layer file in ArcMap, I SEE all of the points (at least the ones that have valid x y coords - there are a few nulls), but when I open the attribute table there are only 2048 in the list.  Yet, I can go to one that is not showing in the attribute list and do an info tool and get the data.
What kind of quirkiness is this?
ETA:  Win7 x64, Arc10 SP1, Oracle 10g, our server for SDE is SQL Server 2008
Thanks.
Tags (2)
0 Kudos
10 Replies
RichardFairhurst
MVP Alum
Hi All,
Has anyone else run into this?  I have a view in Oracle that I am using for an x,y event layer in ArcMap (and by way of publishing, a mapping service).  I have over 21K rows in the view when I query in Oracle.  When I open the layer file in ArcMap, I SEE all of the points (at least the ones that have valid x y coords - there are a few nulls), but when I open the attribute table there are only 2048 in the list.  Yet, I can go to one that is not showing in the attribute list and do an info tool and get the data.
What kind of quirkiness is this?
ETA:  Win7 x64, Arc10 SP1, Oracle 10g, our server for SDE is SQL Server 2008
Thanks.


Row 2048 is suspicious, since that is the default number of rows fetched by the table when it opens to preserve performance (why retrieve all rows if you don't actually look at them and just need to do a calculation or something in the first few records).  When you get to that row it does not always respond to arrow or page down keyboard events.  Try pressing the Last Record button in the table.  That should take you to the real last row in your table and then you should be able to page or arrow through the full record set.  It is a bug that they got partially fixed, but occassionally it still occurs (harder to replicate however, so harder to get Esri to fix it).
0 Kudos
LorindaGilbert
Frequent Contributor
Yes, you are right the 2048 is the default value for the number of rows that ESRI returns at first so as not to overwhelm you when you have a half a million rows in a table like I do in some other tables.  I have pressed the end of the table arrow and only get the 2048 - I want to know where the rest of the 20K are.
Thanks
0 Kudos
RichardFairhurst
MVP Alum
Yes, you are right the 2048 is the default value for the number of rows that ESRI returns at first so as not to overwhelm you when you have a half a million rows in a table like I do in some other tables.  I have pressed the end of the table arrow and only get the 2048 - I want to know where the rest of the 20K are.
Thanks


Given that then the suspect becomes the way that fetch limit is interacting with the way you defined your view.  This could be something very specific to your SDE set up.  I have never found a fix for this behavior with normal table connection outside of SDE other than the one I mentioned, so I would contact technical support now that you have told me that does not work.  If you cannot replicate it on any other table, then you will need to retrace how you set that specific view up to get any real help from Esri.  (I am not an SDE expert, so I cannot help you there, I just know what tech support looks for to help with this kind of problem).
0 Kudos
LorindaGilbert
Frequent Contributor
Wonder if it is more of an Oracle issue.  I have a view created in SQL Server that has 108K rows in it that all show in the attribute table when the end of table arrow is pressed.  This is also an x,y event layer.  In the Oracle view, there are only 1714 rows where the x or y is null (and is expected).  So the attribute table is still not showing 20K +/- rows.
0 Kudos
JimW1
by
Frequent Contributor
This happens to me with SDE (Arc10) on SQL Server 2008 about once a week. The table will only show 2048 records. If I close my ArcMap session and re-open then the table is fine.

I've repeatedly searched these forums for someone else experiencing this problem so I kind of got excited when I saw this thread. I have had it happen with XY Events and Joins and it is never reproducible b/c a simple ArcMap close fixes the problem.
0 Kudos
LorindaGilbert
Frequent Contributor
This happens to me with SDE (Arc10) on SQL Server 2008 about once a week. The table will only show 2048 records. If I close my ArcMap session and re-open then the table is fine.

I've repeatedly searched these forums for someone else experiencing this problem so I kind of got excited when I saw this thread. I have had it happen with XY Events and Joins and it is never reproducible b/c a simple ArcMap close fixes the problem.


Unfortunately, a reboot of machine and restart of ArcMap didn't solve this one.  Guess I need to try Support, although maybe first check the dev machine that has SP2 on it and then one that has SP3 on it.  We don't just install SP's cause they are available, we make sure that they don't break something that wasn't broken before (been there, done that).
0 Kudos
LorindaGilbert
Frequent Contributor
Well, SP2 and SP3 make no difference at all.  Rats.  So does anyone know if there is a pre-fetch setting hiding somewhere in ESRI?  Maybe in one of the 'hidden' exe's that are buried in the program directory?  I know there was one that controlled something like this in the mdb's in 9.1 or 9.2 - can't remember exactly which now.
0 Kudos
bradenmiller
Occasional Contributor
I'm having this exact issue.  Anyone know how to fix it??

I have a table of 800,000+ records, and I need the entire table, but it only loads 2048, so my custom app is failing since it can't access all records.  I try the >| button in the attribute table and then all rows show up, but if I close the table and reopen I'm back to 2048...

Very frustrating!
0 Kudos
RichardFairhurst
MVP Alum
I'm having this exact issue.  Anyone know how to fix it??

I have a table of 800,000+ records, and I need the entire table, but it only loads 2048, so my custom app is failing since it can't access all records.  I try the >| button in the attribute table and then all rows show up, but if I close the table and reopen I'm back to 2048...

Very frustrating!


What interfaces are you accessing?  Cursors on the underlying Feature Layer or Standalone Table should not be affected by this, but accessing the TableView object would be.  You can get feature selections without the tableview using IFeatureSelection.  Haven't looked to see if there is a similar interface for Standalone Tables.  How are you interacting with the TableView in you app?  There should be a way to bypass the behavior in code, but it may not be straight forward.
0 Kudos