[svn] commit: r2893 - in /branches/trac232/src: bin/auth/ lib/datasrc/ lib/datasrc/python/ lib/datasrc/python/tests/ lib/datasrc/tests/ lib/dns/python/

BIND 10 source code commits bind10-changes at lists.isc.org
Thu Sep 9 14:06:43 UTC 2010


Author: jelte
Date: Thu Sep  9 14:06:43 2010
New Revision: 2893

Log:
refactored a few enum names
updated some documentation in data_source.h
removed debug prints
removed test code from auth

Modified:
    branches/trac232/src/bin/auth/auth.spec.pre.in
    branches/trac232/src/bin/auth/auth_srv.cc
    branches/trac232/src/bin/auth/main.cc
    branches/trac232/src/lib/datasrc/data_source.cc
    branches/trac232/src/lib/datasrc/data_source.h
    branches/trac232/src/lib/datasrc/python/libdata_source_python.cc
    branches/trac232/src/lib/datasrc/python/tests/data_source_python_test.py
    branches/trac232/src/lib/datasrc/sqlite3_datasrc.cc
    branches/trac232/src/lib/datasrc/sqlite3_datasrc.h
    branches/trac232/src/lib/datasrc/tests/sqlite3_unittest.cc
    branches/trac232/src/lib/dns/python/rrclass_python.cc

Modified: branches/trac232/src/bin/auth/auth.spec.pre.in
==============================================================================
--- branches/trac232/src/bin/auth/auth.spec.pre.in (original)
+++ branches/trac232/src/bin/auth/auth.spec.pre.in Thu Sep  9 14:06:43 2010
@@ -14,115 +14,6 @@
         "command_name": "shutdown",
         "command_description": "Shut down authoritative DNS server",
         "command_args": []
-      },
-      {
-        "command_name": "add_rr",
-        "command_description": "Add an RR to the given zone (temp for testing)",
-        "command_args": [
-          { "item_name": "zone_name",
-            "item_type": "string",
-            "item_optional": false,
-            "item_default": ""
-          },
-          { "item_name": "rr_name",
-            "item_type": "string",
-            "item_optional": false,
-            "item_default": ""
-          },
-          { "item_name": "rr_class",
-            "item_type": "string",
-            "item_optional": false,
-            "item_default": ""
-          },
-          { "item_name": "rr_type",
-            "item_type": "string",
-            "item_optional": false,
-            "item_default": ""
-          },
-          { "item_name": "rr_ttl",
-            "item_type": "string",
-            "item_optional": false,
-            "item_default": ""
-          },
-          { "item_name": "rr_rdata",
-            "item_type": "string",
-            "item_optional": false,
-            "item_default": ""
-          }
-        ]
-      },
-      {
-        "command_name": "del_rr",
-        "command_description": "Remove rr from the given zone (temp for testing)",
-        "command_args": [
-          { "item_name": "zone_name",
-            "item_type": "string",
-            "item_optional": false,
-            "item_default": ""
-          },
-          { "item_name": "rr_name",
-            "item_type": "string",
-            "item_optional": false,
-            "item_default": ""
-          },
-          { "item_name": "rr_class",
-            "item_type": "string",
-            "item_optional": false,
-            "item_default": ""
-          },
-          { "item_name": "rr_type",
-            "item_type": "string",
-            "item_optional": false,
-            "item_default": ""
-          },
-          { "item_name": "rr_rdata",
-            "item_type": "string",
-            "item_optional": true,
-            "item_default": ""
-          }
-        ]
-      },
-      {
-        "command_name": "load_zone",
-        "command_description": "Load a zone (temp for testing)",
-        "command_args": [
-          { "item_name": "zone_name",
-            "item_type": "string",
-            "item_optional": false,
-            "item_default": ""
-          },
-          { "item_name": "rr_class",
-            "item_type": "string",
-            "item_optional": false,
-            "item_default": ""
-          },
-          { "item_name": "file_name",
-            "item_type": "string",
-            "item_optional": false,
-            "item_default": ""
-          },
-        ]
-      },
-      {
-        "command_name": "ixfr",
-        "command_description": "see what IXFR would do",
-        "command_args": [
-          { "item_name": "zone_name",
-            "item_type": "string",
-            "item_optional": false,
-            "item_default": ""
-          },
-          { "item_name": "rr_class",
-            "item_type": "string",
-            "item_optional": false,
-            "item_default": ""
-          },
-          { "item_name": "response_file",
-            "item_type": "string",
-            "item_optional": false,
-            "item_default": ""
-          }
-        ]
       }
     ]
   }

Modified: branches/trac232/src/bin/auth/auth_srv.cc
==============================================================================
--- branches/trac232/src/bin/auth/auth_srv.cc (original)
+++ branches/trac232/src/bin/auth/auth_srv.cc Thu Sep  9 14:06:43 2010
@@ -530,273 +530,3 @@
         return (isc::config::createAnswer(1, error.what()));
     }
 }
