![]() | |
![]() |
| | Thread Tools | Display Modes |
#1
| |||
| |||
|
#2
| ||||
| ||||
|
|
Hi you'll, |
|
ORA-01114: IO error writing block to file 201 (block # 359561) ORA-27069: skgfdisp: attempt to do I/O beyond the range of the file OSD-04026: Invalid parameter passed. (OS 359567) My dba claimes that the problem is caused by a not logical query, I think it is a tablespace problem, maybe you can be the judge. |
|
Is this query unacceptable |
|
Posted via http://dbforums.com |
#3
| |||
| |||
|
|
A quick check with oerr shows this : oerr ora 27069 27069, 00000, "skgfdisp: attempt to do I/O beyond the range of the file" // *Cause: internal error, the range of blocks being read or written is // outside the range of the file, additional information indicates // the starting block number, number of blocks in I/O, and the // last valid block in the file // *Action: check for trace file and contact Oracle Support I suspect that internally, Oracle 'thinks' the file is 'x; extents long, but the OS 'thinks' it is less than 'x'. End result, carnage ! You say that you are running a query, but the error is obtained writing to the file in question. I suspect that this could be a file in your temporary tablespace. Whatever it is, you should check for any trace files in BACKGROUND_DUMP_DEST and log an iTAR with support. Your DBA should be able to manage this - he hasn't been very helpful so far ) |
#4
| |||
| |||
|
|
Hi you'll, I've encounered a problem that recieved the following error: ORA-01114: IO error writing block to file 201 (block # 359561) ORA-27069: skgfdisp: attempt to do I/O beyond the range of the file OSD-04026: Invalid parameter passed. (OS 359567) ORA-01114: IO error writing block to file 201 (block # 359561) ORA-27069: skgfdisp: attempt to do I/O beyond the range of the file OSD-04026: Invalid parameter passed. (OS 359567) ORA-01114: IO error writing block to file 201 (block # 359561) ORA-27069: skgfdisp: attempt to do I/O beyond the range of the file OSD-04026: Invalid parameter passed. (OS 359567) My dba claimes that the problem is caused by a not logical query, I think it is a tablespace problem, maybe you can be the judge. My query joins a table (of 1358453 rows) to itself : The comparison fields are a date field and an int field when the date field is joined with the ">" operator and the int field is joined by equalization, The query is again joined to my previous table when the join method is that the last table date field is between the first table date field and the second table date field. Is this query unacceptable -- Posted via http://dbforums.com |
#5
| |||
| |||
|
#6
| |||
| |||
|
#7
| |||
| |||
|
#8
| |||
| |||
|
|
If this is 8i or above, then the use of tempfile temporary tablespace can give rise to this error. When you create a tempfile datafile, Oracle only 'touches' the file, and doesn't actually map out and format the entire thing. If another file on the same disk grows into the space that the tempfile one day needs to properly format, then you get this sort of mess. Likely, you will have to drop and re-create the temporary tablespace to fix the problem. |
#9
| |||
| |||
|
|
by 'tempfile' you mean a locally managed temporary tablespace correct? |
|
this doesnt happen with dictionary managed temporary tablespaces. This is pretty interesting. Never saw that before. |
#10
| |||
| |||
|
|
First of all, I'd like to say 10x to Arcangelo, Norm And Nuno. your swift replies have been most helpfull in confronting my evil dba... I've proven to him that he was wrong by his assumption that my query is not logical by running it on a smaller table. My question for you now is this: Have I been unproffesional by creating a query that combines a table of 1358453 rows 3 times to itself? |
|
should I considered a different approach? |

![]() |
| Thread Tools | |
| Display Modes | |
| |