Re: [Freeipa-devel] [PATCH] Schema caching for thin client

2016-06-28 Thread Jan Cholasta

On 21.6.2016 16:49, Martin Basti wrote:



On 21.06.2016 16:51, Jan Cholasta wrote:

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.


Okay


ACK on the remaining patches:

ce74a12 schema: Caching on schema on client
bdd6ec2 env: Add 'server' variable to api.env

Pushed to master: a636842889f832e977df61dbeac4e1055e129c0f

--
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


Re: [Freeipa-devel] [PATCH] Schema caching for thin client

2016-06-21 Thread Martin Basti



On 21.06.2016 16:51, Jan Cholasta wrote:

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.



Okay

--
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


Re: [Freeipa-devel] [PATCH] Schema caching for thin client

2016-06-21 Thread Jan Cholasta

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


Re: [Freeipa-devel] [PATCH] Schema caching for thin client

2016-06-21 Thread Martin Basti



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?


Martin^2

--
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


Re: [Freeipa-devel] [PATCH] Schema caching for thin client

2016-06-21 Thread Jan Cholasta

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

--
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


Re: [Freeipa-devel] [PATCH] Schema caching for thin client

2016-06-16 Thread David Kupka

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.

--
David Kupka

--
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


Re: [Freeipa-devel] [PATCH] Schema caching for thin client

2016-06-15 Thread Petr Vobornik
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

-- 
Petr Vobornik

-- 
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


[Freeipa-devel] [PATCH] Schema caching for thin client

2016-06-15 Thread David Kupka

Hello!
Schema caching for thin client is available here:

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

Comments and reviews welcome.

Enjoy!
--
David Kupka

--
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