-
-//
-// TEMP, just a bindctl command to add an RR
-//
-
-ConstElementPtr
-AuthSrv::addRR(isc::data::ConstElementPtr args)
-{
-    Name zone_name = Name(args->get("zone_name")->stringValue());
-    RRClass rrclass = RRClass(args->get("rr_class")->stringValue());
-    DataSrcMatch match(zone_name, rrclass);
-    impl_->data_sources_.findClosestEnclosure(match);
-    DataSrc* datasource = const_cast<DataSrc*>(match.getDataSource());
-    if (datasource) {
-        RRsetPtr rrset = RRsetPtr(new RRset(Name(args->get("rr_name")->stringValue()),
-                                   rrclass,
-                                   RRType(args->get("rr_type")->stringValue()),
-                                   RRTTL(args->get("rr_ttl")->stringValue())));
-        RdataPtr rdata = createRdata(rrset->getType(), rrset->getClass(), args->get("rr_rdata")->stringValue());
-        rrset->addRdata(rdata);
-        DataSrcTransaction transaction(datasource, zone_name, RRClass::IN());
-        DataSrc::TransactionResult r = datasource->startTransaction(transaction);
-        if (r != DataSrc::T_SUCCESS) {
-            return isc::config::createAnswer(r, "error starting transaction");
-        }
-        r = datasource->addRRset(transaction, rrset);
-        std::cout << "[XX] RESULT: " << r << std::endl;
-        if (r != DataSrc::T_SUCCESS) {
-            // log? rollback immediately?
-        }
-        r = datasource->commitTransaction(transaction);
-        std::cout << "[XX] RESULT rollback: " << r << std::endl;
-        if (r == DataSrc::T_SUCCESS) {
-            return isc::config::createAnswer();
-        } else {
-            return isc::config::createAnswer(r, "error");
-        }
-        
-    } else {
-        return isc::config::createAnswer(1, "No data store found for zone");
-    }
-}
-
-ConstElementPtr
-AuthSrv::delRR(isc::data::ConstElementPtr args)
-{
-    Name zone_name = Name(args->get("zone_name")->stringValue());
-    RRClass rrclass = RRClass(args->get("rr_class")->stringValue());
-    
-    DataSrcMatch match(zone_name, rrclass);
-    impl_->data_sources_.findClosestEnclosure(match);
-    DataSrc* datasource = const_cast<DataSrc*>(match.getDataSource());
-    // hmz can't we assign RRTypes?
-    if (datasource) {
-        RRsetPtr rrset;
-        if (args->get("rr_type")->stringValue() == "ANY") {
-            rrset = RRsetPtr(new RRset(Name(args->get("rr_name")->stringValue()),
-                                       rrclass,
-                                       RRType::ANY(),
-                                       RRTTL(0)));
-        } else {
-            rrset = RRsetPtr(new RRset(Name(args->get("rr_name")->stringValue()),
-                                       rrclass,
-                                       RRType(args->get("rr_type")->stringValue()),
-                                       RRTTL(0)));
-            if (args->contains("rr_rdata")) {
-                RdataPtr rdata = createRdata(rrset->getType(), rrset->getClass(), args->get("rr_rdata")->stringValue());
-                rrset->addRdata(rdata);
-            }
-        }
-        DataSrcTransaction transaction(datasource, zone_name, RRClass::IN());
-        DataSrc::TransactionResult r = datasource->startTransaction(transaction);
-        if (r != DataSrc::T_SUCCESS) {
-            return isc::config::createAnswer(r, "error starting transaction");
-        }
-        r = datasource->delRRset(transaction, rrset);
-        std::cout << "[XX] RESULT: " << r << std::endl;
-        if (r != DataSrc::T_SUCCESS) {
-            // log? rollback immediately?
-        }
-        r = datasource->commitTransaction(transaction);
-        std::cout << "[XX] RESULT rollback: " << r << std::endl;
-        if (r == DataSrc::T_SUCCESS) {
-            return isc::config::createAnswer();
-        } else {
-            return isc::config::createAnswer(r, "error");
-        }
-    } else {
-        return isc::config::createAnswer(1, "No data store found for zone");
-    }
-}
-
-//
-// ALSO TEMP, just a bindctl command to load a zone
-// (not smart and probably fails on almost everything, is just here
-// to quickly test the backend)
-// one RR per line, must be fully 'expanded'
-// can only handle 1 rr per name/class/type
-ConstElementPtr
-AuthSrv::loadZone(isc::data::ConstElementPtr args)
-{
-    ifstream myfile(args->get("file_name")->stringValue().c_str());
-
-    RRsetList rrsetlist;
-    try {
-        if (myfile.is_open()) {
-            while (! myfile.eof() ) {
-                //stringstream ss;
-                //ss << myfile;
-                //cout << "X:      " << ss.str() << endl;
-                string s;
-                myfile >> s;
-                Name n(s);
-                myfile >> s;
-                RRTTL ttl(s);
-                myfile >> s;
-                RRClass rrclass(s);
-                myfile >> s;
-                RRType rrtype(s);
-                string line;
-                getline(myfile, line);
-                while (line[0] == ' ' || line[0] == '\t') {
-                    line.erase(0, 1);
-                }
-                std::cout << "[XX] rdata: " << line << std::endl;
-                RdataPtr rdata = createRdata(rrtype, rrclass, line);
-                std::cout << "[XX] rdata read: " << line << std::endl;
-                RRsetPtr rrset = RRsetPtr(new RRset(n,
-                                          rrclass,
-                                          rrtype,
-                                          ttl));
-                rrset->addRdata(rdata);
-
-                try {
-                    rrsetlist.addRRset(rrset);
-                } catch (DuplicateRRset ds) {
-                    rrsetlist.findRRset(n, rrtype, rrclass)->addRdata(rdata);
-                }
-            }
-            myfile.close();
-        } else {
-            return isc::config::createAnswer(1, "unable to open file");
-        }
-        
-        std::cout << "[XX] RRSETLIST: " << std::endl;
-        BOOST_FOREACH(RRsetPtr rrs, rrsetlist) {
-            std::cout << rrs->toText() << std::endl;
-        }
-        
-        std::cout << "[XX] END OF RRSETLIST" << std::endl;
-        Name zone_name(args->get("zone_name")->stringValue());
-        RRClass rrclass(args->get("rr_class")->stringValue());
-        DataSrcMatch match(zone_name, rrclass);
-        impl_->data_sources_.findClosestEnclosure(match);
-        DataSrc* datasource = const_cast<DataSrc*>(match.getDataSource());
-        // hmz can't we assign RRTypes?
-        if (datasource) {
-            DataSrcTransaction transaction(datasource, zone_name, RRClass::IN());
-            DataSrc::TransactionResult r = datasource->startTransaction(transaction);
-            if (r != DataSrc::T_SUCCESS) {
-                return isc::config::createAnswer(r, "error starting transaction");
-            }
-            r = datasource->replaceZone(transaction, rrsetlist);
-            std::cout << "[XX] RESULT: " << r << std::endl;
-            if (r != DataSrc::T_SUCCESS) {
-                // log? rollback immediately?
-            }
-            r = datasource->commitTransaction(transaction);
-            std::cout << "[XX] RESULT rollback: " << r << std::endl;
-            if (r == DataSrc::T_SUCCESS) {
-                return isc::config::createAnswer();
-            } else {
-                return isc::config::createAnswer(r, "error");
-            }
-        } else {
-            return isc::config::createAnswer(1, "No data store found for zone");
-        }
-        return isc::config::createAnswer();
-    } catch (isc::Exception exc) {
-        return isc::config::createAnswer(1, exc.what());
-    }
-}
-
-ConstElementPtr
-AuthSrv::ixfr(isc::data::ConstElementPtr args)
-{
-    try {
-        Name zone_name = Name(args->get("zone_name")->stringValue());
-        RRClass rrclass = RRClass(args->get("rr_class")->stringValue());
-        
-        // fake ixfr response from file
-        ifstream myfile(args->get("response_file")->stringValue().c_str());
-
-        Message m(Message::RENDER);
-        m.setHeaderFlag(MessageFlag::AA());
-        m.setHeaderFlag(MessageFlag::QR());
-        m.setQid(1234);
-        m.setOpcode(isc::dns::Opcode::QUERY());
-        m.setRcode(isc::dns::Rcode::NOERROR());
-        if (myfile.is_open()) {
-            while (! myfile.eof() ) {
-                //stringstream ss;
-                //ss << myfile;
-                //cout << "X:      " << ss.str() << endl;
-                string s;
-                myfile >> s;
-                if (s == "") {
-                    continue;
-                }
-                std::cout << "[XX] read name: '" << s << "'" << std::endl;
-                Name n(s);
-                std::cout << "[XX] name read " << std::endl;
-                myfile >> s;
-                RRTTL ttl(s);
-                myfile >> s;
-                RRClass rrclass(s);
-                myfile >> s;
-                RRType rrtype(s);
-                string line;
-                getline(myfile, line);
-                while (line[0] == ' ' || line[0] == '\t') {
-                    line.erase(0, 1);
-                }
-                std::cout << "[XX] rdata line: " << line << std::endl;
-                RdataPtr rdata = createRdata(rrtype, rrclass, line);
-                std::cout << "[XX] rdata line read" << std::endl;
-                RRsetPtr rrset = RRsetPtr(new RRset(n,
-                                          rrclass,
-                                          rrtype,
-                                          ttl));
-                std::cout << "[XX] rrset created" << std::endl;
-                rrset->addRdata(rdata);
-                std::cout << "[XX] rdata added" << std::endl;
-                m.addRRset(Section::ANSWER(), rrset, false);
-                std::cout << "[XX] rrset added" << std::endl;
-            }
-        }
-        std::cout << "[XX] read IXFR 'message' file" << std::endl;
-        std::cout << m << std::endl;
-        std::cout << "[XX] end of IXFR 'message'" << std::endl;
-        
-        DataSrcMatch match(zone_name, rrclass);
-        impl_->data_sources_.findClosestEnclosure(match);
-        DataSrc* datasource = const_cast<DataSrc*>(match.getDataSource());
-        if (datasource) {
-            DataSrcTransaction transaction(datasource, zone_name, RRClass::IN());
-            DataSrc::TransactionResult result = datasource->startTransaction(transaction);
-            if (result != DataSrc::T_SUCCESS) {
-                return isc::config::createAnswer(result, "error starting transaction");
-            }
-
-            DataSrc::Result ixfr_result = datasource->doIXFR(transaction,
-                                           m.beginSection(Section::ANSWER()),
-                                           m.endSection(Section::ANSWER()));
-            if (ixfr_result != DataSrc::SUCCESS) {
-                return isc::config::createAnswer(result, "Error in doIXFR");
-            } else {
-                datasource->commitTransaction(transaction);
-                return isc::config::createAnswer();
-            }
-        } else {
-            return isc::config::createAnswer(1, "No data store found for zone");
-        }
-    } catch (isc::Exception exc) {
-        return isc::config::createAnswer(1, exc.what());
-    }
-}
-
-
-

Modified: branches/trac232/src/bin/auth/main.cc
==============================================================================
--- branches/trac232/src/bin/auth/main.cc (original)
+++ branches/trac232/src/bin/auth/main.cc Thu Sep  9 14:06:43 2010
@@ -79,14 +79,6 @@
         cout << args << endl;
         /* let's add that message to our answer as well */
         answer = createAnswer(0, args);
-    } else if (command == "add_rr") {
-        answer = auth_server->addRR(args);
-    } else if (command == "del_rr") {
-        answer = auth_server->delRR(args);
-    } else if (command == "load_zone") {
-        answer = auth_server->loadZone(args);
-    } else if (command == "ixfr") {
-        answer = auth_server->ixfr(args);
     } else if (command == "shutdown") {
         io_service->stop();
     }

Modified: branches/trac232/src/lib/datasrc/data_source.cc
==============================================================================
--- branches/trac232/src/lib/datasrc/data_source.cc (original)
+++ branches/trac232/src/lib/datasrc/data_source.cc Thu Sep  9 14:06:43 2010
@@ -1249,49 +1249,49 @@
     return (NOT_IMPLEMENTED);
 }
 
-DataSrc::TransactionResult
+DataSrc::WriteResult
 DataSrc::startTransaction(DataSrcTransaction& transaction UNUSED_PARAM)
 {
-    return (T_NOT_IMPLEMENTED);
-}
-
-DataSrc::TransactionResult
+    return (W_NOT_IMPLEMENTED);
+}
+
+DataSrc::WriteResult
 DataSrc::commitTransaction(DataSrcTransaction& transaction UNUSED_PARAM)
 {
-    return (T_NOT_IMPLEMENTED);
-}
-
-DataSrc::TransactionResult
+    return (W_NOT_IMPLEMENTED);
+}
+
+DataSrc::WriteResult
 DataSrc::rollbackTransaction(DataSrcTransaction& transaction UNUSED_PARAM)
 {
-    return (T_NOT_IMPLEMENTED);
-}
-
-DataSrc::TransactionResult
+    return (W_NOT_IMPLEMENTED);
+}
+
+DataSrc::WriteResult
 DataSrc::addRRset(DataSrcTransaction& transaction UNUSED_PARAM,
                   const isc::dns::ConstRRsetPtr rrset UNUSED_PARAM)
 {
-    return (T_NOT_IMPLEMENTED);
-}
-
-DataSrc::TransactionResult
+    return (W_NOT_IMPLEMENTED);
+}
+
+DataSrc::WriteResult
 DataSrc::delRRset(DataSrcTransaction& transaction UNUSED_PARAM,
                   isc::dns::ConstRRsetPtr rrset UNUSED_PARAM)
 {
-    return (T_NOT_IMPLEMENTED);
-}
-
-DataSrc::TransactionResult
+    return (W_NOT_IMPLEMENTED);
+}
+
+DataSrc::WriteResult
 DataSrc::delZone(DataSrcTransaction& transaction UNUSED_PARAM)
 {
-    return (T_NOT_IMPLEMENTED);
-}
-
-DataSrc::TransactionResult
+    return (W_NOT_IMPLEMENTED);
+}
+
+DataSrc::WriteResult
 DataSrc::replaceZone(DataSrcTransaction& transaction UNUSED_PARAM,
                      const RRsetList& UNUSED_PARAM)
 {
-    return (T_NOT_IMPLEMENTED);
+    return (W_NOT_IMPLEMENTED);
 }
 
 static bool
