Greetings,
Revision 941 / e7bff46da54eab7c01f059eb1edf56750da55efc is a flag day
both for those using pkg, and those running a depot.
For users, the immediate change is that search now defaults to remote
search instead of local search. Your local search indexes will be
rebuilt the next time a package is installed, an image-update happens,
or rebuild-index is run manually. All existing styles of queries should
continue to function as they have previously. Please let me know if you
notice any regressions. In addition, more complex queries are possible.
It is possible to construct boolean queries using AND and OR. Structured
searches using syntax similar to dtrace are possible using the following
format, pkg_name:action_type:key:token. Examples of action types are
file and depend. Examples of key are basename and path. Token is what
has been previously searched on. Lastly, it's possible to get a list of
packages instead of a list action infomation by placing '<' and '>'
around a query or part of a query. More documentation and explanation
will be coming, but here is one example which demonstrates all of these
new features. Until depots are updated to take advantage of this new
search capability (see below), complex remote queries will report that
the server doesn't support search.
pkg search '(<depend::> AND </usr/bin>) OR <*107*:file:: AND path:*usr*>'
That search will return a list of packages which either have a depend
action in them and also match the token '/usr/bin' or have 107 in their
version number and have a file action which has a path key which matches
*usr*.
I promise, more helpful examples and documentation will be appearing soon.
For those running their own depots, the on disk search format has
changed. This means that before starting the new depot, it's necessary
to remove the old index directory, which is present in the root
directory for your depot. Doing this will allow the new depot to rebuild
its indexes when it first starts up. Note that it's currently necessary
to start the depot without the readonly command flag for the indexes to
be rebuilt. An alternative is to remove the directory, start a depot
using the --refresh-index option. When it's finished, restart the
readonly depots. The key thing to ensure is that more than one process
is never trying to reindex the directory at a time.
If there are any questions, please let me know.
Brock
_______________________________________________
pkg-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/pkg-discuss