[Gvsig_english] gvSIG, Oracle Spatial and Views

Juan Lucas Dominguez Rubio jldominguez at prodevelop.es
Wed Apr 14 17:11:13 CEST 2010


Hello, Kornel.
 
That's a very interesting test.
 
This is my first impression: the gvSIG Oracle Spatial driver sets FETCH_SIZE to 15000. This probably means that in a single access to the database, a portion of the resulting data (15000 rows) needs to be stored in memory. Since each row in the last test needs about 25 KB, the total space needed n memory is about 375 MB, which causes an out of memory error.
 
If you increase the amount of memory assigned to gvSIG, this problem is less likely to happen, of course. You can change it in this script if you are on Linux:
 
$HOME/gvSIG_1.1.1/gvsig.sh 
 
Perhaps we should change the 15000 and make it inversely proportional to the size of each row. I'll look into it
 
 
Regards,
 
Juan Lucas Domínguez Rubio
---
Prodevelop SL, Valencia (España)
Tlf.: 96.351.06.12 -- Fax: 96.351.09.68
http://www.prodevelop.es <http://www.prodevelop.es/> 
---

________________________________

De: gvsig_internacional-bounces at listserv.gva.es en nombre de K.Kiss
Enviado el: mié 14/04/2010 16:43
Para: gvsig_internacional at listserv.gva.es
Asunto: Re: [Gvsig_english] gvSIG, Oracle Spatial and Views




Hello,

i changed my original problem. I´ve converted the original view in standard
oracle-table. Here the create skript:

delete from user_sdo_geom_metadata where table_name='MOBIL_R'
/
insert into user_sdo_geom_metadata values(
'MOBIL_R','GEOM',mdsys.sdo_dim_array(mdsys.sdo_dim_element( 'X', 4356000,
4612550, 0.0005),mdsys.sdo_dim_element( 'Y', 522550, 5496000,
0.0005),mdsys.sdo_dim_element( 'Z', -255, 255, 0.0005)),82032)
/
DROP TABLE MOBIL_R CASCADE CONSTRAINTS
/
CREATE TABLE MOBIL_R
(
  OBJEKT_ID          NUMBER,
  NAME               VARCHAR2(80 BYTE),
  STRASSEHAUSNR      VARCHAR2(80 BYTE),
  PLZ                VARCHAR2(255 BYTE),
  ORT                VARCHAR2(255 BYTE),
  GEOM               MDSYS.SDO_GEOMETRY,
  ANNOTATIONO        VARCHAR2(255 BYTE),
  CITYO              VARCHAR2(255 BYTE),
  CLASSIFICATIONO    VARCHAR2(255 BYTE),
  EASTINGO           VARCHAR2(255 BYTE),
  EPLUSO             VARCHAR2(255 BYTE),
  EPLUSUMTSO         VARCHAR2(255 BYTE),
  EUROO              VARCHAR2(255 BYTE),
  INITIALOPERATIONO  VARCHAR2(255 BYTE),
  NEWOPERATIONO      VARCHAR2(255 BYTE),
  NORTHINGO          VARCHAR2(255 BYTE),
  OFFICESO           VARCHAR2(255 BYTE),
  OTHERSO            VARCHAR2(255 BYTE),
  O2O                VARCHAR2(255 BYTE),
  O2UMTSO            VARCHAR2(255 BYTE),
  RADIOSTATIONSKWO   VARCHAR2(255 BYTE),
  RADIOSTATIONSUKWO  VARCHAR2(255 BYTE),
  SAFETYDISTANCEO    VARCHAR2(255 BYTE),
  TMOBILEO           VARCHAR2(255 BYTE),
  TMOBILEUMTSO       VARCHAR2(255 BYTE),
  TVSTATIONSO        VARCHAR2(255 BYTE),
  VODAFONEO          VARCHAR2(255 BYTE),
  VODAFONEUMTSO      VARCHAR2(255 BYTE)
)
/
CREATE INDEX MOBIL_PUNKT_GEOM_R ON MOBIL_R
(GEOM)
INDEXTYPE IS MDSYS.SPATIAL_INDEX
/
insert into mobil_r  select * from  UIS_GIS_MUC_MOBILFUNKANL_V_R
/
commit
/
So wide so good, the loading of the data of the oracle-table work!
----------------------------------------------------------------

Change to 1000Byte  Varchar2()!

