On Mon 28 Jan 2008 at 04:02PM, Steve Peng wrote:
> 
> The full nightly build was built successfully and testings look good as 
> well.  I have posted the new incremental webrev under
> 
> http://cr.opensolaris.org/~stevep/6351623-2
> 
> The previous one has been moved under 6351623-1.  Please take a look at 
> and if you can get back to me with any new comment
> by cob Wed then that will great.

I just wanted to followup and confirm: have you done stress testing with
'svcadm _smf_repository_switch' in a tight loop?  Tested with zones?

A couple of other minor stylistic comments; none should impact your testing.


 1120 + * Copying the repository.  If the sw_back flag is not set, we are

 "Copying"  -> "Copy"

 1161 +                configd_critical("Backend copy failed: openning %s: 
%s\n",

 "openning" -> "opening"

     1186 +                configd_critical("Backend copy failed: copy bytes 
mismatch\n");

Message is a little vague.

     1237 +        if (r == SQLITE_OK && (info.rs_result !=
     1238 +            REP_PROTOCOL_FAIL_NOT_FOUND && val ==
     1239 +            BACKEND_SCHEMA_VERSION))

The parens here are I think unneeded, and actually are confusing.
Code might be a lot more readable as:

        if (r == SQLITE_OK &&
            info.rs_result != REP_PROTOCOL_FAIL_NOT_FOUND &&
            val == BACKEND_SCHEMA_VERSION)



     1246 + * Backend switch entry point and is called to perform
     1247 + * the backend copy and switch from src to dst.  First,
     1248 + * it blocks all other clients from accessing the repository
     1249 + * by calling backend_lock to lock the repository.  Upon
     1250 + * successful lock, coping and switching of the repository
     1251 + * are performed.

1246 is sort of a run-on sentence...

"coping" -> "copying"

Also, please format to 76 columns or so.  Ditto at line 1275.



     1299                       configd_critical(
     1300 +                            "Backend switch fails: integrity check 
%s: %s\n",
     1301 +                            dst, errp);

  "fails" --> "failed", same at 1305.


     2154 +         * If the system crashed during a backend switch, there might
     2155 +         * be a leftover transient database which containing useful
     2156 +         * information which can be used for recovery.

"which containing" --> "which contains"

repcache_protocol.h:

      359 + *      When the flag is set to fast, the operation moves the main 
repository
      360 + *      from the default location (/etc/svc) to the tmpfs location
      361 + *      (/etc/svc/volatile).  When it is set to perm, the operation 
performs
      362 + *      the reversed switch.

Suggest: "When the flag is set to 'fast', move the main repository
                                  ^    ^  ^^^^^^^^^^^^^^^^^^^
from the default location (/etc/svc) to the tmpfs location (/etc/svc/volatile).
When it is set to 'perm', the switch is reversed."
                  ^    ^      ^^^^^^^^^^^^^^^^^^^

Otherwise, looks good.  Thanks for tackling this problem.

        -dp

-- 
Daniel Price - Solaris Kernel Engineering - dp at eng.sun.com - blogs.sun.com/dp

Reply via email to