@@ -1432,10 +1432,10 @@
             return (Rcode::SERVFAIL());
         } else {
             // TODO: no serial arithmetic yet?
-            if (delRRset(transaction, *(soa_list.begin())) != T_SUCCESS) {
+            if (delRRset(transaction, *(soa_list.begin())) != W_SUCCESS) {
                 return (Rcode::SERVFAIL());
             }
-            if (addRRset(transaction, update) != T_SUCCESS) {
+            if (addRRset(transaction, update) != W_SUCCESS) {
                 return (Rcode::SERVFAIL());
             }
         }
@@ -1445,11 +1445,11 @@
     } else {
         if (update->getClass() == RRClass::ANY() ||
             update->getClass() == RRClass::NONE()) {
-            if (delRRset(transaction, update) != T_SUCCESS) {
+            if (delRRset(transaction, update) != W_SUCCESS) {
                 return (Rcode::SERVFAIL());
             }
         } else {
-            if (addRRset(transaction, update) != T_SUCCESS) {
+            if (addRRset(transaction, update) != W_SUCCESS) {
                 return (Rcode::SERVFAIL());
             }
         }
@@ -1653,50 +1653,50 @@
     }
 }
 
-DataSrc::TransactionResult
+DataSrc::WriteResult
 MetaDataSrc::startTransaction(DataSrcTransaction& transaction UNUSED_PARAM)
 {
-    return (T_NOT_IMPLEMENTED);
-}
-
-DataSrc::TransactionResult
+    return (W_NOT_IMPLEMENTED);
+}
+
+DataSrc::WriteResult
 MetaDataSrc::commitTransaction(DataSrcTransaction& transaction UNUSED_PARAM)
 {
-    return (T_NOT_IMPLEMENTED);
-}
-
-DataSrc::TransactionResult
+    return (W_NOT_IMPLEMENTED);
+}
+
+DataSrc::WriteResult
 MetaDataSrc::rollbackTransaction(DataSrcTransaction& transaction UNUSED_PARAM)
 {
-    return (T_NOT_IMPLEMENTED);
-}
-
-DataSrc::TransactionResult
+    return (W_NOT_IMPLEMENTED);
+}
+
+DataSrc::WriteResult
 MetaDataSrc::addRRset(DataSrcTransaction& transaction UNUSED_PARAM,
                       isc::dns::ConstRRsetPtr rrset UNUSED_PARAM)
 {
-    return (T_NOT_IMPLEMENTED);
-}
-
-DataSrc::TransactionResult
+    return (W_NOT_IMPLEMENTED);
+}
+
+DataSrc::WriteResult
 MetaDataSrc::delRRset(DataSrcTransaction& transaction UNUSED_PARAM,
                       isc::dns::ConstRRsetPtr rrset UNUSED_PARAM)
 {
-    return (T_NOT_IMPLEMENTED);
-}
-
-DataSrc::TransactionResult
+    return (W_NOT_IMPLEMENTED);
+}
+
+DataSrc::WriteResult
 MetaDataSrc::delZone(DataSrcTransaction& transaction UNUSED_PARAM)
 {
-    return (T_NOT_IMPLEMENTED);
-}
-
-DataSrc::TransactionResult
+    return (W_NOT_IMPLEMENTED);
+}
+
+DataSrc::WriteResult
 MetaDataSrc::replaceZone(DataSrcTransaction& transaction UNUSED_PARAM,
                          const isc::dns::RRsetList& rrset_list UNUSED_PARAM)
 {
-    return (T_NOT_IMPLEMENTED);
-}
-
-}
-}
+    return (W_NOT_IMPLEMENTED);
+}
+
+}
+}

Modified: branches/trac232/src/lib/datasrc/data_source.h
==============================================================================
--- branches/trac232/src/lib/datasrc/data_source.h (original)
+++ branches/trac232/src/lib/datasrc/data_source.h Thu Sep  9 14:06:43 2010
@@ -84,13 +84,15 @@
         NOT_IMPLEMENTED
     };
 
-    enum TransactionResult {
-        T_SUCCESS,              // ok
-        T_ERROR,                // general (code) error
-        T_DB_ERROR,             // (write) error in the backend
-        T_NOT_IMPLEMENTED,      // write functions not implemented
-        T_NO_SUCH_ZONE,         // zone not known to this data source
-        T_NO_SUCH_DATA          // attempt to delete nonexistant data
+    // For write-related methods, we have a separate list of
+    // return values, since the errors that can occur are different
+    enum WriteResult {
+        W_SUCCESS,              // ok
+        W_ERROR,                // general (code) error
+        W_DB_ERROR,             // (write) error in the backend
+        W_NOT_IMPLEMENTED,      // write functions not implemented
+        W_NO_SUCH_ZONE,         // zone not known to this data source
+        W_NO_SUCH_DATA          // attempt to delete nonexistant data
     };
 
     // These flags indicate conditions encountered while processing a query.
@@ -170,6 +172,7 @@
    virtual Result findCoveringNSEC3(const isc::dns::Name& zonename,
                                     std::string& hash,
                                     isc::dns::RRsetList& target) const = 0;
+
 };
 
 ///
@@ -349,7 +352,7 @@
     // methods. By default they will return NOT_IMPLEMENTED.
     ///
     /// \name Low-level functions for writable data sources.
-    /// The default functions for these return T_NOT_IMPLEMENTED
+    /// The default functions for these return W_NOT_IMPLEMENTED
     /// A data source that supports writes MUST override these methods.
     ///
     //@{
@@ -361,37 +364,40 @@
     /// transaction object.
     /// \param transaction, a transaction that has been initialized for
     /// a zone held by this data source.
-    /// \return T_SUCCESS on success, error value otherwise
-    virtual TransactionResult startTransaction(DataSrcTransaction&  transaction);
+    /// \return W_SUCCESS on success, error value otherwise
+    virtual WriteResult startTransaction(DataSrcTransaction&  transaction);
 
     /// \brief Commit the changes made in the given transaction
     /// The transaction object must be in state RUNNING.
     /// On successs, the transaction will be in state DONE.
     /// \param transaction to be committed.
-    /// \return T_SUCCESS on success, error value otherwise
-    virtual TransactionResult commitTransaction(DataSrcTransaction&  transaction);
+    /// \return W_SUCCESS on success, error value otherwise
+    virtual WriteResult commitTransaction(DataSrcTransaction&  transaction);
     
     /// \brief Roll back the changes made in the given transaction
     /// The transaction object must be in state RUNNING.
     /// On successs, the transaction will be in state DONE.
     /// \param transaction to be rolled back.
-    /// \return T_SUCCESS on success, error value otherwise
-    virtual TransactionResult rollbackTransaction(DataSrcTransaction&  transaction);
+    /// \return W_SUCCESS on success, error value otherwise
+    virtual WriteResult rollbackTransaction(DataSrcTransaction&  transaction);
 
     /// \brief Add an RRset to the zone.
     /// \param transaction The transaction in which this addition is
     ///        performed.
     /// \param RRsetPtr The RRset to add