delete from user_sdo_geom_metadata where table_name='MOBIL_R'
/
insert into user_sdo_geom_metadata values(
'MOBIL_R','GEOM',mdsys.sdo_dim_array(mdsys.sdo_dim_element( 'X', 4356000,
46110000, 0.0005),mdsys.sdo_dim_element( 'Y', 5210000, 5496000,
0.0005),mdsys.sdo_dim_element( 'Z', -1000, 1000, 0.0005)),82032)
/
DROP TABLE MOBIL_R CASCADE CONSTRAINTS
/
CREATE TABLE MOBIL_R
(
  OBJEKT_ID          NUMBER,
  NAME               VARCHAR2(80 BYTE),
  STRASSEHAUSNR      VARCHAR2(80 BYTE),
  PLZ                VARCHAR2(1000 BYTE),
  ORT                VARCHAR2(1000 BYTE),
  GEOM               MDSYS.SDO_GEOMETRY,
  ANNOTATIONO        VARCHAR2(1000 BYTE),
  CITYO              VARCHAR2(1000 BYTE),
  CLASSIFICATIONO    VARCHAR2(1000 BYTE),
  EASTINGO           VARCHAR2(1000 BYTE),
  EPLUSO             VARCHAR2(1000 BYTE),
  EPLUSUMTSO         VARCHAR2(1000 BYTE),
  EUROO              VARCHAR2(1000 BYTE),
  INITIALOPERATIONO  VARCHAR2(1000 BYTE),
  NEWOPERATIONO      VARCHAR2(1000 BYTE),
  NORTHINGO          VARCHAR2(1000 BYTE),
  OFFICESO           VARCHAR2(1000 BYTE),
  OTHERSO            VARCHAR2(1000 BYTE),
  O2O                VARCHAR2(1000 BYTE),
  O2UMTSO            VARCHAR2(1000 BYTE),
  RADIOSTATIONSKWO   VARCHAR2(1000 BYTE),
  RADIOSTATIONSUKWO  VARCHAR2(1000 BYTE),
  SAFETYDISTANCEO    VARCHAR2(1000 BYTE),
  TMOBILEO           VARCHAR2(1000 BYTE),
  TMOBILEUMTSO       VARCHAR2(1000 BYTE),
  TVSTATIONSO        VARCHAR2(1000 BYTE),
  VODAFONEO          VARCHAR2(1000 BYTE),
  VODAFONEUMTSO      VARCHAR2(1000 BYTE)
)
/
CREATE INDEX MOBIL_PUNKT_GEOM_R ON MOBIL_R
(GEOM)
INDEXTYPE IS MDSYS.SPATIAL_INDEX
/
insert into mobil_r  select * from  UIS_GIS_MUC_MOBILFUNKANL_V_R
/
commit
/


The same datas producing any errors in GVSIG:

ERROR AWT-EventQueue-1
es.prodevelop.cit.gvsig.fmap.drivers.jdbc.oracle.OracleSpatialDriver -
===============
DEBUG Thread-26
es.prodevelop.cit.gvsig.fmap.drivers.jdbc.oracle.OracleSpatialDriver - SQL
para leer ids: select rowid, c.GEOM.SDO_ELEM_INFO from UMSYSGIS.MOBIL_R c
INFO Thread-26
es.prodevelop.cit.gvsig.fmap.drivers.jdbc.oracle.OracleSpatialDriver -
FETCH_SIZE = 15000
DEBUG Thread-26
es.prodevelop.cit.gvsig.fmap.drivers.jdbc.oracle.OracleSpatialDriver -
Beginning of result set:
INFO Thread-26
es.prodevelop.cit.gvsig.fmap.drivers.jdbc.oracle.OracleSpatialDriver - IDs
read: 0
DEBUG AWT-EventQueue-1 com.iver.cit.gvsig.fmap.layers.FLyrDefault -
setTocStatusImage sun.awt.image.ToolkitImage at 55fd43 sobre capa
UMSYSGIS.MOBIL_R
INFO Thread-26
es.prodevelop.cit.gvsig.fmap.drivers.jdbc.oracle.OracleSpatialDriver - Ids
thread delayed by: 953 ms.
DEBUG AWT-EventQueue-1 com.iver.andami.ui.mdiFrame.MDIFrame - Memory usage
60236 KB
DEBUG AWT-EventQueue-1 com.iver.andami.ui.mdiFrame.MDIFrame - Memory usage
60236 KB
DEBUG Thread-26 com.iver.cit.gvsig.fmap.layers.FLyrDefault -
setTocStatusImage null sobre capa UMSYSGIS.MOBIL_R
DEBUG Thread-19
es.prodevelop.cit.gvsig.fmap.drivers.jdbc.oracle.OracleSpatialDriver - MAIN
SEL = select ROWID, c."OBJEKT_ID", c."NAME", c."STRASSEHAUSNR", c."PLZ",
c."ORT", c."ANNOTATIONO", c."CITYO", c."CLASSIFICATIONO", c."EASTINGO",
c."EPLUSO", c."EPLUSUMTSO", c."EUROO", c."INITIALOPERATIONO",
c."NEWOPERATIONO", c."NORTHINGO", c."OFFICESO", c."OTHERSO", c."O2O",
c."O2UMTSO", c."RADIOSTATIONSKWO", c."RADIOSTATIONSUKWO",
c."SAFETYDISTANCEO", c."TMOBILEO", c."TMOBILEUMTSO", c."TVSTATIONSO",
c."VODAFONEO", c."VODAFONEUMTSO", c.GEOM from UMSYSGIS.MOBIL_R c where
(sdo_relate(GEOM, mdsys.sdo_geometry(2003, 82032, null,
mdsys.sdo_elem_info_array(1, 1003, 3), mdsys.sdo_ordinate_array(4356000.0,
-1.40906537313433E7, 4.611E7, 2.47966537313433E7)), 'mask=anyinteract
querytype=window') = 'TRUE')
DEBUG Thread-19 com.iver.andami.messages.NotificationManager - Java heap
space
java.lang.OutOfMemoryError: Java heap space
DEBUG Thread-19
es.prodevelop.cit.gvsig.fmap.drivers.jdbc.oracle.OracleSpatialDriver - MAIN
SEL = select ROWID, c."OBJEKT_ID", c."NAME", c."STRASSEHAUSNR", c."PLZ",
c."ORT", c."ANNOTATIONO", c."CITYO", c."CLASSIFICATIONO", c."EASTINGO",
c."EPLUSO", c."EPLUSUMTSO", c."EUROO", c."INITIALOPERATIONO",
c."NEWOPERATIONO", c."NORTHINGO", c."OFFICESO", c."OTHERSO", c."O2O",
c."O2UMTSO", c."RADIOSTATIONSKWO", c."RADIOSTATIONSUKWO",
c."SAFETYDISTANCEO", c."TMOBILEO", c."TMOBILEUMTSO", c."TVSTATIONSO",
c."VODAFONEO", c."VODAFONEUMTSO", c.GEOM from UMSYSGIS.MOBIL_R c where
(sdo_relate(GEOM, mdsys.sdo_geometry(2003, 82032, null,
mdsys.sdo_elem_info_array(1, 1003, 3), mdsys.sdo_ordinate_array(4356000.0,
-1.40906537313433E7, 4.611E7, 2.47966537313433E7)), 'mask=anyinteract
querytype=window') = 'TRUE')
WARN AWT-EventQueue-1 com.iver.andami.PluginServices - Plugin com.iver.core
-- Konnte Übersetzung nicht finden für: Informations-Konsole
WARN AWT-EventQueue-1 com.iver.andami.PluginServices - Plugin com.iver.core
-- Konnte Übersetzung nicht finden für: Aktiviert das Fenster
DEBUG Thread-19 com.iver.andami.messages.NotificationManager - Java heap
space
java.lang.OutOfMemoryError: Java heap space
DEBUG AWT-EventQueue-1 com.iver.core.mdiManager.NewSkin - Activando
Informations-Konsole
DEBUG AWT-EventQueue-1 com.iver.andami.ui.mdiFrame.MDIFrame - Memory usage
52627 KB
DEBUG Thread-19
es.prodevelop.cit.gvsig.fmap.drivers.jdbc.oracle.OracleSpatialDriver - MAIN
SEL = select ROWID, c."OBJEKT_ID", c."NAME", c."STRASSEHAUSNR", c."PLZ",
c."ORT", c."ANNOTATIONO", c."CITYO", c."CLASSIFICATIONO", c."EASTINGO",
c."EPLUSO", c."EPLUSUMTSO", c."EUROO", c."INITIALOPERATIONO",
c."NEWOPERATIONO", c."NORTHINGO", c."OFFICESO", c."OTHERSO", c."O2O",
c."O2UMTSO", c."RADIOSTATIONSKWO", c."RADIOSTATIONSUKWO",
c."SAFETYDISTANCEO", c."TMOBILEO", c."TMOBILEUMTSO", c."TVSTATIONSO",
c."VODAFONEO", c."VODAFONEUMTSO", c.GEOM from UMSYSGIS.MOBIL_R c where
(sdo_relate(GEOM, mdsys.sdo_geometry(2003, 82032, null,
mdsys.sdo_elem_info_array(1, 1003, 3), mdsys.sdo_ordinate_array(4356000.0,
-1.40906537313433E7, 4.611E7, 2.47966537313433E7)), 'mask=anyinteract
querytype=window') = 'TRUE')
DEBUG Thread-19 com.iver.andami.messages.NotificationManager - Java heap
space
java.lang.OutOfMemoryError: Java heap space
.................................

--
View this message in context: http://n2.nabble.com/gvSIG-Oracle-Spatial-and-Views-tp4611156p4902016.html
Sent from the gvSIG international mailing list archive at Nabble.com.
_______________________________________________
Gvsig_internacional mailing list
Gvsig_internacional at listserv.gva.es
http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_internacional


-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://listserv.gva.es/pipermail/gvsig_internacional/attachments/20100414/448a746f/attachment.htm 


More information about the Gvsig_internacional mailing list