Bug 63891 - unable to open a transaction to the database after changeVersion failure.
Summary: unable to open a transaction to the database after changeVersion failure.
Status: RESOLVED INVALID
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebCore Misc. (show other bugs)
Version: 528+ (Nightly build)
Hardware: PC Windows 7
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-07-03 23:10 PDT by jaebok.lee
Modified: 2012-10-19 12:49 PDT (History)
3 users (show)

See Also:


Attachments
test html file (2.44 KB, text/html)
2011-07-03 23:38 PDT, jaebok.lee
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description jaebok.lee 2011-07-03 23:10:52 PDT
On testing Web SQL Database, I found a problem.

I attached a test html file.
The test file is testing changeVersion method.

There is two changeVersion method calls.

The 1st call is wrong because the value of the first argument to the changeVersion() method exactly dows not matche the database's actual version.
The 2nd call is not wrong, but it return error message, "unable to open a transaction to the database"!!

So I debug the problem, And I found there is a problem performing rollback on 1st call.

    // Transaction Steps 3 - Peform preflight steps, jumping to the error callback if they fail
    if (m_wrapper && !m_wrapper->performPreflight(this)) {
        m_database->disableAuthorizer();    // <= this code is needed.
        m_sqliteTransaction.clear();
        m_database->enableAuthorizer();     // <= this code is needed. 


Reference url : http://www.w3.org/TR/webdatabase/#dom-database-sync-changeversion
Comment 1 jaebok.lee 2011-07-03 23:38:22 PDT
Created attachment 99602 [details]
test html file
Comment 2 Michael Nordman 2012-10-19 12:49:22 PDT
Looks like this bug is either invalid or has been fixed since the bug was filed. The attached test file passes.