On 21.6.2016 16:33, Martin Basti wrote:



On 21.06.2016 16:24, Jan Cholasta wrote:
On 21.6.2016 15:11, Jan Cholasta wrote:
On 16.6.2016 09:12, David Kupka wrote:
On 06/15/2016 08:15 PM, Petr Vobornik wrote:
On 06/15/2016 02:36 PM, David Kupka wrote:
Hello!
Schema caching for thin client is available here:

https://github.com/dkupka/freeipa/commits/schema_cache

Comments and reviews welcome.

Enjoy!

Not doing proper review. I'll test by using it. But:

1. lint fails

Pylint is running, please wait ...
************* Module ipaclient.remote_plugins.schema_cache
ipaclient/remote_plugins/schema_cache.py:283: [W1612(unicode-builtin),
_refresh_schema] unicode built-in referenced)
Makefile:137: recipe for target 'lint' failed
make: *** [lint] Error 1

I.e, you miss:

  import six

  if six.PY3:
      unicode = str


Thanks for the catch, fixed version force-pushed.

ACK on the server part, i.e. the first 3 commits:

0cd99a7 schema: Cache schema in api instance
b9a58c4 schema: Add known_fingerprints option to schema command
f6f4e53 schema: Add fingerprint and TTL

Pushed to master: d0e708cba240bd92a4467495caeb654eff6ae69a

ACK on this commit:

7fc7941 schema: return fingerprint as unicode text

Pushed to master: a5f48476adfd9971a1756bd5ad3cb7c9e2afef22


Is Okay to keep just last 4 bytes from SHA1, how big is possibility for
conflict?

2.3283064365386963e-10

Git uses 3.5 bytes for short commit IDs by default. So far, there are only 4 conflicts in freeipa git:

$ git log --oneline | grep -E '^[0-9a-z]{8,}'
c6c84fae Py3: replace tab with space
b194b850 Fix remove while iterating in suppress_netgroup_memberof.
58a3b1d0 85: Added ReadOnly._lock() method to make class easier to use; updated subclasses and unit tests bc524460 Fix build issues by combining patches submitted by Michael Gregg and Karl MacMillan Remove #!/usr/bin/python from many files to quiet rpmlint

So IMO 4 bytes is good enough for our API schema fingerprints.

Even if 4 bytes turn out not to be good enough, we can increase the length at any time without breaking clients, because clients don't care about fingerprint specifics.

--
Jan Cholasta

--
Manage your subscription for the Freeipa-devel mailing list:
https://www.redhat.com/mailman/listinfo/freeipa-devel
Contribute to FreeIPA: http://www.freeipa.org/page/Contribute/Code

Reply via email to