"Edge table"
Is there an easy to implement way to get a schema-independent representation of the content stored in an XMLTYPE column? Rather than building XMLTABLEs & manually specifying PATH a thousand times, I'd like an easy way to free the content from the hierarchy of xml and get it into a key,value-ish representation as quickly and painlessly as possible.
Kinda like this?
http://www.informit.com/articles/article.aspx?p=169590&seqNum=5
Schema-Independent Representation
One possibility for handling the vagaries of full XML is to use a relational representation
that is totally independent of the schema of the XML data. An example of such a representation
is an edge table, in which a single table contains information about the relationship between
parent and child elements (using node identifiers), and another column contains simple
element content. Listing 6.14 provides an example of an XML fragment and an edge-table
representation of it.
Listing 6.14 An Edge Table for an XML Fragment
<Department id="A12x" name="Physics">
<Employee id="555-23-4567">
<name>Mary Phillips</name>
<office>21</office>
</Employee>
<Employee id="544-12-3456">
edge table
parentid childid name value
null 1 Department null
1 2 @id A12x
1 3 @name Physics
1 4 Employee null
4 5 @id 555-23-4567
4 6 name Mary Phillips
4 7 office 21
1 8 Employee null
8 9 @id 544-12-3456
Actually, I think I can use CONNECT BY to build that list once the XML's dumped into a table to build those xpaths.That's one way, indeed.
If you want the positional predicates too, you'll need an additional step, for example :
SQL> SELECT node_id
2 , parent_node_id
3 , node_name
4 , node_value
5 , sys_connect_by_path(xpath_step, '/') as xpath
6 FROM (
7 SELECT x.node_id
8 , x.parent_node_id
9 , x.node_name
10 , x.node_value
11 , case x.node_kind
12 when 'attribute' then '@' || x.node_name
13 when 'element' then x.node_name || '[' ||
14 to_char( row_number() over( partition by x.parent_node_id
15 , x.node_name
16 order by x.node_position ) ) || ']'
17 end as xpath_step
18 , x.node_position
19 FROM xml_test t
20 , XMLTable('/ROWSET/ROW'
21 passing xmltransform(t.doc, t.xsl)
22 columns node_id varchar2(100) path '@id'
23 , node_name varchar2(30) path '@name'
24 , node_value varchar2(2000) path 'text()'
25 , parent_node_id varchar2(100) path '@pid'
26 , node_kind varchar2(30) path '@kind'
27 , node_position for ordinality
28 ) x
29 )
30 CONNECT BY PRIOR node_id = parent_node_id
31 START WITH parent_node_id IS NULL
32 ORDER SIBLINGS BY node_position
33 ;
NODE_ID PARENT_NOD NODE_NAME NODE_VALUE XPATH
K1 Product /Product[1]
K2 K1 Type Laptop /Product[1]/@Type
K3 K1 Notebook /Product[1]/Notebook[1]
K4 K3 Brand HP /Product[1]/Notebook[1]/@Brand
K5 K3 Model Pavilion dv6-3132TX Notebook /Product[1]/Notebook[1]/@Model
K6 K3 Harddisk 640 GB /Product[1]/Notebook[1]/Harddisk[1]
K8 K3 Processor Intel Core i7 /Product[1]/Notebook[1]/Processor[1]
K10 K3 RAM 4 GB /Product[1]/Notebook[1]/RAM[1]
K12 K1 Notebook /Product[1]/Notebook[2]
K13 K12 Brand HP /Product[1]/Notebook[2]/@Brand
K14 K12 Model HP Pavilion dv6-3032TX Notebook /Product[1]/Notebook[2]/@Model
K15 K12 Harddisk 640 GB /Product[1]/Notebook[2]/Harddisk[1]
K17 K12 Processor Intel Core i7 /Product[1]/Notebook[2]/Processor[1]
K19 K12 RAM 6 GB /Product[1]/Notebook[2]/RAM[1]
K21 K1 Notebook /Product[1]/Notebook[3]
K22 K21 Brand Toshiba /Product[1]/Notebook[3]/@Brand
K23 K21 Model Satellite A660/07R 3D Notebook /Product[1]/Notebook[3]/@Model
K24 K21 Harddisk 640 GB /Product[1]/Notebook[3]/Harddisk[1]
K26 K21 Processor Intel Core i7 /Product[1]/Notebook[3]/Processor[1]
K28 K21 RAM 4 GB /Product[1]/Notebook[3]/RAM[1]
K30 K1 Notebook /Product[1]/Notebook[4]
K31 K30 Brand Toshiba /Product[1]/Notebook[4]/@Brand
K32 K30 Model Satellite A660/15J Notebook /Product[1]/Notebook[4]/@Model
K33 K30 Harddisk 640 GB /Product[1]/Notebook[4]/Harddisk[1]
K35 K30 Processor Intel Core i5 /Product[1]/Notebook[4]/Processor[1]
K37 K30 RAM 6 GB /Product[1]/Notebook[4]/RAM[1]
26 rows selected
Similar Messages
-
Error in creating partition table in oracle spatial by ankur
Hi,
Am working on Oracle 10.2.0.3
Am not able to create partition table in Oracle
i have all the required columns in node and edge table ......the moment i try to create partition table using exec sdo_router_partition.partion_router i get the following error:
ERROR at line 1:
ORA-00947: not enough values
ORA-06512: at "MDSYS.SDO_ROUTER_PARTITION", line 1510
ORA-06512: at "MDSYS.SDO_ROUTER_PARTITION", line 661
ORA-06512: at line 1
Can someone help ??hey i have found the solution myself :)
-
Strange error in SDO_ROUTER_PARTITION.PARTITION_ROUTER
Hi,
the statement
exec SDO_ROUTER_PARTITION.PARTITION_ROUTER('PARTITION', 4000);
gives the following output on Oracle 10.2.0.1.0 on Windows XP w/patch 5632711 applied.
What can be worng? Why should the partition procedure create a file or a directory?
Please advice, we are stuck!!
error starting at line 1 in command:
exec SDO_ROUTER_PARTITION.PARTITION_ROUTER('PARTITION', 4000);
Error report:
ORA-29280: percorso della directory non valido
ORA-06512: a "SYS.UTL_FILE", line 33
ORA-06512: a "SYS.UTL_FILE", line 436
ORA-06512: a "MDSYS.SDO_ROUTER_PARTITION", line 524
ORA-06512: a line 1
29280. 00000 - "invalid directory path"
*Cause: A corresponding directory object does not exist.
*Action: Correct the directory object parameter, or create a corresponding
directory object with the CREATE DIRECTORY command.
Thanks in advance.Thanks a lot Steven, your hint solved the problem.
The procedure now starts and completes, however, the final tables are empty (!)
The operation log follows:
Mer Feb 21 17:59:53 2007
******* Beginning SDO Router partitioning
Mer Feb 21 17:59:53 2007
INFO: create and load node_part table
Mer Feb 21 17:59:54 2007
INFO: cleanup partitioning temporary tables
Mer Feb 21 17:59:54 2007
ERROR: exception processing partition of the NEW_PARTITION table
Mer Feb 21 17:59:54 2007
INFO: create index np_v_idx on node_part
Mer Feb 21 17:59:55 2007
INFO: create and load edge_part
Mer Feb 21 18:0:3 2007
INFO: create index edge_part_s_idx on edge_part
Mer Feb 21 18:0:4 2007
INFO: create index edge_part_t_idx on edge_part
Mer Feb 21 18:0:4 2007
INFO: create index edge_part_st_p_idx on edge_part
Mer Feb 21 18:0:5 2007
INFO: create and load outedge and inedge columns in node_part table
Mer Feb 21 18:4:44 2007
INFO: create index node_part_p_idx on node_part
Mer Feb 21 18:4:44 2007
INFO: recreating node table with partitioning information
Mer Feb 21 18:4:46 2007
INFO: updating edge table with partitioning information
Mer Feb 21 18:5:4 2007
INFO: creating and loading super_node_ids table
Mer Feb 21 18:5:5 2007
INFO: creating and loading super_edge_ids table
Mer Feb 21 18:5:5 2007
INFO: creating the final partition table
Mer Feb 21 18:5:5 2007
INFO: create index partition_p_idx on partition table
Mer Feb 21 18:5:5 2007
******* Completed SDO Router partitioning
Is it the type of trouble you are having too?
Antonio -
Query for finding shortest path
I know nothing about Oracle Spatial. Just want to know if this query is possible using Spatial.
Given the following data for undirected weighted graph,
v1: vertex 1
v2: vertex 2
w: weight between vertices v1 and v2(or, distance of edge)
table name : wgraph
v1 v2 w
k a 2
m a 3
k c 1
k d 4
c b 2
h d 3
c h 3
h e 4
e b 4
m b 6Can I make a query which gives the shortest path from vertex 'a' to vertext 'e' using Spatial?
If this possible, that query gives the following result. (row-spanning form)
I think this is almost impossible using just a hierachical query.
Any method for this in Oracle Spatial?
spath
a
k
c
b
e
This is not a sort of homework or exam, just my interest.
Thx in advance.
Query Your Dream & Future at
http://www.soqool.comyes why not! in your case just create a logical network- called LRS Network and insert your vertices in node- table and additional information plus cost in the link table.
you can find ways using by dijkstra and A* -
Hi,
We have populated PARTITION table We have only 301 records in NODE_PART table. So we used procedure as
exec SDO_ROUTER_PARTITION.partition_router('NODE_PART', 20);
result of the above is
SQL> exec SDO_ROUTER_PARTITION.partition_router('NODE_PART', 10);
Node Part count : 301
3 Node Part count : 301
31 Node Part count : 301
4 Node Part count : 301
2. Node Part count : 301
2. Node Part count : 301
PL/SQL procedure successfully completed.
But its creating only one partition in PARTTION table.
While we are trying to query with
Simple Route Requests using un-geocoded addresses
a) using edge_id from 4 to edge_id =10 we get the error message as
<?xml version="1.0" encoding="UTF-8" ?>
<RoutingEngineException>[REE-0121: Could not find blob corresponding to partition 26]</RoutingEngineException>
b) Using starting street name as =Bridge 10 and end street as Johnston we get error message as
<?xml version="1.0" encoding="UTF-8" ?>
<RouteServerException>[RSE-0206: Unexpected output format from Geocoder!!!]</RouteServerException>
Can you suggest what could be the errors due to
Thanks and Regards
AravindanHi Siva / Cfreiwal,
The function class used in Edge table is 2.
Secondly, the result for the sql queries is as under.
SQL> select count(*) from node_part;
COUNT(*)
301
SQL> select unique(p_id) from node_part;
P_ID
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
32 rows selected.
SQL> select count(*) from edge_part;
COUNT(*)
399
SQL> select unique(SOURCE_P_ID) from edge_part;
SOURCE_P_ID
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
32 rows selected.
Looking forward for a quick response..
Thanks and Regards
Ashish Dhawan -
Query on Topology for working with Routing Server
Hi,
We have just started working with Routing Engine. We have a sample street data. For working with routing server, whether we need the topology to be built?
If we have a topology can we use with routing server?
In this request for un-geocoded addresses
<start_location>
<input_location id="1">
<input_address>
<us_form1 street="4001 E Bay Dr" lastline="largo, fl" />
</input_address>
</input_location>
</start_location>
What does this street and lastline mean. Which table its referring?
Can you help me out in this problem?
Thanks and regards
AravindanThe routing engine requires data in a particular form. It does require a node and edge table as well as oher information.
In appendix c of the 10g Release 2 documentation is a description of the tables and the XML elements (such as us_form1, street, lastline, etc) required for the routing engine. If you have data that can be massaged into this format then you can do the massaging and load and use it.
Hope this helps,
d -
Hi,
I am using oc4j routing server. I created the node and edge tables as per the documents but it did not create partition table. I tried procedures sdo_router_partition.PARTITION_ROUTER but i got error that "PARTITION_ERROR" does not exists. Then i downloaded the sample navtech data and imported successfully into my database. I start OC4J but routing engine throws an exception - " java.lang.NegativeArraySizeException". Since I am new to oracle spatial and oc4j i can not figure out the error. Please help.
Following is the text from routeserver.log file:
[oracle.spatial.router.server.RouteServerImplementation, Mon Oct 01 17:35:42 IST 2007,#OC4J Launcher, FATAL] java.lang.NegativeArraySizeException
at oracle.spatial.router.engine.Node.readNode(Node.java:94)
at oracle.spatial.router.engine.Partition.readPartition(Partition.java:85)
at oracle.spatial.router.engine.PartitionCache.loadPartitionFromDatabase(PartitionCache.java:276)
at oracle.spatial.router.engine.PartitionCache.obtainPartitionReference(PartitionCache.java:234)
at oracle.spatial.router.engine.Network.<init>(Network.java:63)
at oracle.spatial.router.server.RouteServerImplementation.<init>(RouteServerImplementation.java:128)
at oracle.spatial.router.server.RouteServerServlet.init(RouteServerServlet.java:191)
at com.evermind.server.http.HttpApplication.loadServlet(HttpApplication.java:2371)
at com.evermind.server.http.HttpApplication.findServlet(HttpApplication.java:4824)
at com.evermind.server.http.HttpApplication.findServlet(HttpApplication.java:4748)
at com.evermind.server.http.HttpApplication.initPreloadServlets(HttpApplication.java:4936)
at com.evermind.server.http.HttpApplication.initDynamic(HttpApplication.java:1145)
at com.evermind.server.http.HttpApplication.<init>(HttpApplication.java:741)
at com.evermind.server.ApplicationStateRunning.getHttpApplication(ApplicationStateRunning.java:414)
at com.evermind.server.Application.getHttpApplication(Application.java:570)
at com.evermind.server.http.HttpSite$HttpApplicationRunTimeReference.createHttpApplicationFromReference(HttpSite.java:1987)
at com.evermind.server.http.HttpSite$HttpApplicationRunTimeReference.<init>(HttpSite.java:1906)
at com.evermind.server.http.HttpSite.initApplications(HttpSite.java:643)
at com.evermind.server.http.HttpSite.setConfig(HttpSite.java:290)
at com.evermind.server.http.HttpServer.setSites(HttpServer.java:270)
at com.evermind.server.http.HttpServer.setConfig(HttpServer.java:177)
at com.evermind.server.ApplicationServer.initializeHttp(ApplicationServer.java:2493)
at com.evermind.server.ApplicationServer.setConfig(ApplicationServer.java:1042)
at com.evermind.server.ApplicationServerLauncher.run(ApplicationServerLauncher.java:131)
at java.lang.Thread.run(Thread.java:534)
I am using following version of Oracle:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod
PL/SQL Release 10.2.0.1.0 - Production
CORE 10.2.0.1.0 Production
TNS for 32-bit Windows: Version 10.2.0.1.0 - Production
NLSRTL Version 10.2.0.1.0 - Production
Please help.
Regards,
Sunil gupta
[email protected]I have a Samsung S2 and I use the following settings for a POP3 account. The only difference for you if you want to use IMAP should be changing the incoming port to 993:
Incomiing Settings:
Username: [email protected]
Password: xxxxxxx
POP3 server: mail.btinternet.com
Security Type: SSL
Port: 995
Outgoing Settings:
SMTP server: mail.btinternet.com
Security type: SSL
Port: 465
Require sign in: Ticked
Username: [email protected]
Password: xxxxxx
If they don't work I would delete the account, restart the phone then try and set it up again. You should be given the option to set it up manually. Use that option rather than letting the wizard do it and when entering username and password make sure that they are spelt correctly and they are case sensitive.
If it still does not work for you can you download Aquamail mail client from the Play Store and set it up to see if it works. -
SDO_TOPO_MAP.GET_EDGE_ADDITIONS
Before any topo manipulation I have...
SQL> select count(*), max(edge_id) from mgf_test_edge$;
COUNT(*) MAX(EDGE_ID)
19844 19844
I create and load a topo_map...
SQL> EXECUTE sdo_topo_map.create_topo_map('MGF_TEST', 'my_topo_map_cache');
PL/SQL procedure successfully completed.
SQL> EXECUTE sdo_topo_map.load_topo_map('my_topo_map_cache', 'true');
PL/SQL procedure successfully completed.
Then perform a test CREATE_FEATURE...
SQL> declare
2 topo_geom sdo_topo_geometry;
3 begin
4 for rec in (select * from blk_grp_geom where rownum=1)
5 loop
6 topo_geom := sdo_topo_map.create_feature(
7 'MGF_TEST','BLK_GRP_TOPO','FEATURE',rec.geometry);
8 insert into blk_grp_topo(mgf065_,bg00,feature)
9 values (rec.mgf065_, rec.bg00, topo_geom);
10 end loop;
11 end;
12 /
PL/SQL procedure successfully completed.
Re-querying the edge table I see new edges have been added...
SQL> select count(*), max(edge_id) from mgf_test_edge$;
COUNT(*) MAX(EDGE_ID)
19924 20087
I expect to confirm this with SDO_TOPO_MAP.GET_EDGE_ADDITIONS,
but I get the following empty result...
SQL> SELECT SDO_TOPO_MAP.GET_EDGE_ADDITIONS FROM DUAL;
GET_EDGE_ADDITIONS
SDO_NUMBER_ARRAY()
Am I not using GET_EDGE_ADDITIONS properly? Seems like it should be straightforward. I'm on 10.1.0.4.
Any feedback appreciated.When you use the sdo_topo_map.create_feature interface,
the changes in the TopoMap cache are flushed to the DB for each feature.
This is done to maintain the consistency between the features and
topo elements.
The SDO_TOPO_MAP.GET_EDGE_ADDITIONS gets you the edges that
are added and are still in the cache.
So in this case, since all changes from the cache are flushed, the procedure
returns no edges.
siva -
Exception while Route Requests using un-geocoded addresses
Hi,
We are having the simple Street data with 301 NODES and 399 EDGES. We use the partition router procedure to make the PARTITION table. My query is if we are making a query for Routing Engine using un-geocoded addresses
a. What can I pass as street and lastline value? In street data I have only street name.
b. Am getting the Routing server Exception as
<?xml version="1.0" encoding="UTF-8" ?>
<RouteServerException>[RSE-0206: Unexpected output format from Geocoder!!!]</RouteServerException>
Can you help me out in this...? Where exactly the error is...
Thanks and Regards
AravindanHi Siva,
Is there any option to send attachment in this Forum? Can you give your mail id...? I will send it to you... Now Im just sending the Table structure and sample Data.
And I have these two Queries also?
1. If we need to use un-geocoded address what are the steps to be followed
2. If we need to use geocoded address then what are all the steps to be followed.
Here is the sample Records for NODE and EDGE
NODE Table
NODE_ID NUMBER,
GEOMETRY SDO_GEOMETRY,
PARTITION_ID NUMBER
Sample Records for NODE table
1|(2001, 8307, (2188960.66, 648363.592, ), , )|2
2|(2001, 8307, (2189028.967, 647964.749, ), , )|2
3|(2001, 8307, (2189230.556, 647707.982, ), , )|2
4|(2001, 8307, (2189455.414, 648925.465, ), , )|2
5|(2001, 8307, (2189561.739, 639546.905, ), , )|2
6|(2001, 8307, (2189685.175, 643866.604, ), , )|2
7|(2001, 8307, (2189711.672, 646828.068, ), , )|2
8|(2001, 8307, (2189800.212, 643839.681, ), , )|2
9|(2001, 8307, (2189819.514, 644169.93, ), , )|2
10|(2001, 8307, (2189841.689, 648495.18, ), , )|2
EDGE Table
EDGE_ID NUMBER,
START_NODE_ID NUMBER,
END_NODE_ID NUMBER,
PARTITION_ID NUMBER,
FUNC_CLASS NUMBER,
LENGTH NUMBER,
SPEED_LIMIT NUMBER,
GEOMETRY SDO_GEOMETRY,
NAME VARCHAR2(64 BYTE)
Sample Records for EDGE table
1|50|57|2|2|10.5||(2002, 8307, , (1, 2, 1, , , , , , , ), (2191225.85, 649495.947, 2191525.681, 649506.262, , , , , , , , , , , , , , ))|Shady Lane
2|69|73|2|2|10.5||(2002, 8307, , (1, 2, 1, , , , , , , , , , , , , , ), (2191934.235, 649451.044, 2192022.915, 649859.637, 2192120.978, 650151.819, , , , , , , , , , , , ))|Wilson's Mills
3|57|69|2|2|10.5||(2002, 8307, , (1, 2, 1, , , , , , , , , , , , , ), (2191525.681, 649506.262, 2191583.829, 649531.754, 2191934.235, 649451.044, , , , , , , , , , , , , ))|Shady Lane
4|96|97|2|2|10.5||(2002, 8307, , (1, 2, 1, , , , , , , , , , , , ), (2193317.397, 649360.341, 2193348.534, 649693.946, , , , , , , , , , , , , ))|Hillcrest
5|68|69|2|2|10.5||(2002, 8307, , (1, 2, 1, , , , , , , , , , , , , , ), (2191918.389, 649325.733, 2191934.235, 649451.044, , , , , , , , , , , , ))|Wilson's Mills
6|96|102|2|2|10.5||(2002, 8307, , (1, 2, 1, , , , , , , , , ), (2193317.397, 649360.341, 2193560.118, 649187.223, , , , , , , , , , , , ))|Poplar
Thanks and Regards
Aravindan -
Oracle Routing NEW_PARTITION object
Hi forum,
executing sdo_router_partition.partition_router(); throws the following exception:
ORA-04043: Objekt NEW_PARTITION ist nicht vorhanden
ORA-06512: in "MDSYS.SDO_ROUTER_PARTITION", Zeile 909
ORA-06512: in Zeile 1
04043. 00000 - "object %s does not exist"
*Cause: An object name was specified that was not recognized by the system.
There are several possible causes:
- An invalid name for a table, view, sequence, procedure, function,
package, or package body was entered. Since the system could not
recognize the invalid name, it responded with the message that the
named object does not exist.
- An attempt was made to rename an index or a cluster, or some
other object that cannot be renamed.
*Action: Check the spelling of the named object and rerun the code. (Valid
names of tables, views, functions, etc. can be listed by querying
the data dictionary.)
I found no information about the new_partition object in the routeserver documentation? What is the problem?
Arnd.OK, step by step.
exec sdo_router_partition.partition_router('NODE_PART',16); works. It#s only a small network for test issues. The new partition table is created, two partitions are created, the partition_id attribute in the edge and node table is updated.
No errors in the log file:
******* Beginning SDO Router partitioning
Do Nov 12 13:52:11 2009
INFO: create and load node_part table
Do Nov 12 13:52:11 2009
INFO: cleanup partitioning temporary tables
Do Nov 12 13:52:11 2009
INFO: begin partitioning of NODE_PART partition level: 0 min(partition id): 0 max(partition id): 0
INFO: generating 2 partitions from level:0 to level: 0 ...
Do Nov 12 13:52:12 2009
INFO: partitioning NODE_PART level: 0 partition id: 1
INFO: partitioning level: 0 with 2 partitions took .017 min.
Do Nov 12 13:52:12 2009
INFO: completed partitioning of NODE_PART
Do Nov 12 13:52:12 2009
INFO: create index np_v_idx on node_part
Do Nov 12 13:52:12 2009
INFO: create and load edge_part
Do Nov 12 13:52:12 2009
INFO: create index edge_part_s_idx on edge_part
Do Nov 12 13:52:12 2009
INFO: create index edge_part_t_idx on edge_part
Do Nov 12 13:52:12 2009
INFO: create index edge_part_st_p_idx on edge_part
Do Nov 12 13:52:12 2009
INFO: create and load outedge and inedge columns in node_part table
Do Nov 12 13:52:13 2009
INFO: create index node_part_p_idx on node_part
Do Nov 12 13:52:13 2009
INFO: recreating node table with partitioning information
Do Nov 12 13:52:13 2009
INFO: updating edge table with partitioning information
Do Nov 12 13:52:13 2009
INFO: creating and loading super_node_ids table
Do Nov 12 13:52:13 2009
INFO: creating and loading super_edge_ids table
Do Nov 12 13:52:13 2009
INFO: Create and load the restricted_nodes table
Do Nov 12 13:52:13 2009
INFO: Create and load the restricted_edges table
Thu Nov 12 13:52:13 CET 2009
INFO: Starting turn restriction generation...
Thu Nov 12 13:52:13 CET 2009
INFO: Turn restriction generation done... 0.0 seconds.
Thu Nov 12 13:52:13 CET 2009
INFO: Starting generation of 2 database partition blobs
Thu Nov 12 13:52:13 CET 2009
INFO: 0Super Nodes read in 0.016 seconds
Thu Nov 12 13:52:13 CET 2009
INFO: SQL String: CREATE TABLE new_partition
( partition_id number,
subnetwork BLOB ,
num_nodes NUMBER,
num_non_boundary_edges NUMBER,
num_outgoing_boundary_edges NUMBER,
num_incoming_boundary_edges NUMBER )
lob(subnetwork) store as
( storage ( initial 512K next 128K maxextents unlimited)
chunk 32768
nocache nologging )
Thu Nov 12 13:52:13 CET 2009
INFO: Continuing from partition id: 1
Thu Nov 12 13:52:13 CET 2009
INFO: Partition: 1 has 0 Highway Nodes...
Thu Nov 12 13:52:13 CET 2009
INFO: Partition 1 read: 8 nodes: 18 non-boundary edges: 2 boundary out edges: 2 boundary in edges
Thu Nov 12 13:52:13 CET 2009
INFO: generating node information for partition 1
Thu Nov 12 13:52:13 CET 2009
INFO: generating non-boundary edge information for partition 1
Thu Nov 12 13:52:13 CET 2009
INFO: generating out edge information for partition 1
Thu Nov 12 13:52:13 CET 2009
INFO: generating in edge information for partition 1
Thu Nov 12 13:52:14 CET 2009
INFO: Blob creation for partition: 1 completed in 0.781 seconds
Thu Nov 12 13:52:14 CET 2009
INFO: Partition: 2 has 0 Highway Nodes...
Thu Nov 12 13:52:14 CET 2009
INFO: Partition 2 read: 8 nodes: 14 non-boundary edges: 2 boundary out edges: 2 boundary in edges
Thu Nov 12 13:52:14 CET 2009
INFO: generating node information for partition 2
Thu Nov 12 13:52:14 CET 2009
INFO: generating non-boundary edge information for partition 2
Thu Nov 12 13:52:14 CET 2009
INFO: generating out edge information for partition 2
Thu Nov 12 13:52:14 CET 2009
INFO: generating in edge information for partition 2
Thu Nov 12 13:52:14 CET 2009
INFO: Blob creation for partition: 2 completed in 0.031 seconds
Thu Nov 12 13:52:14 CET 2009
INFO: Completed generation of database partition blobs in 0.828 seconds
Thu Nov 12 13:52:14 CET 2009
INFO: Begin processing 0 super nodes.
Thu Nov 12 13:52:14 CET 2009
INFO: Read Super Nodes in 0.016 seconds.
Thu Nov 12 13:52:14 CET 2009
INFO: Begin processing 0 super edges.
Thu Nov 12 13:52:14 CET 2009
INFO: Read Super Edges in 0.0 seconds.
Thu Nov 12 13:52:14 CET 2009
ERROR: **** Exception thrown: See stack trace in the trace files.
Thu Nov 12 13:52:14 CET 2009
INFO: Write partitions completed in 0.015 seconds.
Do Nov 12 13:52:14 2009
INFO: creating the final partition table
Do Nov 12 13:52:14 2009
INFO: create index partition_p_idx on partition table
Do Nov 12 13:52:14 2009
******* Completed SDO Router partitioning
The next error occures during startup the routeserver engine:
[oracle.spatial.router.server.RouteServerImplementation, Thu Nov 12 13:55:51 CET 2009,#OC4J Launcher, FATAL] oracle.spatial.router.engine.RoutingEngineException: [REE-0121: Could not find blob corresponding to partition 0]
at oracle.spatial.router.engine.PartitionCache.loadPartitionFromDatabase(PartitionCache.java:294)
at oracle.spatial.router.engine.PartitionCache.obtainPartitionReference(PartitionCache.java:248)
at oracle.spatial.router.engine.Network.<init>(Network.java:77)
at oracle.spatial.router.server.RouteServerImplementation.<init>(RouteServerImplementation.java:145)
at oracle.spatial.router.server.RouteServerServlet.init(RouteServerServlet.java:319)
at com.evermind.server.http.HttpApplication.loadServlet(HttpApplication.java:2361)
at com.evermind.server.http.HttpApplication.findServlet(HttpApplication.java:4810)
at com.evermind.server.http.HttpApplication.findServlet(HttpApplication.java:4734)
at com.evermind.server.http.HttpApplication.initPreloadServlets(HttpApplication.java:4922)
at com.evermind.server.http.HttpApplication.initDynamic(HttpApplication.java:1134)
at com.evermind.server.http.HttpApplication.<init>(HttpApplication.java:738)
at com.evermind.server.ApplicationStateRunning.getHttpApplication(ApplicationStateRunning.java:414)
at com.evermind.server.Application.getHttpApplication(Application.java:545)
at com.evermind.server.http.HttpSite$HttpApplicationRunTimeReference.createHttpApplicationFromReference(HttpSite.java:1990)
at com.evermind.server.http.HttpSite$HttpApplicationRunTimeReference.<init>(HttpSite.java:1909)
at com.evermind.server.http.HttpSite.initApplications(HttpSite.java:645)
at com.evermind.server.http.HttpSite.setConfig(HttpSite.java:290)
at com.evermind.server.http.HttpServer.setSites(HttpServer.java:270)
at com.evermind.server.http.HttpServer.setConfig(HttpServer.java:177)
at com.evermind.server.ApplicationServer.initializeHttp(ApplicationServer.java:2450)
at com.evermind.server.ApplicationServer.setConfig(ApplicationServer.java:998)
at com.evermind.server.ApplicationServerLauncher.run(ApplicationServerLauncher.java:131)
at java.lang.Thread.run(Thread.java:595)
So again, what#s wrong?? -
Problem while installing Oracle 10g Routing Engine
I am trying to run the procedure
exec sdo_router_partition.partition_router('NODE_PART', 1000); on my dataset.
While executing it gives an error class not found.. and comes out.
When i look at the database table, i find a lot of tables named
node_part_1112, node_part_1113, node_part_1114, .... and so on..
Please suggest..!!
If i use some other number other than 1000, then it makes the system hang..!!
Q1) If i have a dataset with 2.5+ lac records in edge table..what is the number which would be appropriate for running the procedure.!!
Thanks and Regards
Ashish DhawanThe first thing you need to do is be sure the Router's log directory is set up properly and that the right users have permission from both SQL and Java to write to the log file. From SQL execute the following
select * from all_directories where directory_name='SDO_ROUTER_LOG_DIR';
Make sure the directory_path that is returned is correct.
If the directory doesn't exist you can create it with
CREATE DIRECTORY sdo_router_log_dir as '<explicit_log_directory>';
Once created make sure the correct users have privs to write to the directory with the following:
GRANT read, write ON DIRECTORY sdo_router_log_dir TO <routeserver_user>;
call dbms_java.grant_permission('<ROUTESERVER_USER>', 'java.io.FilePermission',
'/<explicit_log_directory>/*', 'read,write');
GRANT read, write ON DIRECTORY sdo_router_log_dir TO MDSYS;
call dbms_java.grant_permission('MDSYS', 'java.io.FilePermission',
'/<explicit_log_directory>/*', 'read,write');
Replace <explicit_log_dir> with the full directory path to where the directory was created.
Note that <explicite_log_dir> on the permission setup for java must be terminated with /*
as it is above.
Replace <routeserver_user> with the name of the user that set up and uses the Routeserver data.
Once this is set up properly try and rerun the partitioning. With the set up you should get access to
a log file that will give us more information if something goes wrong with the actual partitioning
process. -
Gurus,
I am working on Aggregated SNP for our company.
1. I have created a Loc Prod hierarchy. The hierarchy has 1 real Location under a pseuso Location and has 6 real products under pseudo header product.It looks like the screenshot below.
2. I do not have a PPM hierarchy or a Resource hierarchy
3. I run the Location heuristic for the header AGG_MFIBER@ Location 1010. I get the correct Pl orders for the header product. The Source Determination is set to Only Sub level.
4. I am able to disaggregate the header values to the sub-products fine.
5. But when I look at the Planned orfders for the sub products I see that there is no source of supply even though I have the PPMs for them.
Do I need to create a PPM hierarchy and then disaggregate it for the system to get the lower level PPMs?
I will work on it next week but if I can get some help it will save me a great deal of time.
Thanks in advance,
SubashHi Cyrille,
How are you? It has been long....
This may end up in a long exchange....
1. I struggled for sometime before I was able to set up the LOC Hier and PROD Hier and generate the LOCPROD Hier, as my screenshots show.
2. I was able to run SNP for AGG_MFIBER and then disaggregate it to sub products. That is when I found the source of supply issue. I saw that the Header product did not have a SOS and created an SNP PPM manually. This is just after I posted the message.
3. After that I tried to create a SNP PPM Hierarchy. I was able to add AGG_MFIBER to level for header PPM. After that I added all the sub products in the above LOCPROD Hierarchy and was able to save the same. I went to the edge table /SAPAPO/RELDHPPM and saw 57 entries.
4. After that I ran SNP for AGG_MFIBER with Source Determination at 'Only Sublevel', the system created planned orders to cover the requirements but it still did not pick up the source of supply for AGG_MFIBER.
5. Then I changed the Source Determination from 'Only Sublevel' to 'Only Header level' and executed SNP. This time it put ONE planned order only for the header material in the second period but it did pick up the Source of Supply.
Still trying to understand the logic...
Any ideas here as I try to get further...
Thanks again,
Subash
Message was edited by: Subash Nanjangud
Cyrille,
After working thru the day on this issue I have been able to make things work...I will update the details tomorrow morning..
Thanks,
Subash -
Hi everyone
I am developing a 3d engine using java and at this point I need to create an edge table for my rendering purposes. here is my problem:
I Have an ArrayList of Edge pointed to by a List reference like this:
List<Edge> list = new ArrayList<Edge>();
and i want to use the Collections.sort(list) to sort this list, but when i try to sort the list my editor shows an error saying:
Bound mismatch: The generic method sort(List<T>) of type Collections is not applicable for the
arguments (List<Edge>). The inferred type Edge is not a valid substitute for the bounded
parameter <T extends Comparable<? super T>>
here is my Edge class:
public abstract class Edge implements Comparable{
protected double ymax;
protected double ymin;
protected double xval;
protected double mInverse;
public abstract int compareTo(Object e);
could anyone please tell me what is the problem here?
thanks
sina
Edited by: sina_izad on Dec 27, 2007 10:11 AMWell, like the error message suggests, you need this:public abstract class Edge implements Comparable<Edge>and consequently this:public abstract int compareTo(Edge e);
-
Retrieving OpenXml data without 'with' clause
I have a stored procedure which takes input as XML parameter which converts that into a table.My problem is that I don't to use 'with' clause in select statement when i retrieve data from openXml.
Here My code.
DECLARE @DocHandle int
DECLARE @XmlDocument nvarchar(1000)
SET @XmlDocument = N'<ROOT>
<Customer CustomerID="VINET" ContactName="Paul Henriot">
<Order OrderID="10248" CustomerID="VINET" EmployeeID="5"
OrderDate="1996-07-04T00:00:00">
<OrderDetail ProductID="11" Quantity="12"/>
<OrderDetail ProductID="42" Quantity="10"/>
</Order>
</Customer>
<Customer CustomerID="LILAS" ContactName="Carlos Gonzlez">
<Order OrderID="10283" CustomerID="LILAS" EmployeeID="3"
OrderDate="1996-08-16T00:00:00">
<OrderDetail ProductID="72" Quantity="3"/>
</Order>
</Customer>
</ROOT>'
-- Create an internal representation of the XML document.
EXEC sp_xml_preparedocument @DocHandle OUTPUT, @XmlDocument
-- Execute a SELECT statement using OPENXML rowset provider.
SELECT *
FROM OPENXML (@DocHandle,'/ROOT/Customer',1) WITH (CustomerID varchar(10),---I dont want to use this
EXEC sp_xml_removedocument @DocHandle
Well, the WITH clause is optional. :-) If you remove it, you get a so-called
edge table. Exactly what one would use it for, I have not been able to
figure out.
But you don't need to use OPENXML at all. Here's an example using XQuery
instead:
DECLARE @x xml
SELECT @x =
N'<Orders>
<Order OrderID="13000" CustomerID="ALFKI"
OrderDate="2006-09-20Z" EmployeeID="2">
<OrderDetails ProductID="76" Price="123" Qty = "10"/>
<OrderDetails ProductID="16" Price="3.23" Qty = "20"/>
</Order>
<Order OrderID="13001" CustomerID="VINET"
OrderDate="2006-09-20Z" EmployeeID="1">
<OrderDetails ProductID="12" Price="12.23" Qty = "1"/>
</Order>
</Orders>'
SELECT OrderID = T.Item.value('@OrderID[1]', 'int'),
CustomerID = T.Item.value('@CustomerID[1]', 'nchar(5)'),
OrderDate = T.Item.value('@OrderDate[1]', 'datetime'),
EmployeeId = T.Item.value('@EmployeeID[1]', 'smallint')
FROM @x.nodes('/Orders/Order') AS T(Item)
SELECT OrderID = A.Item.value('@OrderID[1]', 'int'),
ProductID = B.Item.value('@ProductID[1]', 'smallint'),
Price = B.Item.value('@Price[1]', 'decimal(10,2)'),
Qty = B.Item.value('@Qty[1]', 'int')
FROM @x.nodes('/Orders/Order') AS A(Item)
CROSS APPLY A.Item.nodes('OrderDetails') AS B (Item)
Erland Sommarskog, SQL Server MVP, [email protected] -
Font sizes between Photoshop and Edge - Any Accurate conversion table?
I have been trying to make sense of the font sizes between Photoshop and Edge. It seems that the conversion tables I have found do not actually give the right numbers and I am wondering if there is a table from Adobe that would make it easy to have the right size rather than an approximation.
I prefer to use text in Edge rather than Photoshop for many different reasons one being dynamic text.
For example a font in Photoshop in a 780 x 475 image is 8pt - In Edge, according to conversion tables it should be 11 px but it is totally wrong. It needs to be closer to 30 px to be about the same.
So, Adobe Team, any documentation on that?By the way, I have to correct the numbers but they still do not make too much sense. The artist gave me a 300 dpi file so of course the px size what wrong. After converting the file to 72 dpi, the font size happens to be 33.33 pt or 40 px which is now way too big in Edge. It looks like the size my just be the same 33.33 pt would be 33.33 px. Is this correct?
Maybe you are looking for
-
Old pictures can not display after Itunes upgrade
Earlier today I updated to the newest version of Itunes. I also added some new pictures to my synched directory for pictures (this directory has approx 725 pics that were all on my phone prior to this update of Itunes). When I synched to add the new
-
Can i install SL on external usb drive & how to transfer over existing HDD
Hi I have a MBP with around 200Gb used on a 500GB hdd ( installed after warantee ran out ). The MBP has been working fine for a year or so now but when i tried installing Snow Leopard i found the HDD was not setup as GUID which stopped the installati
-
Oracle Text: How to add/get stopwords list when using Oracle Text world lexer?
I have a use case that we currently use Oracle Text World Lexer to index and search multilingual documents. As we know that World Lexer does the language auto detection. I would like to know the following questions: Is there anyway I can get the curr
-
When using my Ipad i often get it closing down on me and displaying the Apple logo on the screen. It returns to funtion only when i switch the Ipad on again with the on switch. Could someone please inform me how i might get over this problem.
-
RMAN parameters - to use more CPU for Backup & Restore
Hi Friends, I am using RMAN backup on 11g database on windows. RMAN is taking almost 1 hr to restore the database and i could see the CPU usage is very less - less than 10% during restore. so how can i make the RMAN backup and restore faster by using