-    /// \param T_SUCCESS on success.
-    virtual TransactionResult addRRset(DataSrcTransaction&  transaction,
+    /// \param W_SUCCESS on success.
+    virtual WriteResult addRRset(DataSrcTransaction&  transaction,
                                        isc::dns::ConstRRsetPtr rrset);
     
     /// \brief Delete an RRset from the zone.
+    /// If the given RRset contains no Rdata parts, all RRs with
+    /// the name, type and class of the given rrset are deleted.
+    /// Otherwise every RR in the given RRset is deleted.
     /// \param transaction The transaction in which this deletion is
     ///        performed.
     /// \param RRsetPtr The RRset to delete
-    /// \param T_SUCCESS on success.
-    virtual TransactionResult delRRset(DataSrcTransaction&  transaction,
+    /// \param W_SUCCESS on success.
+    virtual WriteResult delRRset(DataSrcTransaction&  transaction,
                                        isc::dns::ConstRRsetPtr rrset);
                                        
     /// \brief Remove an entire zone from the data source
@@ -399,15 +405,15 @@
     /// the datasource.
     /// \param transaction The transaction in which this deletion is
     ///        performed.
-    /// \return T_SUCCESS on success
-    virtual TransactionResult delZone(DataSrcTransaction&  transaction);
+    /// \return W_SUCCESS on success
+    virtual WriteResult delZone(DataSrcTransaction&  transaction);
 
     /// \brief Replace the contents of the zone by the given list of
     /// rrsets.
     /// This deletes *all* current RRsets in the zone.
     /// \param transaction The transaction to perform the operations on
-    /// \return T_SUCCESS on success
-    virtual TransactionResult replaceZone(DataSrcTransaction&  transaction,
+    /// \return W_SUCCESS on success
+    virtual WriteResult replaceZone(DataSrcTransaction&  transaction,
                                           const isc::dns::RRsetList& rrsets);
     //@}
 
@@ -422,7 +428,7 @@
     /// there are rrs for class IN.
     /// If the given rrset has 0 rdata records; any RR with the given
     /// name, class and type will result in a positive result,
-    /// otherwise the rrset in the data source4 must be exactly the
+    /// otherwise the rrset in the data source must be exactly the
     /// same.
     ///
     /// \param transaction The transaction in which the check is
@@ -542,16 +548,16 @@
     // Writable data sources
     //
     // see comments at DataSrc
-    virtual TransactionResult startTransaction(DataSrcTransaction&  transaction);
-    virtual TransactionResult commitTransaction(DataSrcTransaction&  transaction);
-    virtual TransactionResult rollbackTransaction(DataSrcTransaction&  transaction);
+    virtual WriteResult startTransaction(DataSrcTransaction&  transaction);
+    virtual WriteResult commitTransaction(DataSrcTransaction&  transaction);
+    virtual WriteResult rollbackTransaction(DataSrcTransaction&  transaction);
     
-    virtual TransactionResult addRRset(DataSrcTransaction&  transaction,
+    virtual WriteResult addRRset(DataSrcTransaction&  transaction,
                                        isc::dns::ConstRRsetPtr rrset);
-    virtual TransactionResult delRRset(DataSrcTransaction&  transaction,
+    virtual WriteResult delRRset(DataSrcTransaction&  transaction,
                                        isc::dns::ConstRRsetPtr rrset);
-    virtual TransactionResult delZone(DataSrcTransaction&  transaction);
-    virtual TransactionResult replaceZone(DataSrcTransaction&  transaction,
+    virtual WriteResult delZone(DataSrcTransaction&  transaction);
+    virtual WriteResult replaceZone(DataSrcTransaction&  transaction,
                                           const isc::dns::RRsetList& rrsets);
     // end of writable data sources part
 private:

Modified: branches/trac232/src/lib/datasrc/python/libdata_source_python.cc
==============================================================================
--- branches/trac232/src/lib/datasrc/python/libdata_source_python.cc (original)
+++ branches/trac232/src/lib/datasrc/python/libdata_source_python.cc Thu Sep  9 14:06:43 2010
@@ -1099,12 +1099,12 @@
     PyDict_SetItemString(datasrc_type.tp_dict, "ERROR", Py_BuildValue("I", DataSrc::ERROR));
     PyDict_SetItemString(datasrc_type.tp_dict, "NOT_IMPLEMENTED", Py_BuildValue("I", DataSrc::NOT_IMPLEMENTED));
 
-    PyDict_SetItemString(datasrc_type.tp_dict, "T_SUCCESS", Py_BuildValue("I", DataSrc::T_SUCCESS));
-    PyDict_SetItemString(datasrc_type.tp_dict, "T_ERROR", Py_BuildValue("I", DataSrc::T_ERROR));
-    PyDict_SetItemString(datasrc_type.tp_dict, "T_DB_ERROR", Py_BuildValue("I", DataSrc::T_DB_ERROR));
-    PyDict_SetItemString(datasrc_type.tp_dict, "T_NOT_IMPLEMENTED", Py_BuildValue("I", DataSrc::T_NOT_IMPLEMENTED));
-    PyDict_SetItemString(datasrc_type.tp_dict, "T_NO_SUCH_ZONE", Py_BuildValue("I", DataSrc::T_NO_SUCH_ZONE));
-    PyDict_SetItemString(datasrc_type.tp_dict, "T_NO_SUCH_DATA", Py_BuildValue("I", DataSrc::T_NO_SUCH_DATA));
+    PyDict_SetItemString(datasrc_type.tp_dict, "W_SUCCESS", Py_BuildValue("I", DataSrc::W_SUCCESS));
+    PyDict_SetItemString(datasrc_type.tp_dict, "W_ERROR", Py_BuildValue("I", DataSrc::W_ERROR));
+    PyDict_SetItemString(datasrc_type.tp_dict, "W_DB_ERROR", Py_BuildValue("I", DataSrc::W_DB_ERROR));
+    PyDict_SetItemString(datasrc_type.tp_dict, "W_NOT_IMPLEMENTED", Py_BuildValue("I", DataSrc::W_NOT_IMPLEMENTED));
+    PyDict_SetItemString(datasrc_type.tp_dict, "W_NO_SUCH_ZONE", Py_BuildValue("I", DataSrc::W_NO_SUCH_ZONE));
+    PyDict_SetItemString(datasrc_type.tp_dict, "W_NO_SUCH_DATA", Py_BuildValue("I", DataSrc::W_NO_SUCH_DATA));
 
     //
     // DataSrcTransaction

Modified: branches/trac232/src/lib/datasrc/python/tests/data_source_python_test.py
==============================================================================
--- branches/trac232/src/lib/datasrc/python/tests/data_source_python_test.py (original)
+++ branches/trac232/src/lib/datasrc/python/tests/data_source_python_test.py Thu Sep  9 14:06:43 2010
@@ -181,7 +181,7 @@
         self.assertEqual(DataSrcTransaction.INIT, transaction.get_state())
 
         result = self.ds.start_transaction(transaction)
-        self.assertEqual(DataSrc.T_SUCCESS, result)
+        self.assertEqual(DataSrc.W_SUCCESS, result)
         self.assertEqual(DataSrcTransaction.RUNNING, transaction.get_state())
 
         self.ds.rollback_transaction(transaction)
@@ -189,7 +189,7 @@
 
         transaction = DataSrcTransaction(self.ds, Name("doesnotexist.com"), RRClass.IN())
         result = self.ds.start_transaction(transaction)
-        self.assertEqual(DataSrc.T_NO_SUCH_ZONE, result)
+        self.assertEqual(DataSrc.W_NO_SUCH_ZONE, result)
         self.assertEqual(DataSrcTransaction.INIT, transaction.get_state())
 
     def test_add_rrset_rollback(self):
@@ -199,11 +199,11 @@
         self.assertEqual(DataSrcTransaction.INIT, transaction.get_state())
 
         result = self.ds.start_transaction(transaction)
-        self.assertEqual(DataSrc.T_SUCCESS, result)
+        self.assertEqual(DataSrc.W_SUCCESS, result)
 
         # empty rrset, should fail on add
         result = self.ds.add_rrset(transaction, rrset)
-        self.assertEqual(DataSrc.T_ERROR, result)
+        self.assertEqual(DataSrc.W_ERROR, result)
 
         # check if rrset does not exist, then add it but roll back
         # check for nonexistence again, then add it and commit
@@ -215,7 +215,7 @@
 
         rrset.add_rdata(Rdata(rrset.get_type(), rrset.get_class(), "192.0.2.1"))
         result = self.ds.add_rrset(transaction, rrset)
-        self.assertEqual(DataSrc.T_SUCCESS, result)
+        self.assertEqual(DataSrc.W_SUCCESS, result)
 
         self.ds.rollback_transaction(transaction)
 
@@ -235,11 +235,11 @@
 
         transaction = DataSrcTransaction(self.ds, Name("example.com"), RRClass.IN())
         result = self.ds.start_transaction(transaction)
-        self.assertEqual(DataSrc.T_SUCCESS, result)
+        self.assertEqual(DataSrc.W_SUCCESS, result)
         result = self.ds.add_rrset(transaction, rrset)
-        self.assertEqual(DataSrc.T_SUCCESS, result)
+        self.assertEqual(DataSrc.W_SUCCESS, result)
         result = self.ds.commit_transaction(transaction)
-        self.assertEqual(DataSrc.T_SUCCESS, result)
+        self.assertEqual(DataSrc.W_SUCCESS, result)
 
         result = []
         n = self.ds.find_addrs(Name("added.example.com"), RRClass.IN(), result, 0, Name("example.com"))
@@ -255,7 +255,7 @@
         self.assertEqual(DataSrcTransaction.INIT, transaction.get_state())
 
         result = self.ds.start_transaction(transaction)
-        self.assertEqual(DataSrc.T_SUCCESS, result)
+        self.assertEqual(DataSrc.W_SUCCESS, result)
 
         result = []
         n = self.ds.find_addrs(Name("www.example.com"), RRClass.IN(), result, 0, Name("example.com"))
@@ -263,7 +263,7 @@
         self.assertEqual(1, len(result))
 
         result = self.ds.del_rrset(transaction, rrset)
-        self.assertEqual(DataSrc.T_SUCCESS, result)
+        self.assertEqual(DataSrc.W_SUCCESS, result)
 
         self.ds.rollback_transaction(transaction)
 
@@ -283,11 +283,11 @@
 
         transaction = DataSrcTransaction(self.ds, Name("example.com"), RRClass.IN())
         result = self.ds.start_transaction(transaction)
-        self.assertEqual(DataSrc.T_SUCCESS, result)
+        self.assertEqual(DataSrc.W_SUCCESS, result)
         result = self.ds.del_rrset(transaction, rrset)
-        self.assertEqual(DataSrc.T_SUCCESS, result)
+        self.assertEqual(DataSrc.W_SUCCESS, result)
         result = self.ds.commit_transaction(transaction)
-        self.assertEqual(DataSrc.T_SUCCESS, result)
+        self.assertEqual(DataSrc.W_SUCCESS, result)
 
         result = []
         n = self.ds.find_addrs(Name("www.example.com"), RRClass.IN(), result, 0, Name("example.com"))
@@ -307,11 +307,11 @@
 
         transaction = DataSrcTransaction(self.ds, Name("example.com"), RRClass.IN())
         result = self.ds.start_transaction(transaction)
-        self.assertEqual(DataSrc.T_SUCCESS, result)
+        self.assertEqual(DataSrc.W_SUCCESS, result)
         result = self.ds.del_rrset(transaction, rrset)
-        self.assertEqual(DataSrc.T_SUCCESS, result)
+        self.assertEqual(DataSrc.W_SUCCESS, result)
         result = self.ds.commit_transaction(transaction)
-        self.assertEqual(DataSrc.T_SUCCESS, result)
+        self.assertEqual(DataSrc.W_SUCCESS, result)
 
         result = []
         n = self.ds.find_rrset(Name("www.example.com"), RRClass.IN(), RRType.A(), result, 0, Name("example.com"))
@@ -321,13 +321,13 @@
     def test_del_zone(self):
         transaction = DataSrcTransaction(self.ds, Name("example.com"), RRClass.IN())
         result = self.ds.start_transaction(transaction)
-        self.assertEqual(DataSrc.T_SUCCESS, result)
+        self.assertEqual(DataSrc.W_SUCCESS, result)
 
         result = self.ds.del_zone(transaction)
-        self.assertEqual(DataSrc.T_SUCCESS, result)
+        self.assertEqual(DataSrc.W_SUCCESS, result)
 
         result = self.ds.commit_transaction(transaction)
-        self.assertEqual(DataSrc.T_SUCCESS, result)
+        self.assertEqual(DataSrc.W_SUCCESS, result)
 
         result = []
         n = self.ds.find_rrset(Name("www.example.com"), RRClass.IN(), RRType.A(), result, 0, Name("example.com"))
@@ -336,12 +336,12 @@
         
         transaction = DataSrcTransaction(self.ds, Name("example.com"), RRClass.IN())
         result = self.ds.start_transaction(transaction)
-        self.assertEqual(DataSrc.T_NO_SUCH_ZONE, result)
+        self.assertEqual(DataSrc.W_NO_SUCH_ZONE, result)
         
     def test_replace_zone(self):
         transaction = DataSrcTransaction(self.ds, Name("example.com"), RRClass.IN())
         result = self.ds.start_transaction(transaction)
-        self.assertEqual(DataSrc.T_SUCCESS, result)
+        self.assertEqual(DataSrc.W_SUCCESS, result)
 
         result = []
         n = self.ds.find_rrset(Name("www.example.com"), RRClass.IN(), RRType.A(), result, 0, Name("example.com"))
@@ -350,14 +350,14 @@
 
         new_rrs = []
         result = self.ds.replace_zone(transaction, new_rrs)
-        self.assertEqual(DataSrc.T_SUCCESS, result)
+        self.assertEqual(DataSrc.W_SUCCESS, result)
 
         self.assertRaises(TypeError, self.ds.replace_zone, transaction)
         self.assertRaises(TypeError, self.ds.replace_zone, transaction, 1)
         self.assertRaises(TypeError, self.ds.replace_zone, transaction, [1])
 
         result = self.ds.commit_transaction(transaction)
-        self.assertEqual(DataSrc.T_SUCCESS, result)
+        self.assertEqual(DataSrc.W_SUCCESS, result)
 
         result = []
         n = self.ds.find_rrset(Name("www.example.com"), RRClass.IN(), RRType.A(), result, 0, Name("example.com"))
@@ -367,7 +367,7 @@
     def test_have_rrset(self):
         transaction = DataSrcTransaction(self.ds, Name("example.com"), RRClass.IN())
         result = self.ds.start_transaction(transaction)
-        self.assertEqual(DataSrc.T_SUCCESS, result)
+        self.assertEqual(DataSrc.W_SUCCESS, result)
 
         rrset1 = RRset(Name("www.example.com"), RRClass.IN(), RRType.A(), RRTTL(3600))
         rrset1.add_rdata(Rdata(rrset1.get_type(), rrset1.get_class(), "192.0.2.1"))
@@ -385,7 +385,7 @@
     def test_update_check_prerequisite(self):
         transaction = DataSrcTransaction(self.ds, Name("example.com"), RRClass.IN())
         result = self.ds.start_transaction(transaction)
-        self.assertEqual(DataSrc.T_SUCCESS, result)
+        self.assertEqual(DataSrc.W_SUCCESS, result)
 
         rrset1 = RRset(Name("www.example.com"), RRClass.IN(), RRType.A(), RRTTL(0))
         rrset1.add_rdata(Rdata(rrset1.get_type(), rrset1.get_class(), "192.0.2.1"))
@@ -416,13 +416,13 @@
 
         transaction = DataSrcTransaction(self.ds, Name("example.com"), RRClass.IN())
         result = self.ds.start_transaction(transaction)
-        self.assertEqual(DataSrc.T_SUCCESS, result)
+        self.assertEqual(DataSrc.W_SUCCESS, result)
 
         result = self.ds.do_ixfr(transaction, rrsets)
-        self.assertEqual(DataSrc.T_SUCCESS, result)
+        self.assertEqual(DataSrc.W_SUCCESS, result)
 
         result = self.ds.commit_transaction(transaction)
-        self.assertEqual(DataSrc.T_SUCCESS, result)
+        self.assertEqual(DataSrc.W_SUCCESS, result)
         
         result = []
         n = self.ds.find_addrs(Name("www.example.com"), RRClass.IN(), result, 0, Name("example.com"))
@@ -441,13 +441,13 @@
 
         transaction = DataSrcTransaction(self.ds, Name("example.com"), RRClass.IN())
         result = self.ds.start_transaction(transaction)
-        self.assertEqual(DataSrc.T_SUCCESS, result)
+        self.assertEqual(DataSrc.W_SUCCESS, result)
 
         result = self.ds.do_ixfr(transaction, rrsets)
-        self.assertEqual(DataSrc.T_ERROR, result)
+        self.assertEqual(DataSrc.W_ERROR, result)
 
         result = self.ds.rollback_transaction(transaction)
-        self.assertEqual(DataSrc.T_SUCCESS, result)
+        self.assertEqual(DataSrc.W_SUCCESS, result)
         
         result = []
         n = self.ds.find_addrs(Name("www.example.com"), RRClass.IN(), result, 0, Name("example.com"))
@@ -462,8 +462,8 @@
 else:
     testdata_path = "../tests/testdata"
 
-if "TESTDATA_OUT_PATH" in os.environ:
-    testdata_out_path = os.environ["TESTDATA_OUT_PATH"]
+if "TESTDATA_OUW_PATH" in os.environ:
+    testdata_out_path = os.environ["TESTDATA_OUW_PATH"]
 else:
     testdata_out_path = "../tests/testdata"
 

Modified: branches/trac232/src/lib/datasrc/sqlite3_datasrc.cc
==============================================================================
--- branches/trac232/src/lib/datasrc/sqlite3_datasrc.cc (original)
+++ branches/trac232/src/lib/datasrc/sqlite3_datasrc.cc Thu Sep  9 14:06:43 2010
@@ -778,63 +778,63 @@
     return (SUCCESS);
 }
 
-DataSrc::TransactionResult
+DataSrc::WriteResult
 Sqlite3DataSrc::startTransaction(DataSrcTransaction& transaction)
 {
     if (transaction.getState() != DataSrcTransaction::INIT) {
-        return DataSrc::T_ERROR;
+        return DataSrc::W_ERROR;
     }
     int result = sqlite3_exec(dbparameters->db_, w_start_transaction_str, NULL, NULL, NULL);
     if (result == SQLITE_OK) {
         int zone_id = hasExactZone(transaction.getZoneName().toText().c_str());
         if (zone_id <= 0) {
-            return DataSrc::T_NO_SUCH_ZONE;
+            return DataSrc::W_NO_SUCH_ZONE;
         }
         isc::data::ElementPtr trans_data = isc::data::Element::createMap();
         trans_data->set("zone_id", isc::data::Element::create(zone_id));
         transaction.setData(trans_data);
         transaction.setState(DataSrcTransaction::RUNNING);
-        return DataSrc::T_SUCCESS;
-    } else {
-        return DataSrc::T_DB_ERROR;
-    }
-}
-
-DataSrc::TransactionResult
+        return DataSrc::W_SUCCESS;
+    } else {
+        return DataSrc::W_DB_ERROR;
+    }
+}
+
+DataSrc::WriteResult
 Sqlite3DataSrc::commitTransaction(DataSrcTransaction& transaction UNUSED_PARAM)
 {
     if (transaction.getState() != DataSrcTransaction::RUNNING) {
-        return DataSrc::T_ERROR;
+        return DataSrc::W_ERROR;
     }
 
     int result = sqlite3_exec(dbparameters->db_, w_commit_transaction_str, NULL, NULL, NULL);
     
     if (result == SQLITE_OK) {
         transaction.setState(DataSrcTransaction::DONE);
-        return DataSrc::T_SUCCESS;
-    } else {
-        return DataSrc::T_DB_ERROR;
-    }
-}
-
-DataSrc::TransactionResult
+        return DataSrc::W_SUCCESS;
+    } else {
+        return DataSrc::W_DB_ERROR;
+    }
+}
+
+DataSrc::WriteResult
 Sqlite3DataSrc::rollbackTransaction(DataSrcTransaction& transaction)
 {
     if (transaction.getState() != DataSrcTransaction::RUNNING) {
-        return DataSrc::T_ERROR;
+        return DataSrc::W_ERROR;
     }
     int result = sqlite3_exec(dbparameters->db_, w_rollback_transaction_str, NULL, NULL, NULL);
 
     if (result == SQLITE_OK) {
         transaction.setState(DataSrcTransaction::DONE);
-        return DataSrc::T_SUCCESS;
-    } else {
-        return DataSrc::T_DB_ERROR;
-    }
-}
-
-
-DataSrc::TransactionResult
+        return DataSrc::W_SUCCESS;
+    } else {
+        return DataSrc::W_DB_ERROR;
+    }
+}
+
+
+DataSrc::WriteResult
 Sqlite3DataSrc::addRR(int zone_id,
                       const isc::dns::Name& name,
                       const isc::dns::RRType& rrtype,
@@ -890,40 +890,37 @@
                   rdata.toText() << " to SQL statement (query)");
     }
 
-    std::cout << "[XX] query prepared, executing" << std::endl;
     int result = sqlite3_step(query);
 
     sqlite3_reset(query);
 
     if (result == SQLITE_DONE) {
-        return DataSrc::T_SUCCESS;
-    } else {
-        std::cout << "[XX] sqlite3 add_rr error: " << result << std::endl;;
-        std::cout << "[XX] " << sqlite3_errmsg(dbparameters->db_) << std::endl;
-
-        return DataSrc::T_DB_ERROR;
-    }
-
-}
-
-DataSrc::TransactionResult
+        return DataSrc::W_SUCCESS;
+    } else {
+        return DataSrc::W_DB_ERROR;
+    }
+
+}
+
+DataSrc::WriteResult
 Sqlite3DataSrc::addRRset(DataSrcTransaction& transaction,
                          isc::dns::ConstRRsetPtr rrset)
 {
     if (transaction.getState() != DataSrcTransaction::RUNNING) {
-        return DataSrc::T_ERROR;
+        return DataSrc::W_ERROR;
     }
     if (rrset->getRdataCount() == 0) {
-        return DataSrc::T_ERROR;
+        return DataSrc::W_ERROR;
     }
     int zone_id = transaction.getData()->get("zone_id")->intValue();
     RdataIteratorPtr rdp = rrset->getRdataIterator();
     rdp->first();
 
-    DataSrc::TransactionResult result = DataSrc::T_SUCCESS;
+    DataSrc::WriteResult result = DataSrc::W_SUCCESS;
     do {
-        result = addRR(zone_id, rrset->getName(), rrset->getType(), rrset->getTTL(), rdp->getCurrent());
-        if (result != DataSrc::T_SUCCESS) {
+        result = addRR(zone_id, rrset->getName(), rrset->getType(),
+                       rrset->getTTL(), rdp->getCurrent());
+        if (result != DataSrc::W_SUCCESS) {
             return result;
         } else {
             rdp->next();
@@ -932,7 +929,7 @@
     return result;
 }
 
-DataSrc::TransactionResult
+DataSrc::WriteResult
 Sqlite3DataSrc::delRR(int zone_id,
                       const isc::dns::Name& name,
                       const isc::dns::RRType& rrtype)
@@ -956,7 +953,6 @@
     }
 
     if (rrtype == RRType::ANY()) {
-        std::cout << "[XX] rrtype any" << std::endl;
         rc = sqlite3_bind_text(query, 3, "%", -1,
                                SQLITE_STATIC);
     } else {
@@ -975,7 +971,6 @@
                                 " to SQL statement (query)");
     }
 
-    std::cout << "[XX] query prepared, executing" << std::endl;
     int result = sqlite3_step(query);
     int deleted_rows =  sqlite3_total_changes(dbparameters->db_);
 
@@ -983,19 +978,16 @@
 
     if (result == SQLITE_DONE) {
         if (deleted_rows > 0) {
-            return DataSrc::T_SUCCESS;
+            return DataSrc::W_SUCCESS;
         } else {
-            return DataSrc::T_NO_SUCH_DATA;
-        }
-    } else {
-        std::cout << "[XX] sqlite3 del_rr error: " << result << std::endl;;
-        std::cout << "[XX] " << sqlite3_errmsg(dbparameters->db_) << std::endl;
-
-        return DataSrc::T_DB_ERROR;
-    }
-}
-
-DataSrc::TransactionResult
+            return DataSrc::W_NO_SUCH_DATA;
+        }
+    } else {
+        return DataSrc::W_DB_ERROR;
+    }
+}
+
+DataSrc::WriteResult
 Sqlite3DataSrc::delRR(int zone_id,
                       const isc::dns::Name& name,
                       const isc::dns::RRType& rrtype,
@@ -1033,7 +1025,6 @@
                   rdata.toText() << " to SQL statement (query)");
     }
 
