`<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><br><div><div>On Aug 12, 2014, at 4:38 PM, Scott LeFevre <<a href="mailto:slefevre@indy.rr.com">slefevre@indy.rr.com</a>> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite">
<meta http-equiv="Content-Type" content="text/html; CHARSET=UTF-8">
<meta name="GENERATOR" content="GtkHTML/3.32.2">
<div>
This may help (or may not). I presume this will work on OmniOS as it works on other Illumos variants.<br></div></blockquote><div><br></div><div>NFS logging is a perfect way to destroy performance. It is very serial and will not scale well.</div><div>One important Sun customer had the misfortune of wiring it into their app and when they had</div><div>their "big event" and the systems were in production, performance was 15% of what they </div><div>expected. The only solution was to disable logging, but they required it for their app. Needless</div><div>to say, the app was rewritten, but they had lots of pain during the "big event"</div><div> -- richard</div><br><blockquote type="cite"><div>
<br>
You can enable logging on an nfs share by adding 'log' to the sharenfs property of a zfs file system. For example, on one of my systems I have
<pre>$ zfs get sharenfs pool0/media
NAME PROPERTY VALUE SOURCE
pool0/example sharenfs sec=sys,log,<a href="mailto:rw=@10.1.1.0">rw=@10.1.1.0</a>/24:... local
</pre>
<br>
After this change, svc:/network/nfs/log:default is enabled automatically and a log file 'nfslog' (and other related files) can be found int /var/nfs. I don't know if this records the locks but it will at least show who/what is accessing files under an nfs share. BTW, the nfs/log service collects information for a bit before it drops it into the nfslog file.<br>
<br>
<table cellspacing="0" cellpadding="0" width="100%">
<tbody><tr>
<td>
-- <br>
Scott LeFevre<br>
317-696-1010 <br>
<br>
</td>
</tr>
</tbody></table>
On Mon, 2014-08-11 at 23:49 -0400, Chris Siebenmann wrote:
<blockquote type="CITE">
<pre>Here's a question: does anyone know of a good way to get detailed NFS
lock information on an OmniOS NFS server, especially information like
which client has a lock on a particular file?
'mdb -k' can be used to extract basic lock information, like the full
paths of all files that have active locks against them[*], but my old
Solaris mdb commands for getting more detailed NFS information don't
work in the OmniOS mdb any more.
Thanks in advance.
(I'll happily take pointers to where to look in the kernel implementation
to follow struct pointers by hand with mdb's ::print and so on. From what
I've found so far, I'm looking at usr/src/uts/common/klm to start with; is
this right?)
- cks
[*: via mdb's ::lminfo and '::walk lock_graph', see eg
<a href="http://utcc.utoronto.ca/~cks/space/blog/solaris/ListingFileLocks">http://utcc.utoronto.ca/~cks/space/blog/solaris/ListingFileLocks</a>
Solaris 10 also had ::nlm_lockson, which is still present in mdb
but doesn't seem to work any more, presumably because the actual
NFS locking implementation changed.
]
_______________________________________________
OmniOS-discuss mailing list
<a href="mailto:OmniOS-discuss@lists.omniti.com">OmniOS-discuss@lists.omniti.com</a>
<a href="http://lists.omniti.com/mailman/listinfo/omnios-discuss">http://lists.omniti.com/mailman/listinfo/omnios-discuss</a>
</pre>
</blockquote>
</div>
_______________________________________________<br>OmniOS-discuss mailing list<br><a href="mailto:OmniOS-discuss@lists.omniti.com">OmniOS-discuss@lists.omniti.com</a><br>http://lists.omniti.com/mailman/listinfo/omnios-discuss<br></blockquote></div><br></body></html>`