Oracle error ORA-01115

when we run sql update we get the error ORA-01115 : IO eror reading from file 348 and
ORA-01110 : data file 657 : /dev/vx/rdsk/racdg1/PSindex03 ORA-27072 : skgfdisp : I/O error SVR4 Error : 12 : not enough space.
the database is working perfectly.
the job runs perfectly when we re-run the job after several tries.
i have checked the oracle documentation on error and causes.they have not helped me yet.
please give your inputs.
oracle 9i with RAC
OS solaris

1. Try to assess the cause and extent of the problem.
Examine the alert.log file for this instance. Scan the last few
days' entries for other occurrences of ORA-01115. If you find them,
A) Do they reference files in different disks?
If so, it is likely that there you have controller problems.
Move on to Scenario II.A below.
B) Do they reference different files in the same disk?
If so, it is likely that there are problems with that disk.
Move on to Scenario II.B below.
C) Do they always reference the same datafile?
If so, it is likely that the datafile contains bad blocks.
Move on to Scenario II.C below. If the file is bigger
than 2GB and you are running 7.1.4 or lower on a Solaris
platform, see Scenario II.D below.
D) If none of the above applies, move on to Step 2.
2. If the datafile is in the SYSTEM tablespace, or the database is in
NOARCHIVELOG mode, shut the database down. Move on to Step 4.
If shutdown immediate fails, do a shutdown abort.
3. If the database is in ARCHIVELOG mode, you should still shut the
database down. If the database cannot be shut down, offline the
datafile.
ALTER DATABASE DATAFILE '<full_path_file_name>' OFFLINE;
4. Try to copy the datafile to another disk (managed by a different
controller, if possible).
5. If the copy fails, even after you retry, the datafile must be considered
lost at this point. The next action depends on the tablespace to
which the lost file belongs. See the following Solution References to
PR entries, according to the different types of tablespaces,
for instructions on how to proceed.
IMPORTANT: While going through the references below, keep in mind that
if you restore the datafile from backup, you need to place it in another
disk, preferably under a different controller, and rename it inside Oracle
(see Note 115424.1 for details). If you recreate any tablespace, make
sure its datafiles are created in another disk, preferably under a
different controller.
Reference for Lost datafile scenarios : Note 198640.1
6. If the database is down, mount it.
7. Rename the datafile that you succeeded in copying inside Oracle.
ALTER DATABASE RENAME FILE '<old_full_path_file_name>'
TO '<new_full_path_file_name>';
8. If the database is mounted, open it. If you offlined the datafile,
perform media recovery on it, and then bring it online.
RECOVER DATAFILE '<full_path_file_name>';
ALTER DATABASE DATAFILE '<full_path_file_name>' ONLINE;

