-
Notifications
You must be signed in to change notification settings - Fork 876
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Missing PFCOUNT #925
Comments
@chakaz I think it's a perfect starter project for you :)
It's not a small task but I think you gonna enjoy it :) |
This looks like an exciting task :) I do have a question re/ (2) above:
(source: https://redis.io/commands/pfcount/) So my question is: should we indeed make this a type different from string? If we'll keep it as a string:
If we'll set a distinct type:
wdyt? Are there some considerations which I I've missed? |
Oh, it was my mistake, i just assumed it's a different type. If not, then
indeed it's even simpler!
…On Fri, Apr 21, 2023, 08:04 Chaka ***@***.***> wrote:
This looks like an exciting task :)
I do have a question re/ (2) above:
@adiholden <https://github.com/adiholden>, Roman mentioned that I should
add HLL as a distinct sub-type (I assume that via assigning a unique type_
ID, like we do for string, json, etc). *However*, it seems like Redis
treats HLL as plain strings without explicit distinction:
The HyperLogLog, being a Redis string, can be retrieved with GET
<https://redis.io/commands/get> and restored with SET
<https://redis.io/commands/set>. Calling PFADD
<https://redis.io/commands/pfadd>, PFCOUNT or PFMERGE
<https://redis.io/commands/pfmerge> commands with a corrupted HyperLogLog
is never a problem, it may return random values but does not affect the
stability of the server. Most of the times when corrupting a sparse
representation, the server recognizes the corruption and returns an error.
(source: https://redis.io/commands/pfcount/)
So my question is: should we indeed make this a type different from string?
If we'll keep it as a string:
- We get replication, serialization, etc for free (implementation-wise)
- We remain compatible with Redis (although I imagine not many users
explicitly set the string value of HLL)
If we'll set a distinct type:
- We'll make it easier to track errors, like when a user tries to use
an HLL as a string or vice versa (although that's supposedly supported?)
wdyt? Are there some considerations which I I've missed?
—
Reply to this email directly, view it on GitHub
<#925 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AA4BFCHYXL6DDBYPH7PIRJ3XCIPN5ANCNFSM6AAAAAAVXLRPTU>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
Here's where I'm currently at: |
@chakaz , well you are right. We should not mix The only possible solution I see is to peel the API even further. That means we will need to reimplement all the Luckily we still have low-level that we can reuse like |
Sure, it sounds very much reasonable! I'm happy I asked, as I didn't realize this was a "deal breaker". |
I will say that, should we want to reduce complexity and "launch" faster, we could (at least initially?) only support the dense encoding. It has clear advantages in our case, which is that the size is fixed and thus the integration is much easier. |
Sounds reasonable! |
Sorry, which option sounds reasonable? :) |
The faster one with dense encoding 😁
…On Mon, Apr 24, 2023, 22:20 Chaka ***@***.***> wrote:
Sorry, which option sounds reasonable? :)
Only supporting dense encoding, or doing the deeper integration?
—
Reply to this email directly, view it on GitHub
<#925 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AA4BFCFSU5WX5LXJPIPLYPDXC3G6FANCNFSM6AAAAAAVXLRPTU>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
With #1152 merged, we still need to add:
I'm on it :) |
Documentation is in another repo, you know that, right?
…On Sun, Apr 30, 2023, 12:02 Chaka ***@***.***> wrote:
With #1152 <#1152> merged,
we still need to add:
1. Support for PFMERGE
2. Documentation
I'm on it :)
—
Reply to this email directly, view it on GitHub
<#925 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AA4BFCDROFM3ZGHJ53Z4WPDXDYTAVANCNFSM6AAAAAAVXLRPTU>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
Yes :) |
FYI, Dragonfly v1.3.0 and later supports this API. |
Describe the bug
Missing PFCOUNT command on mastodon installation
To Reproduce
Steps to reproduce the behavior:
Missing PFCOUNT
Expected behavior
Web loaded, and run successfully.
Environment (please complete the following information):
Log
The text was updated successfully, but these errors were encountered: