Corruption in PreparedStatement

We are finding that doing an UPDATE using a PreparedStatement was leading to corruption of some character in the updated data. Re-arranging the the elements in the statement to place the TIMESTAMP first fixed the corruption. Is there an issue or limitation that might cause this?
We are using the latest release of Oracle JDBC drivers but are having issues against the Oracle 8i (8.1.7) Enterprise environment we are testing against.
Is this a common problem?

Brian,
It's not clear to me what you mean by "corruption". Are you getting an error message? Perhaps you could post the entire error message and stack trace, as well as the part of your code that you think is causing the error?
Good Luck,
Avi.

Similar Messages

  • LOB support non-existant

    From the JDBC 8.1.6 driver readme:
    "1. There is a limitation regarding the use of stream input for LOB types. Stream input for LOB types can only be used for 8.1.6 JDBC OCI driver connecting to an 8.1.6 Oracle server. The use of stream input for LOB types in all other configurations may result in data corruption. PreparedStatement stream input APIs include:
    setBinaryStream(), setAsciiStream(), setUnicodeStream(),
    setCharacterStream() and setObject()."
    Since the 8.1.6 Oracle Server doesn't even EXIST yet as far as I'm concerned, this amounts to "we don't support or acknowledge the existance of LOBs". Come on Oracle, if you're going to market the heck out of something, at least have it working first. And when it doesn't work, FIX IT.
    What IS the story???

    Hi, Cybergig22, and welcome to the Community,
    Like many other websites, Skype handles many customer service requests via instant message chat with a representative.  As you work your way through the web-form choices offered, another common customer service platform, e-mail will be offered as an option if needed.
    Much of this historical account information is requested for verification purposes as a means to verify that you are the account "owner."
    Here is a link to the instruction on how to contact Skype Customer Service via their secure portal: Contact Customer Service
    Skype is aware of continuing problems with the website when contacting their customer service agents. If you experience difficulty reaching Skype Customer Service or find yourself redirected back to the Community, please try again using a different web browser and - important! -  choosing a different path through the various drop-down menu options presented. Also, look to approve a pop-up dialogue box which would connect you to start an instant message chat with a customer service agent. If you have pop-ups blocked in your browser settings, this will also block reaching an agent.
    Regards,
    Elaine
    Was your question answered? Please click on the Accept as a Solution link so everyone can quickly find what works! Like a post or want to say, "Thank You" - ?? Click on the Kudos button!
    Trustworthy information: Brian Krebs: 3 Basic Rules for Online Safety and Consumer Reports: Guide to Internet Security Online Safety Tip: Change your passwords often!

  • Problem with inserting a chart into Powerpoint

    A box appears telling me that I must first close open dialog boxes but I have none open.  Next box says some charts cannot be combined with others and to choose a new chart type.   I have not selected another chart.  I have made plenty of charts in the past and never struck this before.

    Where can you find the defect number and description?
    Does it solve this issue in the release notes for 10.1.0.2.0 (10g)?
    * There is a limitation regarding the use of stream input for LOB
    types. Stream input for LOB types can only be used for 8.1.7 or
    later JDBC OCI driver connecting to an 8.1.7 or later Oracle
    server. The use of stream input for LOB types in all other
    configurations may result in data corruption. PreparedStatement
    stream input APIs include: setBinaryStream(), setAsciiStream(),
    setUnicodeStream(), setCharacterStream() and setObject().

  • JDBC Drviers and Linux

    What driver should I use for O8.1.6 using RedHat 6.2 Linux
    Thanks
    P.S. Please respond to [email protected]

    the jdbc driver readme file:
    Oracle JDBC Drivers release 8.1.7 README
    ========================================
    What Is New In This Release?
    These are the major new features/enhancements in this release:
    - Statement Caching
    * Implicit Statement Caching
    * Explicit Statement Caching
    - Full XA Support
    * Including XA Recover and Forget
    * OracleXid independent implementation for 8.1.7 servers and above
    - Connection Caching
    * New Scheme (FIXED_WAIT_SCHEME)
    * Statement Caching coupling
    - PLSQL Tables Support for Scalar types (for OCI driver only)
    - User-Defined Datatypes Performance Enhancement
    - Object Types Extensions
    * Serializable Type Descriptors
    * Accessing collection elements in Java primitive types
    * Buffering and indexing collection elements
    * Creating empty Lobs
    - Support for 56-bit encryption algorithms for connection using
    the Thin JDBC driver.
    These are the major bug fixes:
    - BUG-903011
    The JDBC Thin driver could not be used with usernames that
    contained Latin-1 characters when the server used UTF8 character
    set. This problem has been fixed in release 8.1.7.
    - BUG-1052489
    There was a problem with PreparedStatements being executed
    multiple times and the length of one of the bind variables (bound
    with setBinaryStream or setCharacterStream) increased. This
    problem has been fixed in release 8.1.7.
    - BUG-1069768
    There was a problem with insertion of ADTs with an image bigger
    than 4K with the JDBC Thin driver. This problem has been fixed
    in release 8.1.7.
    - BUG-1247015
    When using ResultSet::getObject() to access CHAR or VARCHAR columns
    in scrollable result sets, ResultSet::getObject() returned null.
    - BUG-1349713
    getString() of scrollable result sets returns incorrect values if
    the column data contains multibyte characters.
    Driver Versions
    These are the driver versions in the 8.1.7 release:
    - JDBC OCI Driver 8.1.7
    Client-side JDBC for use on a machine where OCI 8.1.7 is installed.
    - JDBC Thin Driver 8.1.7
    100% Java client-side JDBC for use in applets and applications.
    - JDBC Thin Server-side Driver 8.1.7
    JDBC for use by Java Stored Procedures or by Java CORBA objects
    running in Oracle 8.1.7. This driver is typically used in a middle
    tier server.
    - JDBC Server-side Internal Driver 8.1.7
    Server-side JDBC for use by Java Stored procedures or by Java CORBA
    objects running in Oracle 8.1.7. This driver used to be called the
    "JDBC Kprb Driver".
    For complete documentation, please refer to "JDBC Developer's Guide
    and Reference".
    Contents Of This Release
    The [ORACLE_HOME]/jdbc/lib directory contains:
    - classes111.zip
    Classes for use with JDK 1.1.x. It contains the JDBC driver
    classes except classes necessary for NLS support in Object and
    Collection types.
    - nls_charset11.zip
    NLS classes for use with JDK 1.1.x. It contains classes necessary
    for NLS support in Object and Collection types.
    - classes111_g.zip
    Same as classes111.zip, except that classes were compiled with
    "javac -g".
    - classes12.zip
    Classes for use with JDK 1.2.x. It contains the JDBC driver
    classes except classes necessary for NLS support in Object and
    Collection types.
    - nls_charset12.zip
    NLS classes for use with JDK 1.2.x. It contains classes necessary
    for NLS support in Object and Collection types.
    - classes12_g.zip
    Same as classes12.zip, except that classes were compiled with
    "javac -g".
    Note that the packaging of the JDBC classes to support NLS was
    changed in 8i. The classes pertaining to specific character sets
    support in Object and Collection types have been separated from the
    basic zip files. These NLS classes are now packaged into the
    extension zip files. This allows the user to include the NLS
    classes only if necessary. Please refer to the "NLS Extension Zip
    Files (for client-side only)" for further details.
    [ORACLE_HOME]/lib directory contains libocijdbc8.so and
    libocijdbc8_g.so (on Solaris), which are the shared libraries used by
    the JDBC OCI driver.
    [ORACLE_HOME]/jdbc/doc/javadoc.tar contains the JDBC Javadoc. This
    release contains a beta release of the Javadoc files for the public
    API of the public classes of Oracle JDBC.
    [ORACLE_HOME]/jdbc/demo/demo.tar contains sample JDBC programs.
    Demo programs written for JDK 1.1 must be modified to run in JDK 1.2.
    Please refer to the "Support For JDK 1.2" for porting details.
    NLS Extension Zip Files (for client-side only)
    The JDBC Server-side Internal Driver provides complete NLS support.
    It does not require any NLS extension zip files, nls_charset*.zip.
    Discussions in this section do not apply to the JDBC Server-side
    Internal Driver. You can skip this section if you only use the
    Server-side Internal Driver.
    The basic zip files, classes111.zip and classes12.zip, contain all the
    necessary classes to provide complete NLS support for:
    - Oracle Character sets for CHAR/VARCHAR/LONGVARCHAR/CLOB type data
    that is not retrieved or inserted as a data member of an Oracle 8
    Object or Collection type.
    - NLS support for CHAR/VARCHAR data members of Objects and
    Collections for a few commonly used character sets. These
    character sets are: US7ASCII, WE8DEC, WE8ISO8859P1 and UTF8.
    Users must include the appropriate extension zip in their CLASSPATH
    if utilization of other character sets in CHAR/VARCHAR data members
    of Objects/Collections is desired. It is important to note that
    extension zip files are large in size due to the requirement of
    supporting a large number of character sets. Users may choose to
    include only the necessary classes from the extension zip file.
    To do so, users can first unzip the extension zip file, and then put
    only the necessary classes in the CLASSPATH. The character set
    extension class files are named in the following format:
    CharacterConverter<OracleCharacterSetId>.class
    where <OracleCharacterSetId> is the hexidecimal representation of the
    Oracle character set id of the corresponding character set.
    Installation
    Please do not try to put multiple versions of the Oracle JDBC drivers
    in your CLASSPATH. The Oracle installer installs the JDBC Drivers in
    the [ORACLE_HOME]/jdbc directory.
    Setting Up Your Environment
    On Win95/Win98/NT:
    - Add [ORACLE_HOME]\jdbc\lib\classes111.zip and
    [ORACLE_HOME]\jdbc\lib\nls_charset11.zip to your CLASSPATH.
    (Add classes12.zip and nls_charset12.zip if JDK 1.2.x is used.)
    - Add [ORACLE_HOME]\jdbc\lib to your PATH.
    On Solaris/Digital Unix:
    - Add [ORACLE_HOME]/jdbc/lib/classes111.zip and
    [ORACLE_HOME]/jdbc/lib/nls_charset11.zip to your CLASSPATH.
    (Add classes12.zip and nls_charset12.zip if JDK 1.2.x is used.)
    - Add [ORACLE_HOME]/jdbc/lib to your LD_LIBRARY_PATH.
    On HP/UX:
    - Add [ORACLE_HOME]/jdbc/lib/classes111.zip and
    [ORACLE_HOME]/jdbc/lib/nls_charset11.zip to your CLASSPATH.
    (Add classes12.zip and nls_charset12.zip if JDK 1.2.x is used.)
    - Add [ORACLE_HOME]/jdbc/lib to your SHLIB_PATH and LD_LIBRARY_PATH.
    On AIX:
    - Add [ORACLE_HOME]/jdbc/lib/classes111.zip and
    [ORACLE_HOME]/jdbc/lib/nls_charset11.zip to your CLASSPATH.
    (Add classes12.zip and nls_charset12.zip if JDK 1.2.x is used.)
    - Add [ORACLE_HOME]/jdbc/lib to your LIBPATH and LD_LIBRARY_PATH.
    Some Useful Hints In Using the JDBC Drivers
    Please refer to "JDBC Developer's Guide and Reference" for details
    regarding usage of Oracle's JDBC Drivers. This section only offers
    useful hints. These hints are not meant to be exhaustive.
    These are a few simple things that you should do in your JDBC program:
    1. Import the necessary JDBC classes in your programs that use JDBC.
    For example:
    import java.sql.*;
    import java.math.*;
    2. Register the Oracle driver before before calling other JDBC APIs.
    (This is not needed if you are using the JDBC Server-side Internal
    Driver because registration is done automatically in the server.)
    To register the Oracle driver, make sure the following statement
    is executed at least once in your Java session:
    DriverManager.registerDriver(
    new oracle.jdbc.driver.OracleDriver());
    3. Open a connection to the database with the getConnection call.
    Different connection URLs should be used for different JDBC
    drivers. The following examples demonstrate the different URLs.
    For the JDBC OCI8 Driver:
    Connection conn = DriverManager.getConnection(
    "jdbc:oracle:oci8:@<database>",
    "scott", "tiger");
    where <database> is either an entry in tnsnames.ora or a SQL*net
    name-value pair.
    For the JDBC Thin Driver, or Server-side Thin Driver:
    Connection conn = DriverManager.getConnection(
    "jdbc:oracle:thin:@<database>",
    "scott", "tiger");
    where <database> is either a string of the form
    <host>:<port>:<sid> or a SQL*net name-value pair.
    For the JDBC Server-side Internal Driver:
    Connection conn = DriverManager.getConnection(
    "jdbc:oracle:kprb:");
    Note that the trailing ':' character is necessary. When you use
    the Server-side Internal Driver, you always connect to the
    database you are executing in. You can also do this:
    Connection conn
    = new oracle.jdbc.driver.OracleDriver().defaultConnection();
    Java Stored Procedures
    Please note that examples for callins and instance methods using Oracle
    8 Object Types are provided in:
    [ORACLE_HOME]/javavm/demo/demo.zip
    Once unzipped, the directory containing the examples is:
    [ORACLE_HOME]/javavm/demo/examples/jsp
    Known Problems/Limitations In This Release
    The following is a list of known problems/limitations:
    1. There is a limitation regarding the use of stream input for LOB
    types. Stream input for LOB types can only be used for 8.1.7
    JDBC OCI driver connecting to an 8.1.7 Oracle server. The use of
    stream input for LOB types in all other configurations may result
    in data corruption. PreparedStatement stream input APIs include:
    setBinaryStream(), setAsciiStream(), setUnicodeStream(),
    setCharacterStream() and setObject().
    2. BUG-1018797
    Extra characters may be appended to the end of a CLOB value
    mistakenly under the following conditions:
    - setCharacterStream() is used to insert a CLOB value, and
    - The Oracle server uses multi-byte character set.
    (See 1 for limitation of stream input for LOB type.)
    3. Programs can fail to open 16 or more connections using our
    client-side drivers at any one time. This is not a limitation
    caused by the JDBC drivers. It is most likely that the limit of
    per-process file descriptors is exceeded. The solution is to
    increase the limit.
    4. The Server-side Internal Driver has the following limitation:
    - Data access for LONG and LONG RAW types is limited to 32K of
    data.
    - Inserts of Object Types (Oracle 8 Objects, Collections and
    References) will not work when the database compatibility mode
    is set to 8.0. This limitation does not apply when the
    compatibility mode is set to 8.1.
    - Statement.cancel() is not implemented.
    - In a chain of SQLExceptions, only the first one in the chain
    will have a getSQLState value.
    5. The JDBC OCI driver on an SSL connection hangs when the Java
    Virtual Machine is running in green threads mode. A work-around
    is to run the Java Virtual Machine in native threads mode.
    6. Date-time format, currency symbol and decimal symbols are always
    presented in American convention.
    7. When using OracleStatement.defineColumnType(), it is not necessary
    to define the column type to be the same as the column type
    declared in the database. If the types are different, the
    retrieved values are converted to the type specified in
    defineColumnType.
    Note: Most reasonable conversions work, but not all. If you find
    a conversion that you think is reasonable, but that does not wo rk,
    please submit a TAR to Oracle Support.
    8. The utility dbms_java.set_output or dbms_java.set_stream that is
    used for redirecting the System.out.println() in JSPs to stdout
    SHOULD NOT be used when JDBC tracing is turned on. This is
    because the current implementation of dbms_java.set_output and
    set_stream uses JDBC to write the output to stdout. The result
    would be an infinite loop.
    9. The JDBC OCI and Thin drivers do not read CHAR data via binary
    streams correctly. In other word, using getBinaryStream() to
    retrieve CHAR data may yield incorrect results. A work-around is
    to use either getCHAR() or getAsciiStream() instead. The other
    alternative is to use getUnicodeStream() although the method is
    deprecated.
    10. BUG-899078 (since 8.1.6 SDK):
    The JDBC Server-side Internal driver has extra space padding with
    PL/SQL CHAR OUT (2 to 3 space depending on character set).
    Problem occurs in most of the multibyte database character set
    except UTF8.
    11. There is a limitation for Triggers implemented in Java and Object
    Types. It only affects the IN argument types of triggers
    implemented using Java on the client-side. The restriction does
    not apply to JDBC programs running inside the server. Triggers
    implemented as Java methods cannot have IN arguments of Oracle 8
    Object or Collection type. This means the Java methods used to
    implement triggers cannot have arguments of the following types:
    - java.sql.Struct
    - java.sql.Array
    - oracle.sql.STRUCT
    - oracle.sql.ARRAY
    - oracle.jdbc2.Struct
    - oracle.jdbc2.Array
    - any class implementing oracle.jdbc2.SQLData or
    oracle.sql.CustomDatum
    12. The scrollable result set implementation has the following
    limitation:
    - setFetchDirection() on ScrollableResultSet is not supported.
    - refreshRow() on ScrollableResultSet does not support all
    combinations of sensitivity and concurrency. The following
    table depicts the supported combinations.
    Support Type Concurrency
    no TYPE_FORWARD_ONLY CONCUR_READ_ONLY
    no TYPE_FORWARD_ONLY CONCUR_UPDATABLE
    no TYPE_SCROLL_INSENSITIVE CONCUR_READ_ONLY
    yes TYPE_SCROLL_INSENSITIVE CONCUR_UPDATABLE
    yes TYPE_SCROLL_SENSITIVE CONCUR_READ_ONLY
    yes TYPE_SCROLL_SENSITIVE CONCUR_UPDATABLE
    13. BUG-1324918
    Repeatedly updating a clob with jdbc-oci, prepared statement,
    and setCharacterStream consumes the temporary tablespace. If
    you repeatedly update the clob, either the temp tablespace will
    continue to grow, or you may get a Exception in thread "main"
    java.sql.SQLException: ORA-01652: unable to extend segment if
    you have a limit on the tablespace size. The work-around is to
    use oracle.sql.CLOB::setCharacterOutputStream() instead.

  • Corrupted PreparedStatement

    The following code give me this error after approx. 90 update:
    java.sql.SQLException: Syntax error or access violation, message from server: "You have an error in your SQL syntax near 'U31/pE t_cotation SET rsi = 59.465478841870826 WHERE no_cotation = 756' at line 1"
    public void majDB() throws SQLException {
            String strRequete;
            PreparedStatement psRequete;
            strRequete = "UPDATE t_cotation SET rsi = ? WHERE no_cotation = ?";
            for (int i = 0; i < this.lCotation.size(); i++) {
                psRequete = this.DH.preparedStatement(strRequete);
                Cotation cTemp = (Cotation)this.lCotation.get(i);
                if (cTemp.dValeurRSI == 0) {
                    psRequete.setNull(1, Types.DOUBLE);
                } else {
                    psRequete.setDouble(1, cTemp.dValeurRSI);
                psRequete.setInt(2, cTemp.iCotation);
                psRequete.executeUpdate();
    }Windows XP
    JRE 1.4.2_03
    MySQL Connector/J 3.0.9 and 3.0.10
    If anybody know what i'm doing wrong please tell me.
    Thanks
    Astrophobos

    Did you copy and paste the code?Yeah the is the one I paste in my first post
    public void majDB() throws SQLException {
            String strRequete;
            PreparedStatement psRequete;
            strRequete = "UPDATE t_cotation SET rsi = ? WHERE no_cotation = ?";
            psRequete = this.DH.preparedStatement(strRequete);
            for (int i = 0; i < this.lCotation.size(); i++) {
                Cotation cTemp = (Cotation)this.lCotation.get(i);
                if (cTemp.dValeurRSI == 0) {
                    psRequete.setNull(1, Types.DOUBLE);
                } else {
                    psRequete.setDouble(1, cTemp.dValeurRSI);
                psRequete.setInt(2, cTemp.iCotation);
                psRequete.executeUpdate();
            psRequete.close();

  • List view in iCal on my iPod touch is corrupted

    The 'list view' seems to be all wonky in Calendar on my iPod touch.
    The dates for a given day that's displayed don't make sense:
    i.e. Sunday Oct. 27 2030 followed by Saturday July 14 2001 followed by Tuesday Jan. 16 2001 are listed in consecutive order instead of today, tomorrow and next day (with correct dates).
    Also, the 'events' given for each day listed don't make sense and are often duplicated.
    The 'day' and 'month' views however, seem to be ok and not corrupted. The 'list' field in the month view also seems fine ?
    Has anybody experienced this ? Very frustrating, since I like the list view.
    I make most of my entries/changes to iCal on our main desktop (iMac 24") then sync. to my iPod. The list view seems ok on the desktop.
    Any help greatly appreciated.
    ps. not sure if the problem corresponded with an upgrade of the Ipod software to OS 3.1 from 2.x....

    See this previous discussion:
    FIX for iPod Touch Home Button: Apple Support Communities

  • Download error in (osx) adobe desktop app (corrupted download link).

    Here is a discription of the problem. Please consider that some of the wording might not be correct, as I do have to translate the error message from German into English.
    Using OSX 10.9.2, when clicking inside the adobe desktop app (top of the screen bar) on the tap "apps", the following screen (screenshot) appears, which states, translated from top to bottom:
    download error
    download error. Please contact support.
    (link) contact support
    (link/button) download creative cloud -> This button unfortunatly leads to the following error page "http://www.adobe.com/special/errorpages/404.html"
    All apps, like Bridge, Photoshop, Lightroom, etc. are installed and work just fine. So no problem here. I seem however unable to redownload the desktop app (in order to reinstall). As stated above the provided link inside the desktop app itself is coruppted and within the (online) web-based download centre (user logged in) I am only adviced to use the desktop app. This is a dead end and I do not know what to make of this error, let alone solving it. Please help!

    I am sorry Romsinha but this doesn't really help.
    I already restarted the desktop app and while I am obviously online and connected the problem (error message) remains the same. Information within the "home" tap is recieved/loaded  (little blue spinning wheel) stating that various apps recently have been updated. Yet the same loading wheel within the "apps" tap results in an error. My best guess is that some internal link within the app is corrupted, leading to a source on a server that can not be reached.
    UPDATE
    I clean uninstalled adobe creative cloud as discribed in the article you provided (using the cleaner tool) and even uninstalled the browser plugin. After downloading and reinstalling creative cloud the problem however remains the same. "Apps" tap still shows the same problem. "Home" tap now displays the following:

  • Help, itunes wont open and saying it is corrupt

    HELP! I just went to open my itunes and it is coming up with error message saying it is corrupt. It is asking me to reinstall it. If I reinstall it, will I loose all of my music?
    Please be aware I am useless with computers especially our mac that we have had for 3 years now !

    indi4 wrote:
    If I reinstall it, will I loose all of my music?
    no !
    click here and follow the instructions. *read the article to the end !*
    edited by the Jolly Green Giant (where Green stands for environmentally friendly)

  • Questions on Logical corruption

    Hello all,
    My DB version is 10g+ - 11.2.0.3 on various different OS.  We are in process of deploying RMAN on our system and i am having a hard time on testing/get a grip around the whole logical corruption... from what i understand(please correct me if i am wrong)
    1. I can have a check logical syntax in my backup cmd(and that will check both physical and logical corruption)...But how much overhead dose it have, Seems to be anywhere from 14-20% overhead on backup time. 
    2. Leaving the maxCorrupt to default(which i beleive is 0)...if there is a physical corruption my backup will break and i should get an email/alert saying backup broke...
    3.  Would this be same for logical corruption too ??, would RMAN report logical corrution right away like physical corruption would do?  Or do i have to query v$database_block_corruption after backup is done to figure out if i have logical corruption
    4. how would one test logical corruption ?? (besides the NO_LOGGING operation, as our DB have force logging turned on)
    5. Is it a good practice to have check logical corruption in your daily backup? ( i guess i have no problems for it if DB are small, but some of our DB are close to 50TB+ and i think the check logical is going to increase the backup time significantly)
    6. If RMAN cannot repair logical corruption, then why would i want to do the check logical (besides knowing i have a problem and the end user have to fix it by reload the data...assuming its a table not index that is corrupt)..
    7. any best practices when it comes for checking logical corruption for DB in 50+ TB
    I have actually searched on here and on google, but i could not find any way to reproducing logical corrpution(maybe there is none), but i wanted to ask the community about it....
    Thank you in advance for your time. 

    General info:
    http://www.oracle.com/technetwork/database/focus-areas/availability/maa-datacorruption-bestpractices-396464.pdf
    You might want to google "fractured block" for information about it without RMAN.  You can simulate that by writing a C program to flip some bits, although technically that would be physical corruption.  Also see Dealing with Oracle Database Block Corruption in 11g | The Oracle Instructor
    One way to simulate is to use nologging operations and then try to recover (this is why force logging is used, so google corruption force logging).  Here's an example: Block corruption after RMAN restore and recovery !!! | Practical Oracl Hey, no simulate, that's for realz!
    Somewhere in the recovery docs it explains... aw, I lost my train of thought, you might get better answers with shorter questions, or one question per thread, for this kind of fora.  Oh yeah, somewhere in the docs it explains that RMAN doesn't report the error right away, because later in the recovery stream it may decide the block is newly formatted and there wasn't really a problem.
    This really is dependent on how much data is changing and how.  If you do many nologging operations or run complicated standby, you can run into this more.  There's a trade-off between verifying everything and backup windows, site requirements control everything.  That said, I've found only paranoid DBA's check enough, IT managers often say "that will never happen."  Actually, even paranoid DBA's don't check enough, the vagaries of manual labor and flaky equipment can overshadow anything.

  • You click on a .pdf file; Firefox won't load and says "not a pdf or corrupted," but all other browsers open it normally

    Clicking on a link to a .pdf file in Firefox results in Firefox displaying the box "Format error: not a .pdf or corrupted"
    This has happened for several years with any number of web pages. A link to the latest event is below, but it typically happens almost every time I click on a link to a .pdf

    Upgrade your browser to Firefox 9 and check
    * getfirefox.com

  • I downloaded mountain lion and then the new office suite (word, ppt, excel) but now when I try to display one of my ppt's it says 'ppt cannot open the file...the file may be corrupt, in use, not a type recognized by ppt etc.." how can I fix it?? HELP

    I downloaded mountain lion and then the new office suite (word, ppt, excel) but now when I try to display one of my ppt's it says 'ppt cannot open the file...the file may be corrupt, in use, not a type recognized by ppt etc.." how can I fix it?? HELP

    Did you try to open teh fle by double-clicking its icon? If the file was made with an older version of Office, you may get that message. Try opeing PP and, from its "File" menu, see if you can open the ppt. I've foundthat often gets around that message and then yo ucan save the file from the newer version.
    If that doesn't work, consider asking in the Microsoft Office: Mac forums here:
    Office for Mac forums
    PowerPoint is not an Apple product and it seems a lot of people around here avoid Office.

  • How can I replace just the corrupt page(s) in the domain file of iWeb using Time Machine?

    I back up with Time Machine and have an extensive elaborate website I created in iWeb '09 over a couple months and publish to a local folder and then upload to my server, but in the last few days I notice certain pages (that I haven't even worked on or touched) somehow become corrupted or "cross-contaminated" with elements and images from other pages.  Once I see they are corrupt I make sure not to publish them (if the current published versions are the correct, non-corrupt versions) or if they did get published I can use Time Machine to retrieve the .html file and page files folder for that specific page and replace it in my published folder/server so it shows correctly on the Web.  However, that does not replace the corrupted page(s) you see and work with when you launch iWeb and try to edit or continue working on that page.
    I am confused as to how I go to the package contents of the domain file and replace just that page with a previous version from time machine.  I don't want to replace the entire domain file because I have new changes I made to other pages even in the past hours.  How can I keep the good pages and just get earlier, non-corrupted versions of the corrupt page(s)? I know it's not as easy as with the published site folder where you can just replace the page's .html file and folder, but I don't want to have to re-create the corrupted page(s) from scratch or have to replace it with the last non-corrupted domain file and then have to redo all my recent changes to new pages I made before discovering the corrupt page(s).  Thanks for your help as now I can't make changes to the page(s) within iWeb itself.

    Thanks for the response, Wyodor.  I don't know what that is, but I'll have a look.  Is it an alternative to iWeb or a way to transfer pre-existing iWeb sites?  When you say merge domain files, is that like so multiple copies of the same site show up then you can pick and choose the non-corrupted pages and group them then delete the corrupted ones?  I am on Snow Leopard with no plans or need to upgrade anytime soon.
    And yes, I will read your links but just wanted to ask those questions.  Maybe they'll answer my questions, maybe not.
    I was able to discern that within the domain file is a domain folder with all the site folders, each with their own page ".gz" files which expand into ".xml" files.  I was trying to figure out if you could simply drag the corrupt pages out that way and replace them with backup copies that are still good.  I am having trouble discerning which pages are which as they all have random names like site-page-30F175E3-AE33-4F10-A490-1A096D9B185B.xml and although I expanded and opened each in Text Wrangler, I still couldn't discern which were which for sure, and trial and error proved cumbersome.  Also, I did notice some of the later corrupted domain files had one or two more pages than the site itself has, so not sure how they got added or duplicated or what.
    Again, I'll look at your links, but do you know about swapping out individual page .xml files this way within the domain file?

  • How to print Integrity sql in the preparedstatement?

    How to print Integrity sql in the preparedstatement?
    Connection conn = null;
    String sql = "select * from person where name=?";
    PreparedStatement ps = conn.prepareStatement(sql);
    ps.setObject(1, "robin");
    ps.executeQuery();
    i'm wants print Integrity sql.
    For example:select * from person where name='robin'
    How should I do?
    thanks a lot!

    PreparedStatement doesn't offer methods for that. You can write your own implementation of PreparedStatement which wraps the originating PreparedStatement and saves the set* values and writes it to the toString().
    If needed, myself I just print the sql as well as the values-being-set to the debug statement.Logger.debug(query + " " + values);

  • [CS5.5] Recovering a "corrupted" link

    Hi,
    I recently opened a document, and observed this in my Links panel :
    In my document, I have three picture frames. Two of them are "corrupted" : in the link panel, there is no little preview at the left of the link name (the second and the third in my screenshot). The first one is well-formed and behaves correctly.
    The problem is when I drop a new picture in the frames with corrupted links :
    Here, I have dropped a new picture in the frame associated with the link "109325315.lay". The picture in the frame is left unchanged (is there a problem with low def preview ?), and the old link is preserved. When I click on that frame, the old link and the new link are highlighted in the Links panel.
    I tried, via the SDK, various ideas :
    * delete the link before the drop (ILinkFacade::DeleteLinks)
    * delete the resource before the drop (ILinkFacade::DeleteResources)
    * Relink the link during the drop (ILinkFacade::RelinkLink)
    * Reinit the resource during the drop (ILinkFacade::ReinitResource)
    * Reattach the link during the drop (ILinkFacade->AttachLink)
    * Update the link after reinit the resource or after relink the link (ILinkFacade::UpdateLink)
    It seems the resource is valid, because the contained URI is correct.
    In all these cases, I can't get the situation back to a normal one. It looks like there is someting wrong in the link or in the resource, but I can't see what.
    Has anyone an idea of what I could investigate further to get more informations and help me in my debug ?
    Thanks
    Rémi
    Edit : What is responsible for mapping between source object (here the picture frame) and the link ? I can't see any reference in the lin or in the resource to the source object. Maybe this mapping is broken ?

    Try using a Forum search or a Google search - 'Using Adobe Dynamic Link with After Effects requires Adobe Production Premium' was quite common error. Deactivating and reactivating the Suite resolved the issue in most cases.

  • Itunes, ID3 tags, & hard drive corruption

    My wife is having a strange problem with her iMac, and it’s got me a bit mystified. I’m hoping someone here can shed some light on what might be going on. I apologize in advance for the long post.
    The problem is that when she plays some songs in iTunes, and entirely different (wrong) song plays instead. Most songs play fine, but some just play entirely different songs (or sections of a song or podcast). All of the tracks are MP3 (either 192 kbps or 256 kbps) and almost all of them were encoded using Windows Media Player on an XP machine. Initially, I copied the music over from an NTFS drive to a newly formatted (Mac OS/HFS+) drive on the Mac, then I ran iTunes and created the library. At that point, everything seemed fine. All the meta data (song title, album title, artist, album artist, genre, album art) showed up in iTunes, and everything played correctly.
    Now we’re getting this weird behavior where we play some songs and get the wrong music. At first I thought the iTunes library files (ITL and/or XML) had been corrupted, but it seems on closer inspection that the entire hard drive has been corrupted. When I look at the files on Mac hard drive via the Finder, all seems ok – the directory structure is intact, the file names and sizes are all correct, and a Get Info on any MP3 file shows that the ID3 data is all there and seems accurate. This is true even for the songs that play wrong, but if I play one of those songs using the little mini player in the Get Info dialog, the wrong song plays (the same wrong song as in iTunes). So now I’m getting the behavior straight off the drive, with iTunes closed and the iTunes library completely out of the equation.
    Some other interesting clues/evidence:
    * This has happened before. When her first hard drive got corrupted (in the same way), I was mystified but chalked it up as a bad hard drive and got her a new one. Then we started over with a clean HFS+ formatted drive and clean music files and built a new iTunes library. And now the same thing has happened again. So I don’t think it’s just a bad hard drive.
    * It seems to be progressive. That is, everything was fine in the beginning, but over time more and more files get messed up. We know this because we have a backup that’s about a month old on which we can locate files that are fine (on the backup) but that are messed up on her connected day-to-day drive. So it seems like some activity on the drive is causing problems that are growing over time.
    * There is some weird meta data (ID3) behavior. I copied a few hundred MP3 files from the Mac drive back to the PC (over our home network) and looked at them in the Windows Explorer. The first thing I saw was that the same (wrong) music played for the bad tracks as had on the Mac. And I also saw that a lot of ID3 tags were not showing on the Windows side. Lots of tracks have no ID3 data (album, artist, genre, etc. is missing) when I look at them on the PC. There are many albums where tags show up correctly for some of the tracks but not for others. In fact, the number of files where the ID3 tags aren’t visible on the PC far exceeds the number of songs that play incorrectly on the Mac. When I look back on the Mac at the songs that have no ID3 data on the PC and do a Get Info, I see the ID3 data.
    * Often, though I can’t say always for sure, the wrong music that plays on the Mac is stuff that has been recently added. Either podcasts or music that my wife has added since the initial library was established.
    My best guess (though still full of holes):
    Something is confusing the Mac OS into writing on top of occupied space on the hard drive or into mapping files incorrectly in the drive’s allocation table, and chaos results. The Mac doesn’t think anything is wrong, and it shows everything as being clean in the Finder. So I started thinking about the kind of reads & writes my wife is doing on that drive. She rips new CDs to add to the library, she downloads new Podcasts and deletes old ones, and she changes ID3 tags.
    I’m focusing on the changing ID3 tag activity. My wife doesn’t like the way I tag genre. I like big broad categories, an she likes smaller, more specific categories. So she has gone through the initial library of 42K+ songs and changed the genre on thousands of songs. She’s change some from Pop to Power Pop or from Pop to Indie Pop or from Rock to Indie Rock, etc. Both WMP (where the tags were created) and iTunes support ID3v2.3, and so these two programs ought to be able to change tags in a totally interchangeable and safe way. But what if iTunes writes its new genre tags in a way that’s slightly different from WMP? Could iTunes be writing to memory/disk locations that are outside the boundaries of the file and thus creating some kind of buffer overrun?
    It really doesn’t make a lot of sense, but it does tie back to the evidence that this has something to do with meta data, gets worse over time, happened on more than one disk, and seems to be a file allocation table issue.
    Even if I get to the bottom of this, I think my wife’s HD is toast for sure. Here’s what I think I will do: I’ll reformat the drive, re-copy the music over from the PC, and build a new iTunes library. Then, first thing, I’ll open iTunes, select all the songs in the new library, and run “Convert ID3 Tags” to ID3v2.4. If that works and everything behaves correctly, I’ll try to change some genre tags and test the results. The problem is that the library is so large that problems can go undetected for a long time, so maybe I should do this first with a small subset of the music as a trial run.
    The thing I want to avoid is having to do this (ever) again, so I’d feel more comfortable if I understood the bug/problem before just following this guess (which feels like a roll of the dice). If anyone has seem similar behavior or has heard of any IDS incompatibilities between WMP 11 and iTunes 7, I’d love to hear about it. Any help is appreciated.
    Jim

    Wow, that was a long and detailed post. I haven't the energy to reply in equal fervor, but I will just say that lately these boards have been peppered with posts from people whose MP3s are being eaten alive by iTunes. What I don't get is why you suspect the hard drive is at fault. Unless the rest of the system is caving in, I don't think there's any reason to suspect a failing drive. Check the S.M.A.R.T. status in Disk Utility if you haven't already, and perform whatever maintenance you believe is in order.
    For the most reliable ID3 tag editing, I'd certainly recommend using foobar2000 on a Windows PC (or a Mac with Windows installed) or MP3Tag. I would definitely, at least for the time being, not put your huge music collection at risk by doing any further editing of the tags in iTunes.

Maybe you are looking for