-    std::cout << "[XX] query prepared, executing" << std::endl;
     int result = sqlite3_step(query);
     int deleted_rows =  sqlite3_total_changes(dbparameters->db_);
 
@@ -1041,19 +1032,16 @@
 
     if (result == SQLITE_DONE) {
         if (deleted_rows > 0) {
-            return DataSrc::T_SUCCESS;
+            return DataSrc::W_SUCCESS;
         } else {
-            return DataSrc::T_NO_SUCH_DATA;
-        }
-    } else {
-        std::cout << "[XX] sqlite3 add_rr error: " << result << std::endl;;
-        std::cout << "[XX] " << sqlite3_errmsg(dbparameters->db_) << std::endl;
-
-        return DataSrc::T_DB_ERROR;
-    }
-}
-
-DataSrc::TransactionResult
+            return DataSrc::W_NO_SUCH_DATA;
+        }
+    } else {
+        return DataSrc::W_DB_ERROR;
+    }
+}
+
+DataSrc::WriteResult
 Sqlite3DataSrc::delAll(int zone_id)
 {
     sqlite3_stmt* query = dbparameters->w_del_all_;
@@ -1068,57 +1056,53 @@
                   " to SQL statement (query)");
     }
 
-    std::cout << "[XX] query prepared, executing" << std::endl;
     int result = sqlite3_step(query);
 
     sqlite3_reset(query);
 
     if (result == SQLITE_DONE) {
-        return DataSrc::T_SUCCESS;
-    } else {
-        std::cout << "[XX] sqlite3 add_rr error: " << result << std::endl;;
-        std::cout << "[XX] " << sqlite3_errmsg(dbparameters->db_) << std::endl;
-
-        return DataSrc::T_DB_ERROR;
-    }
-}
-
-DataSrc::TransactionResult
+        return DataSrc::W_SUCCESS;
+    } else {
+        return DataSrc::W_DB_ERROR;
+    }
+}
+
+DataSrc::WriteResult
 Sqlite3DataSrc::replaceZone(DataSrcTransaction& transaction,
                             const isc::dns::RRsetList& rrsets)
 {
     if (transaction.getState() != DataSrcTransaction::RUNNING) {
-        return DataSrc::T_ERROR;
+        return DataSrc::W_ERROR;
     }
 
     int zone_id = transaction.getData()->get("zone_id")->intValue();
 
-    DataSrc::TransactionResult result = delAll(zone_id);
-    if (result != DataSrc::T_SUCCESS) {
+    DataSrc::WriteResult result = delAll(zone_id);
+    if (result != DataSrc::W_SUCCESS) {
         return result;
     }
 
     RRsetList::const_iterator it = rrsets.begin();
     while (it != rrsets.end()) {
         result = addRRset(transaction, *it);
-        if (result != DataSrc::T_SUCCESS) {
+        if (result != DataSrc::W_SUCCESS) {
             return result;
         }
     }
-    return DataSrc::T_SUCCESS;
-}
-
-DataSrc::TransactionResult
+    return DataSrc::W_SUCCESS;
+}
+
+DataSrc::WriteResult
 Sqlite3DataSrc::delZone(DataSrcTransaction& transaction)
 {
     if (transaction.getState() != DataSrcTransaction::RUNNING) {
-        return DataSrc::T_ERROR;
+        return DataSrc::W_ERROR;
     }
 
     int zone_id = transaction.getData()->get("zone_id")->intValue();
 
-    DataSrc::TransactionResult result = delAll(zone_id);
-    if (result != DataSrc::T_SUCCESS) {
+    DataSrc::WriteResult result = delAll(zone_id);
+    if (result != DataSrc::W_SUCCESS) {
         return result;
     }
 
@@ -1140,36 +1124,30 @@
     sqlite3_reset(query);
 
     if (q_result == SQLITE_DONE) {
-        return DataSrc::T_SUCCESS;
-    } else {
-        std::cout << "[XX] sqlite3 del zone error: " << result << std::endl;;
-        std::cout << "[XX] " << sqlite3_errmsg(dbparameters->db_) << std::endl;
-
-        return DataSrc::T_DB_ERROR;
-    }
-}
-
-DataSrc::TransactionResult
+        return DataSrc::W_SUCCESS;
+    } else {
+        return DataSrc::W_DB_ERROR;
+    }
+}
+
+DataSrc::WriteResult
 Sqlite3DataSrc::delRRset(DataSrcTransaction& transaction,
                          isc::dns::ConstRRsetPtr rrset)
 {
     if (transaction.getState() != DataSrcTransaction::RUNNING) {
-        return DataSrc::T_ERROR;
-    }
-
-    std::cout << "[XX] delRR at sqlite3" << std::endl;
+        return DataSrc::W_ERROR;
+    }
+
     int zone_id = transaction.getData()->get("zone_id")->intValue();
     