Similar Messages

  • Errors ORA-01115 ORA-17507 ORA-01410

    Hi i was using Oracle Data Integrator for loading data from one database to another, i programmed a package that loads data with a cycle in monthly intervals, it rans ok the first ten months since 2007/11 but then i got this errors
    java.sql.SQLException: ORA-01115: IO error reading block from file 286 (block # 184745)
    ORA-17507: I/O request size is not a multiple of logical block size
    ORA-01410: invalid ROWID
    Does anyone have any idea why this happened?.

    oracle error ORA-01115
    1. Try to assess the cause and extent of the problem.
    Examine the alert.log file for this instance. Scan the last few
    days' entries for other occurrences of ORA-01115. If you find them,
    A) Do they reference files in different disks?
    If so, it is likely that there you have controller problems.
    Move on to Scenario II.A below.
    B) Do they reference different files in the same disk?
    If so, it is likely that there are problems with that disk.
    Move on to Scenario II.B below.
    C) Do they always reference the same datafile?
    If so, it is likely that the datafile contains bad blocks.
    Move on to Scenario II.C below. If the file is bigger
    than 2GB and you are running 7.1.4 or lower on a Solaris
    platform, see Scenario II.D below.
    D) If none of the above applies, move on to Step 2.
    2. If the datafile is in the SYSTEM tablespace, or the database is in
    NOARCHIVELOG mode, shut the database down. Move on to Step 4.
    If shutdown immediate fails, do a shutdown abort.
    3. If the database is in ARCHIVELOG mode, you should still shut the
    database down. If the database cannot be shut down, offline the
    datafile.
    ALTER DATABASE DATAFILE '<full_path_file_name>' OFFLINE;
    4. Try to copy the datafile to another disk (managed by a different
    controller, if possible).
    5. If the copy fails, even after you retry, the datafile must be considered
    lost at this point. The next action depends on the tablespace to
    which the lost file belongs. See the following Solution References to
    PR entries, according to the different types of tablespaces,
    for instructions on how to proceed.
    IMPORTANT: While going through the references below, keep in mind that
    if you restore the datafile from backup, you need to place it in another
    disk, preferably under a different controller, and rename it inside Oracle
    (see Note 115424.1 for details). If you recreate any tablespace, make
    sure its datafiles are created in another disk, preferably under a
    different controller.
    Reference for Lost datafile scenarios : Note 198640.1
    6. If the database is down, mount it.
    7. Rename the datafile that you succeeded in copying inside Oracle.
    ALTER DATABASE RENAME FILE '<old_full_path_file_name>'
    TO '<new_full_path_file_name>';
    8. If the database is mounted, open it. If you offlined the datafile,
    perform media recovery on it, and then bring it online.
    RECOVER DATAFILE '<full_path_file_name>';
    ALTER DATABASE DATAFILE '<full_path_file_name>' ONLINE;

  • Oracle error ORA-01461when trying to insert into an ORACLE BLOB field

    I am getting Oracle error ‘ORA-01461: can bind a LONG value only  for insert into a LONG column' when trying to insert into an ORACLE BLOB field. The error occurs when trying to insert a large BLOB (JPG), but does not occur when inserting a small (<1K) picture BLOB.(JPG). Any ideas?
    BTW, when using a SQL Server datasource using the same code.... everything works with no problems.
    ORACLE version is 11.2.0.1
    The ORACLE datasource is JDBC using Oracle's JDBC driver ojdbc6.jar v11.2.0.1 (I also have tried ojdbc5.jar v11.2.0.1; ojdbc5.jar v11.2.0.4; and ojdbc6.jar v11.2.0.4 with the same error result.)
    Here is my code:
    <cfset file_mime = Lcase(Right(postedXMLRoot.objname.XmlText, 3))>
    <cfif file_mime EQ 'jpg'><cfset file_mime = 'jpeg'></cfif>
    <cfset file_mime = 'data:image/' & file_mime & ';base64,'>
    <cfset image64 = ImageReadBase64("#file_mime##postedXMLRoot.objbase64.XmlText#")>
    <cfset ramfile = "ram://" & postedXMLRoot.objname.XmlText>
    <cfimage action="write" source="#image64#" destination="#ramfile#" overwrite="true">
    <cffile action="readbinary" file="#ramfile#" variable="image_bin">
    <cffile action="delete" file="#ramfile#">
    <cfquery name="InsertImage" datasource="#datasource#">
    INSERT INTO test_images
    image_blob
    SELECT
    <cfqueryparam value="#image_bin#" cfsqltype="CF_SQL_BLOB">
    FROM          dual
    </cfquery>

    Can't you use "alter index <shema.spatial_index_name> rebuild ONLINE" ? Thanks. I could switch to "rebuild ONLINE" and see if that helps. Are there any potential adverse effects going forward, e.g. significantly longer rebuild than not using the ONLINE keyword, etc? Also wondering if spatial index operations (index type = DOMAIN) obey all the typical things you'd expect with "regular" indexes, e.g. B-TREE, etc.

  • Using PreparedStatement and the Oracle Error ORA-1000

    Hi,
    I have a question about PreparedStatement objects that is not so simple to explain for me. What I would like to know is: if I use a PreparedStatement following traditional and generic steps:
    1- PreparedStatement pStmt = Connection.prepareStatement(sQuery);
    2- pStmt.setXXX(i,j);
    n - pStmt.setXXX(i,j);
    n+1 - ResultSet rs = pStmt.executeQuery();
    n+2 - while(rs.next()){ ... retrive ResultSet data  ... }
    n+3 - rs.close()
    n+4 - back to point number 2
    and at the end (as you can see in the point numbered n+4), instead of closing the PreparedStatement pStmt using the close() method, I reuse the PreparedStatement pStmt comeing back to the point numebr 2 and setting again all its parameters with new values ... then ... what heppens in the Oracle database ? Has been the cursor (so the mamory area), associated to my PreparedStatement object pStmt, duplicated or is it the same ?
    I know that Java allows you to do this kind of operations with PreparedStatement, and I know that in tha Java Documentation is explained to follow this strategy to optimize the execution time because in this way the same PreparedStatement is precompiled and prepared only once. But if I do a for loop following the steps explained before, after many iterations I have the error "ORA-1000: maximum open cursors exceeded". This error is the reason of my question. Does this error means that it's mandatory to close a PreparedStatement always, otherwise if you reuse it without closing it then the corresponding database cursor will be duplicated ? If it is so, then I think this is a contradiction with official java documentation ...
    I'm using Oracle8i (version 8.1.7) and Oracle JDBC Thin Driver (Windows NT) for use with JDK 1.2.x. Moreover, in my database istance the parameter "maximum open cursor" is equal to 800 ...
    Thank you very much for suggestions :-)

    There is no need to close a prepared statement or its resultset for every iteration.
    After the first iteration in a loop, all subsequent executions of it will close the previous resultset. By adding close() method, you are making one extra costly call to the DB for no reason.
    Following is the sample code.I know what you are saying. In fact at the beginning I wrote my code in the same way of your sample (see the code of my first post at the begin of this page).
    But doing so, after thousand iterations of the loop, I had "Oracle Error ORA-1000 : maximun open cursor exeeded" even if in my database istance the parameter "maximum open cursor" is equal to 8000.
    At this moment in my code, for each iteration, I close the PreparedStatement and in this way I don't have anymore the error :-((
    So it seems that only in theory we can reuse a preparedStatement without closing it. In fact if we see the oracle system table "$open_cursor" (as Konrad Pietzka suggest me) we can find that, for each interation,
    at our line code "rs = pstmt.executeQuery();" correspond a new cursor in the database: this means that for each method "pstmt.executeQuery()" the database open a new cursor and do not use the previous one as it should.
    I posted a question two months ago to search if someone had the same problem (it seems that Konrad Pietzka had the same situation) and was able to explain me what is the cause.
    The only reason I found by myself for this problem, is that probably the Oracle JDBC Thin Driver for Windows NT/2000 has some bugs... but I'm not sure ...
    Thank you very much for you time !!
    bye :-))
    Fidalma

  • Oracle Error :: ORA-12637 Packet receive failed

    Hi buddies,
    One of my staff's PC is receiving this error sometimes when she is trying to connect to the database and she is able to connect sometimes.
    Oracle Error :: ORA-12637 Packet receive failed What could be the cause.
    I tried replacing her tnsadmin with my tnsadmin and it didn't make a change, still able to connnect sometimes and sometimes not.
    Able to connect using PL/SQL developer, but not using our customized application. (Everyone else are able to connect)
    Is it network problem?
    Please advice.
    Thank You very much.
    Alagu
    Edited by: user645399 on Sep 16, 2009 8:37 PM

    And from this cut-and-paste the OP is supposed to take what actions to solve the problem? Please don't just post that which is one google away every time someone posts an ORA- exception. You make some valuable contributions here but just posting expanded text doesn't give someone a list of actions to take that will help them resolve the issue. Better the question is left unanswered so others will be more likely to offer help.
    To the OP:
    It is highly likely you have a network issue and the fact that it is isolated to a single machine makes it reasonably easy to fix. First try to figure out which component is failing. Go to the router or switch and swap wires between that client machine and another one that is working properly. Does the problem move? If not then swap the wires. Again does the problem move? Next the NIC card? What if you put another machine on the desk and put the original hard disk in it?
    Sometimes it just isn't worth the effort so you just swap out the machine.
    Intermittent problems are always hard to identify and fix. What is on your side is that this is only affecting a single user.

  • Urgent-Oracle Error :: ORA-39778-

    Hi
    I got following Oracle Error : ORA-39778 "the parallel load option is not allowed when loading lob columns" on production. yesterday we updated database with patchset 9.2.0.7 and DST/JVM compliant.
    Please reply me ASAP.
    Regards,
    RJ

    Sry I didn't check back this afternoon.
    As posted,
    Here's the note from metalink doc Note:396387.1
    Then e this to apply the files manually in the following way:
    Download the identified patch.
    Unzip the patch, and locate the 2 files timezone.dat and timezlrg.dat in the "files/oracore/zoneinfo" directory of the uncompressed patch (or from the relevant .jar file of a patchset). If there is also a readme.txt in this location then make a note of this as well.
    Backup your existing files in $ORACLE_HOME/oracore/zoneinfo - THIS CAN BE VITAL, DO NOT SKIP.
    Copy the 2 .dat files and possibly the readme.txt file that were found in step 2 into the $ORACLE_HOME/oracore/zoneinfo directory.
    Restart the database (in case of installation on a database), or restart the client applications (in case of client install). Note that the database did not need to be down before the time zone files were applied, but it does need to be restarted afterwards.

  • Oracle error ORA-22905: cannot access rows from a non-nested table item

    Oracle error ORA-22905: cannot access rows from a non-nested table item
    Creating a report using oracle plsql code .
    Getting error ;
    Oracle error ORA-22905: cannot access rows from a non-nested table item
    when I am trying to pass data in clause in pl sql proc
    basically I have a proc which takes 2 parameters(a and b)
    proc (
    P_a varchar2,
    p_b varchar2,
    OUT SYS_REFCURSOR
    culprit code which is giving me  the error and on google they say cast it but I dont know how to do it in my context
    --where  id in (
    --        SELECT * FROM THE (SELECT p_cd_common.get_table_from_string(P_a) FROM dual)
    --        union
    --        SELECT * FROM THE (SELECT p_cd_common.get_table_from_string(P_b) FROM dual)
    data sample returned from this :SELECT * FROM THE (SELECT p_cd_common.get_table_from_string(P_a) FROM dual)
    'Abc','def',
    data sample returned from this;SELECT * FROM THE (SELECT p_cd_common.get_table_from_string(P_b) FROM dual)
    'fgd','fth',
    Any answers ?
    How to pass data in clause in a better way

    Why are you creating a duplicate post? I already asked you to post p_cd_common.get_table_from_string. In particular what is function return type and where it is declared. As I already mentioned, most likely function return type is declared in the package and therefore is PL/SQL type. And TABLE operator can only work with SQL types.
    SY.

  • APP-DT-34605:Oracle error ORA-4098 occured while writing to PER_ALL_ASSIGNM

    We have Upgraded DB from 10.2.0.2 to 10.2.0.5 having same Apps version 11.5.10.2,
    we have seen below issue upon upgrade,
    While updating any information in Assignment i.e. Assignment Status getting following error.
    APP-DT-34605:Oracle error ORA-4098 occured while writing to PER_ALL_ASSIGNMENTS_F
    How to overcome these errors, please advise,
    RM

    Please see these docs.
    PERWSHRG: Updating Assignment Gives Error APP-DT-34605 ORA-6510 [ID 286294.1]
    Update Employee Assignment Details Cause Error: APP-DT-34605-- ORA-20001 occurred writing to PER_ALL_ASSIGNMENTS_F [ID 793451.1]
    APP-DT-34605 Error When Saving on Assignment Form [ID 829292.1]
    Receive APP-DT-34605 Error When Updating an Existing Payment Method [ID 780090.1]
    ORA-06508 PL/SQL Could Not Find Program Unit Being Called: "APPS.PAY_PAY_SHD" [ID 1170903.1]
    Thanks,
    Hussein

  • Oracle error ORA-604 when opening a connection

    I am facing an issue with my WCF service which is using ODP.NET version 4.112.2.0(x64) and Oracle 11g.
    The service runs without any problems on the test servers but on production server (Windows 2008 R2) when an attempt is made to call any service method it fails with the following Oracle error code Ora-604. the message is
    ORA-604: error occurred at recursive SQL level %s
    The exception is thrown when a call to meethod Open is made to open a connection.
    There is no inner exception. So far I have tried checking the connection string, the user permissions and setting the TNS_ADMIN environment variable but nothing has worked.
    Another thing to mention is that another WCF service which uses some of the same stored procedure I am using is working fine on the same server.
    Has anyone seen this before?
    Thanks,
    A

    Do you have a login trigger?
    select * from dba_triggers where triggering_event like 'LOGON%'
    If so, try disabling it.
    Does the working service use the same credentials as this problem service?
    Are you able to connect using sqlplus, with the same credentials from the same client to the same database? If it's not an ODP.NET specific problem, the dba guys might be able to help better: General Database Discussions
    Greg

  • Oracle error ORA-03113: end-of-file on communication channel

    Dear Support
    I am getting "ORA-03113: end-of-file on communication channel" when I am trying to access my application.
    The current setup is following
    - two node Sun Cluster with node name as sep1n1 and sep2n2
    - running Oracle RAC (oracle database 10g) with instance name as ADVFRW1 and ADVFRW2
    Please see attached oracle trace file which was generated at the time of problem.
    Can you please help me to know what can be the reason of this oracle error/crash?
    Thanks
    Regards
    VS

    I don't see any Trace file.
    Network Problems?
    Are the databases up and running?

  • Oracle error ORA-00600 when using Oracle 10g and Sun One Web Server 6.1

    I have a java application that was running under Solaris 8 and Oracle 9i. I am trying to get it up and running on a new server that is configured with Solaris 9 and Oracle 10g. Whenever the application tries to connect to the database it receives the following error: ORA-00600 [ttcgcshnd-1][0]. My research indicates that this is an internal Oracle error that represents a low level unexpected condition. I have looked through my configuration for the Web Server and I have not been able to determine the cause of this problem. My DBA tells me that we have the latest patch installed for Oracle! Has anyone encountered this problem before? Any help would be greatly appreciated!

    If the problem is also present in a SWING app, i.e. outside the web server, then it is porbably something external to the webserver.
    I think you should ensure that the driver and database are compatible with each other. It is very likely that you need a new jdbc driver for the new database.
    download from here http://www.oracle.com/technology/software/tech/java/sqlj_jdbc/htdocs/jdbc101020.html
    try the ojdbc14.jar

  • Sandee mendelson reid : Oracle Error: ORA-01403

    Hi everyone!!!
    Please could you tell me why I get an error (ORA-01403: No data found) when executing a sql query on Oracle 8i?
    The query is:
    "INSERT INTO TABLE1 SELECT * FROM TABLE2"
    NB:
    when I run the query "SELECT * FROM TABLE2"
    I get property registration!
    it is at the time of insertion of recording in Table 1 that the error occurs:
    ORA-01403: No data found
    thank you in advance for your help
    Sandee mendelson reid

    Even on your really old version of Oracle, the insert select should not raise a no data found error.  Is that the full error stack you get?  Typically that error comes in a PL/SQL block where you are selecting a value into a variable.   I would expect the full error stack would also include the name of the PL/SQL unit where the error occurred.  Is ther a trigger defined on table1?
    John

  • Oracle error ora-00214

    Hi,
    The disks on one of our oracle machines had crashed and we had to get everything from back up. Now on this machine, when i bring up oracle, it gives me the error: ORA-00214: controlfile '/u10/oradata/bmedia/control01.cfl' version 71287 inconsistent with file '/u30/oradata/bmedia/control03.ctl' version 71219.
    oerr for this error tells me to use filed that are for the same db for the same time period. The dates on these two files are the same with a time difference of about 1 hour.
    Does anybody know of a way to recover from this problem without losing data in the oracle database? Thanks,
    Manju.

    Whichever controlfile has a timestamp consistant with that of your datafiles should be copied/overwrite the other controlfile which does not have the consistant timestamp. Do the copy (rename the controlfile you are going to replace just in case!) and try to startup the database.
    If that doesn't work you will have to recreate the controlfile. Refer to Oracle documentation for the create controlfile statement.

  • Oracle error ORA-01041 -

    Hi all,
    I am not well versed in oracle, facing problem in starting oracle instance in restricted mode. I have used the following command to start database instance in restricted mode *"startup restrict"*, but getting the following errors.
    C:\>sqlplus /nolog+
    SQLPlus: Release 11.2.0.1.0 Production on Tue Mar 20 18:49:05 2012*+
    Copyright (c) 1982, 2010, Oracle.  All rights reserved.+
    SQL> connect system/firewall@smpstore as sysdba+
    ERROR:+
    ORA-12154: TNS:could not resolve the connect identifier specified+
    SQL> connect system/firewall@smpsstore as sysdba+
    Connected.+
    SQL> shutdown immediate+
    Database closed.+
    Database dismounted.+
    ORACLE instance shut down.+
    SQL> startup restrict+
    ORA-12514: TNS:listener does not currently know of service requested in connect+
    descriptor+
    SQL> startup restrict+
    ORA-24324: service handle not initialized+
    ORA-01041: internal error. hostdef extension doesn't exist+
    SQL>+
    Please help me out in solving this problem.
    Thanks
    kasi
    Edited by: Kasi Viswanath Modali on Mar 20, 2012 6:34 AM

    >
    SQL> connect system/firewall@smpstore as sysdba+
    ERROR:+
    ORA-12154: TNS:could not resolve the connect identifier specified+Here smpstore
    SQL> connect system/firewall@smpsstore as sysdba+But here - smp<font color=red>s</font>store
    Check your ORACLE_SID

  • Work around/Alternate solution for Oracle error  ORA-01460 and ORA-02063

    After the installation of Oracle.DataAccess version 2.111.7.20, I get the following error.(the code worked fine with Oracle.DataAccess version 9.2.0.700 )
    I have attached the error as well as the sample code.
    ORA-01460 and ORA-02063 are known bugs in the new ODP but would like to know if there is any Work around/Alternate solution for this problem(other than
    the use of stored procs)..
    Thanks!
    Error:
    ORA-01460: unimplemented or unreasonable conversion requested
    ORA-02063: preceding line from BSREAD_STAGINGRO at Oracle.DataAccess.Client.OracleException.HandleErrorHelper(Int32 errCode, OracleConnection conn, IntPtr opsErrCtx, OpoSqlValCtx* pOpoSqlValCtx, Object src, String procedure, Boolean bCheck)
    at Oracle.DataAccess.Client.OracleException.HandleError(Int32 errCode, OracleConnection conn, String procedure, IntPtr opsErrCtx, OpoSqlValCtx* pOpoSqlValCtx, Object src, Boolean bCheck)
    at Oracle.DataAccess.Client.OracleCommand.ExecuteReader(Boolean requery, Boolean fillRequest, CommandBehavior behavior)
    at Oracle.DataAccess.Client.OracleCommand.ExecuteReader()
    SampleCode
    private bool isValidFieldData(string clientName, string fieldNumber, string uniqueID, string clientID)
    using (OracleConnection mBSConnection = new OracleConnection(mBSConnectionString))
    OracleDataReader oRdr = null;
    OracleCommand Valid_FieldData_Command = null;
    try
    Valid_FieldData_Command = new OracleCommand();
    Valid_FieldData_Command.Connection = mBSConnection;
    Valid_FieldData_Command.CommandText = "SELECT uniqueid FROM EXTDB.BSData WHERE agencyid = :agencyid and agencyname=:agencyname AND fieldnumber =:fieldnumber AND uniqueid = :uniqueid";
    Valid_FieldData_Command.Parameters.Add(":agencyid", OracleDbType.Varchar2, 255).Value = agencyID;
    Valid_FieldData_Command.Parameters.Add(":agencyname", OracleDbType.Varchar2, 255).Value = agencyName;
    Valid_FieldData_Command.Parameters.Add(":fieldnumber", OracleDbType.Varchar2, 255).Value = fieldNumber;
    Valid_FieldData_Command.Parameters.Add(":uniqueid", OracleDbType.Varchar2, 255).Value = uniqueID;
    mBSConnection.Open();
    oRdr = Valid_FieldData_Command.ExecuteReader(); ->Error occurs here
    The error occurs whenever the length of any of the parameter is increased. But there is no specific length where it is breaking down.
    For example in this case, it breaks down with the given error if
    agencyID > 8
    agencyName > 6
    fieldNumber > 9
    uniqueid > 6

    The problem was mapping input parameter type.
    VARCHAR2-type mapping input parameter works with String-type PF parameter. But CHAR-type won't.

Maybe you are looking for