-    std::cout << "[XX] zone id for: " << zone_id << std::endl;
-
-    DataSrc::TransactionResult result = DataSrc::T_SUCCESS;
+    DataSrc::WriteResult result = DataSrc::W_SUCCESS;
 
     if (rrset->getRdataCount() > 0) {
         RdataIteratorPtr rdp = rrset->getRdataIterator();
         rdp->first();
         do {
             result = delRR(zone_id, rrset->getName(), rrset->getType(), rdp->getCurrent());
-            if (result != DataSrc::T_SUCCESS) {
+            if (result != DataSrc::W_SUCCESS) {
                 return result;
             } else {
                 rdp->next();

Modified: branches/trac232/src/lib/datasrc/sqlite3_datasrc.h
==============================================================================
--- branches/trac232/src/lib/datasrc/sqlite3_datasrc.h (original)
+++ branches/trac232/src/lib/datasrc/sqlite3_datasrc.h Thu Sep  9 14:06:43 2010
@@ -107,32 +107,32 @@
 
     // write access
 
-    TransactionResult startTransaction(DataSrcTransaction& transaction);
-    TransactionResult commitTransaction(DataSrcTransaction& transaction);
-    TransactionResult rollbackTransaction(DataSrcTransaction& transaction);
+    WriteResult startTransaction(DataSrcTransaction& transaction);
+    WriteResult commitTransaction(DataSrcTransaction& transaction);
+    WriteResult rollbackTransaction(DataSrcTransaction& transaction);
     
-    TransactionResult addRRset(DataSrcTransaction& transaction,
+    WriteResult addRRset(DataSrcTransaction& transaction,
                                isc::dns::ConstRRsetPtr rrset);
-    TransactionResult delRRset(DataSrcTransaction& transaction,
+    WriteResult delRRset(DataSrcTransaction& transaction,
                                isc::dns::ConstRRsetPtr rrset);
-    TransactionResult replaceZone(DataSrcTransaction& transaction,
+    WriteResult replaceZone(DataSrcTransaction& transaction,
                                            const isc::dns::RRsetList& rrset_list);
-    TransactionResult delZone(DataSrcTransaction& transaction);
+    WriteResult delZone(DataSrcTransaction& transaction);
 
 private:
-    DataSrc::TransactionResult addRR(int zone_id,
+    DataSrc::WriteResult addRR(int zone_id,
                           const isc::dns::Name& name,
                           const isc::dns::RRType& rrtype,
                           const isc::dns::RRTTL& rrttl,
                           const isc::dns::rdata::Rdata& rdata);
-    DataSrc::TransactionResult delRR(int zone_id,
+    DataSrc::WriteResult delRR(int zone_id,
                                      const isc::dns::Name& name,
                                      const isc::dns::RRType& rrtype);
-    DataSrc::TransactionResult delRR(int zone_id,
+    DataSrc::WriteResult delRR(int zone_id,
                                      const isc::dns::Name& name,
                                      const isc::dns::RRType& rrtype,
                                      const isc::dns::rdata::Rdata& rdata);
-    DataSrc::TransactionResult delAll(int zone_id);
+    DataSrc::WriteResult delAll(int zone_id);
 
 private:
     enum Mode {

Modified: branches/trac232/src/lib/datasrc/tests/sqlite3_unittest.cc
==============================================================================
--- branches/trac232/src/lib/datasrc/tests/sqlite3_unittest.cc (original)
+++ branches/trac232/src/lib/datasrc/tests/sqlite3_unittest.cc Thu Sep  9 14:06:43 2010
@@ -974,43 +974,43 @@
     EXPECT_EQ(DataSrcTransaction::INIT, transaction.getState());
     
     // start doing things without calling startTransaction()
-    EXPECT_EQ(DataSrc::T_ERROR,
+    EXPECT_EQ(DataSrc::W_ERROR,
               data_source.commitTransaction(transaction));
-    EXPECT_EQ(DataSrc::T_ERROR,
+    EXPECT_EQ(DataSrc::W_ERROR,
               data_source.rollbackTransaction(transaction));
-    EXPECT_EQ(DataSrc::T_ERROR,
+    EXPECT_EQ(DataSrc::W_ERROR,
               data_source.addRRset(transaction, new_rrset));
     RRsetIterator rrset_it = RRsetIterator();
     RRsetList empty_list;
-    EXPECT_EQ(DataSrc::T_ERROR,
+    EXPECT_EQ(DataSrc::W_ERROR,
               data_source.replaceZone(transaction, empty_list));
-    EXPECT_EQ(DataSrc::T_ERROR,
+    EXPECT_EQ(DataSrc::W_ERROR,
               data_source.delZone(transaction));
-    EXPECT_EQ(DataSrc::T_ERROR,
+    EXPECT_EQ(DataSrc::W_ERROR,
               data_source.delRRset(transaction, new_rrset));
     // need rrsetit for doIXFR (but doIXFR should probably be moved up to datasource itself)
 
-    EXPECT_EQ(DataSrc::T_SUCCESS,
+    EXPECT_EQ(DataSrc::W_SUCCESS,
               data_source.startTransaction(transaction));
     EXPECT_EQ(DataSrcTransaction::RUNNING, transaction.getState());
-    EXPECT_EQ(DataSrc::T_ERROR,
+    EXPECT_EQ(DataSrc::W_ERROR,
               data_source.startTransaction(transaction));
-    EXPECT_EQ(DataSrc::T_SUCCESS,
+    EXPECT_EQ(DataSrc::W_SUCCESS,
               data_source.rollbackTransaction(transaction));
     EXPECT_EQ(DataSrcTransaction::DONE, transaction.getState());
 
     // state now 'done', everything should error again
-    EXPECT_EQ(DataSrc::T_ERROR,
+    EXPECT_EQ(DataSrc::W_ERROR,
               data_source.commitTransaction(transaction));
-    EXPECT_EQ(DataSrc::T_ERROR,
+    EXPECT_EQ(DataSrc::W_ERROR,
               data_source.rollbackTransaction(transaction));
-    EXPECT_EQ(DataSrc::T_ERROR,
+    EXPECT_EQ(DataSrc::W_ERROR,
               data_source.addRRset(transaction, new_rrset));
-    EXPECT_EQ(DataSrc::T_ERROR,
+    EXPECT_EQ(DataSrc::W_ERROR,
               data_source.replaceZone(transaction, empty_list));
-    EXPECT_EQ(DataSrc::T_ERROR,
+    EXPECT_EQ(DataSrc::W_ERROR,
               data_source.delZone(transaction));
-    EXPECT_EQ(DataSrc::T_ERROR,
+    EXPECT_EQ(DataSrc::W_ERROR,
               data_source.delRRset(transaction, new_rrset));
 }
 
@@ -1028,11 +1028,11 @@
 
     // add it, but roll back
     DataSrcTransaction transaction1(&data_source, zone_name, RRClass::IN());
-    EXPECT_EQ(DataSrc::T_SUCCESS,
+    EXPECT_EQ(DataSrc::W_SUCCESS,
               data_source.startTransaction(transaction1));
-    EXPECT_EQ(DataSrc::T_SUCCESS,
+    EXPECT_EQ(DataSrc::W_SUCCESS,
               data_source.addRRset(transaction1, new_rrset));
-    EXPECT_EQ(DataSrc::T_SUCCESS,
+    EXPECT_EQ(DataSrc::W_SUCCESS,
               data_source.rollbackTransaction(transaction1));
     
     // check whether our new record does not exist
@@ -1043,11 +1043,11 @@
 
     // add it with commit
     DataSrcTransaction transaction2(&data_source, zone_name, RRClass::IN());
-    EXPECT_EQ(DataSrc::T_SUCCESS,
+    EXPECT_EQ(DataSrc::W_SUCCESS,
               data_source.startTransaction(transaction2));
-    EXPECT_EQ(DataSrc::T_SUCCESS,
+    EXPECT_EQ(DataSrc::W_SUCCESS,
               data_source.addRRset(transaction2, new_rrset));
-    EXPECT_EQ(DataSrc::T_SUCCESS,
+    EXPECT_EQ(DataSrc::W_SUCCESS,
               data_source.commitTransaction(transaction2));
 
     // now check whether it does exist
@@ -1073,11 +1073,11 @@
 
     // add it, but roll back
     DataSrcTransaction transaction1(&data_source, zone_name, RRClass::IN());
-    EXPECT_EQ(DataSrc::T_SUCCESS,
+    EXPECT_EQ(DataSrc::W_SUCCESS,
               data_source.startTransaction(transaction1));
-    EXPECT_EQ(DataSrc::T_SUCCESS,
+    EXPECT_EQ(DataSrc::W_SUCCESS,
               data_source.delRRset(transaction1, new_rrset));
-    EXPECT_EQ(DataSrc::T_SUCCESS,
+    EXPECT_EQ(DataSrc::W_SUCCESS,
               data_source.rollbackTransaction(transaction1));
 
     // check whether our new record still exists
@@ -1089,11 +1089,11 @@
 
     // add it, and commit
     DataSrcTransaction transaction2(&data_source, zone_name, RRClass::IN());
-    EXPECT_EQ(DataSrc::T_SUCCESS,
+    EXPECT_EQ(DataSrc::W_SUCCESS,
               data_source.startTransaction(transaction2));
-    EXPECT_EQ(DataSrc::T_SUCCESS,
+    EXPECT_EQ(DataSrc::W_SUCCESS,
               data_source.delRRset(transaction2, new_rrset));
-    EXPECT_EQ(DataSrc::T_SUCCESS,
+    EXPECT_EQ(DataSrc::W_SUCCESS,
               data_source.commitTransaction(transaction2));
 
     // now check whether it does not exist now
@@ -1122,9 +1122,9 @@
 
     // Replace them, roll back
     DataSrcTransaction transaction1(&data_source, zone_name, RRClass::IN());
-    ASSERT_EQ(DataSrc::T_SUCCESS, data_source.startTransaction(transaction1));
-    ASSERT_EQ(DataSrc::T_SUCCESS, data_source.replaceZone(transaction1, empty_list));
-    ASSERT_EQ(DataSrc::T_SUCCESS, data_source.rollbackTransaction(transaction1));
+    ASSERT_EQ(DataSrc::W_SUCCESS, data_source.startTransaction(transaction1));
+    ASSERT_EQ(DataSrc::W_SUCCESS, data_source.replaceZone(transaction1, empty_list));
+    ASSERT_EQ(DataSrc::W_SUCCESS, data_source.rollbackTransaction(transaction1));
 
     // check whether it still exists
     EXPECT_EQ(DataSrc::SUCCESS,
@@ -1135,9 +1135,9 @@
 
     // Replace them, commit
     DataSrcTransaction transaction2(&data_source, zone_name, RRClass::IN());
-    ASSERT_EQ(DataSrc::T_SUCCESS, data_source.startTransaction(transaction2));
-    ASSERT_EQ(DataSrc::T_SUCCESS, data_source.replaceZone(transaction2, empty_list));
-    ASSERT_EQ(DataSrc::T_SUCCESS, data_source.commitTransaction(transaction2));
+    ASSERT_EQ(DataSrc::W_SUCCESS, data_source.startTransaction(transaction2));
+    ASSERT_EQ(DataSrc::W_SUCCESS, data_source.replaceZone(transaction2, empty_list));
+    ASSERT_EQ(DataSrc::W_SUCCESS, data_source.commitTransaction(transaction2));
     
     // check whether it's gone now
     EXPECT_EQ(DataSrc::SUCCESS,
@@ -1165,9 +1165,9 @@
 
     // Delete zone, roll back
     DataSrcTransaction transaction1(&data_source, zone_name, RRClass::IN());
-    ASSERT_EQ(DataSrc::T_SUCCESS, data_source.startTransaction(transaction1));
-    ASSERT_EQ(DataSrc::T_SUCCESS, data_source.delZone(transaction1));
-    ASSERT_EQ(DataSrc::T_SUCCESS, data_source.rollbackTransaction(transaction1));
+    ASSERT_EQ(DataSrc::W_SUCCESS, data_source.startTransaction(transaction1));
+    ASSERT_EQ(DataSrc::W_SUCCESS, data_source.delZone(transaction1));
+    ASSERT_EQ(DataSrc::W_SUCCESS, data_source.rollbackTransaction(transaction1));
 
     // check whether it still exists
     EXPECT_EQ(DataSrc::SUCCESS,
@@ -1178,9 +1178,9 @@
 
     // Delete zone, commit
     DataSrcTransaction transaction2(&data_source, zone_name, RRClass::IN());
-    ASSERT_EQ(DataSrc::T_SUCCESS, data_source.startTransaction(transaction2));
-    ASSERT_EQ(DataSrc::T_SUCCESS, data_source.delZone(transaction2));
-    ASSERT_EQ(DataSrc::T_SUCCESS, data_source.commitTransaction(transaction2));
+    ASSERT_EQ(DataSrc::W_SUCCESS, data_source.startTransaction(transaction2));
+    ASSERT_EQ(DataSrc::W_SUCCESS, data_source.delZone(transaction2));
+    ASSERT_EQ(DataSrc::W_SUCCESS, data_source.commitTransaction(transaction2));
     
     // check whether it's gone now
     EXPECT_EQ(DataSrc::SUCCESS,
@@ -1191,7 +1191,7 @@
 
     // try to start a transaction for the zone that is now gone
     DataSrcTransaction transaction3(&data_source, zone_name, RRClass::IN());
-    EXPECT_EQ(DataSrc::T_NO_SUCH_ZONE, data_source.startTransaction(transaction3));
+    EXPECT_EQ(DataSrc::W_NO_SUCH_ZONE, data_source.startTransaction(transaction3));
     
 }
 
@@ -1420,13 +1420,13 @@
 
     // do IXFR, roll back
     DataSrcTransaction transaction1(&data_source, zone_name, RRClass::IN());
-    ASSERT_EQ(DataSrc::T_SUCCESS, data_source.startTransaction(transaction1));
+    ASSERT_EQ(DataSrc::W_SUCCESS, data_source.startTransaction(transaction1));
     EXPECT_EQ(DataSrc::SUCCESS,
               data_source.doIXFR(transaction1,
                                  ixfr_msg.beginSection(Section::ANSWER()),
                                  ixfr_msg.endSection(Section::ANSWER()))
     );
-    ASSERT_EQ(DataSrc::T_SUCCESS, data_source.rollbackTransaction(transaction1));
+    ASSERT_EQ(DataSrc::W_SUCCESS, data_source.rollbackTransaction(transaction1));
 
     checkSingleRRset(data_source,
                      "www.example.com. 3600 IN A 192.0.2.1\n",
@@ -1434,13 +1434,13 @@
 
     // do IXFR, commit
     DataSrcTransaction transaction2(&data_source, zone_name, RRClass::IN());
-    ASSERT_EQ(DataSrc::T_SUCCESS, data_source.startTransaction(transaction2));
+    ASSERT_EQ(DataSrc::W_SUCCESS, data_source.startTransaction(transaction2));
     EXPECT_EQ(DataSrc::SUCCESS,
               data_source.doIXFR(transaction2,
                                  ixfr_msg.beginSection(Section::ANSWER()),
                                  ixfr_msg.endSection(Section::ANSWER()))
     );
-    ASSERT_EQ(DataSrc::T_SUCCESS, data_source.commitTransaction(transaction2));
+    ASSERT_EQ(DataSrc::W_SUCCESS, data_source.commitTransaction(transaction2));
 
     checkSingleRRset(data_source,
                      "www.example.com. 3600 IN A 192.0.2.3\n",
@@ -1448,13 +1448,13 @@
 
     // same IXFR should now fail, because the start serial doesn't match
     DataSrcTransaction transaction3(&data_source, zone_name, RRClass::IN());
-    ASSERT_EQ(DataSrc::T_SUCCESS, data_source.startTransaction(transaction3));
+    ASSERT_EQ(DataSrc::W_SUCCESS, data_source.startTransaction(transaction3));
     EXPECT_EQ(DataSrc::ERROR,
               data_source.doIXFR(transaction3,
                                  ixfr_msg.beginSection(Section::ANSWER()),
                                  ixfr_msg.endSection(Section::ANSWER()))
     );
-    ASSERT_EQ(DataSrc::T_SUCCESS, data_source.rollbackTransaction(transaction3));
+    ASSERT_EQ(DataSrc::W_SUCCESS, data_source.rollbackTransaction(transaction3));
 }
 
 TEST_F(Sqlite3DataSourceTest, ixfr_bad) {
@@ -1470,13 +1470,13 @@
     ASSERT_EQ(0, ixfrFromFile(ixfr_msg, TEST_DATA_DIR
               "/ixfr_bad_remove_nonexisting.rrs"));
     DataSrcTransaction transaction1(&data_source, zone_name, RRClass::IN());
-    ASSERT_EQ(DataSrc::T_SUCCESS, data_source.startTransaction(transaction1));
+    ASSERT_EQ(DataSrc::W_SUCCESS, data_source.startTransaction(transaction1));
     EXPECT_EQ(DataSrc::ERROR,
               data_source.doIXFR(transaction1,
                                  ixfr_msg.beginSection(Section::ANSWER()),
                                  ixfr_msg.endSection(Section::ANSWER()))
     );
-    ASSERT_EQ(DataSrc::T_SUCCESS, data_source.rollbackTransaction(transaction1));
+    ASSERT_EQ(DataSrc::W_SUCCESS, data_source.rollbackTransaction(transaction1));
     
 }
 
@@ -1491,7 +1491,7 @@
     Message update_msg(Message::RENDER);
 
     DataSrcTransaction transaction1(&data_source, zone_name, RRClass::IN());
-    ASSERT_EQ(DataSrc::T_SUCCESS, data_source.startTransaction(transaction1));
+    ASSERT_EQ(DataSrc::W_SUCCESS, data_source.startTransaction(transaction1));
     update_msg.setQid(1234);
 
     // bad qtype
@@ -1539,7 +1539,7 @@
     ASSERT_EQ(0, updateFromFile(update_msg, TEST_DATA_DIR "/update1.packet"));
     ASSERT_EQ(DataSrc::SUCCESS, data_source.doUpdate(transaction1, update_msg));
 
-    ASSERT_EQ(DataSrc::T_SUCCESS, data_source.commitTransaction(transaction1));
+    ASSERT_EQ(DataSrc::W_SUCCESS, data_source.commitTransaction(transaction1));
     checkSingleRRset(data_source,
                      "",
                      Name("ip46.example.com"), RRClass::IN(), RRType::A());
@@ -1573,7 +1573,7 @@
     Message update_msg(Message::RENDER);
 
     DataSrcTransaction transaction1(&data_source, zone_name, RRClass::CH());
-    ASSERT_EQ(DataSrc::T_SUCCESS, data_source.startTransaction(transaction1));
+    ASSERT_EQ(DataSrc::W_SUCCESS, data_source.startTransaction(transaction1));
     update_msg.setQid(1234);
 
     update_msg.setOpcode(isc::dns::Opcode::UPDATE());
@@ -1594,7 +1594,7 @@
     Message update_msg(Message::RENDER);
 
     DataSrcTransaction transaction1(&data_source, zone_name, RRClass::IN());
-    ASSERT_EQ(DataSrc::T_SUCCESS, data_source.startTransaction(transaction1));
+    ASSERT_EQ(DataSrc::W_SUCCESS, data_source.startTransaction(transaction1));
 
     ASSERT_EQ(0, updateFromFile(update_msg, TEST_DATA_DIR "/update2.packet"));
     ASSERT_EQ(DataSrc::ERROR, data_source.doUpdate(transaction1, update_msg));
@@ -1629,7 +1629,7 @@
     Message update_msg(Message::RENDER);
 
     DataSrcTransaction transaction1(&data_source, zone_name, RRClass::IN());
-    ASSERT_EQ(DataSrc::T_SUCCESS, data_source.startTransaction(transaction1));
+    ASSERT_EQ(DataSrc::W_SUCCESS, data_source.startTransaction(transaction1));
 
     ASSERT_EQ(0, updateFromFile(update_msg, TEST_DATA_DIR "/update7.packet"));
     ASSERT_EQ(DataSrc::ERROR, data_source.doUpdate(transaction1, update_msg));

Modified: branches/trac232/src/lib/dns/python/rrclass_python.cc
==============================================================================
--- branches/trac232/src/lib/dns/python/rrclass_python.cc (original)
+++ branches/trac232/src/lib/dns/python/rrclass_python.cc Thu Sep  9 14:06:43 2010
@@ -165,7 +165,9 @@
     // (the way to do exceptions is to set PyErr and return -1)
     try {
         if (PyArg_ParseTuple(args, "s", &s)) {
-            self->rrclass = new RRClass(s);
+            std::cout << "[XX] CREATING RRCLASS '" << s << "'" << std::endl;
+                self->rrclass = new RRClass(s);
+            std::cout << "[XX] CREATED RRCLASS" << std::endl;
             return (0);
         } else if (PyArg_ParseTuple(args, "I", &i)) {
             PyErr_Clear();
@@ -188,8 +190,9 @@
         }
     // Incomplete is never thrown, a type error would have already been raised
     //when we try to read the 2 bytes above
-    } catch (const InvalidRRClass& ic) {
+    } catch (const isc::Exception& ic) {
         PyErr_Clear();
+        std::cout << "[XX] ERROR CREATING" << std::endl;
         PyErr_SetString(po_InvalidRRClass, ic.what());
         return (-1);
     }




More information about the bind10-changes mailing list