-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
Funnels reorganization, persons pagination, and conversion window support #4810
Funnels reorganization, persons pagination, and conversion window support #4810
Conversation
… cleanup via destroy() method
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Comment below + backend tests. Otherwise looks good
…ed funnel_persons and funnel_trends_persons into individual classes;
…com:PostHog/posthog into funnel-persons-pagination-conversion-window
@@ -79,6 +79,22 @@ def merge_people(self, people_to_merge: List["Person"]): | |||
# Has an index on properties -> email, built concurrently | |||
# See migration 0121 | |||
|
|||
@staticmethod | |||
def get_distinct_ids_and_email_by_ids(person_ids, team_id): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This seems to be the opposite of what it should be?
I.e., bulk querying uses the bulk API (which gains the advantage of querying in bulk), while the single query makes a call to the bulk end point with a list of one item.
https://docs.djangoproject.com/en/3.2/ref/models/querysets/#in-bulk - in_bulk
achieves this, I think.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This was a quick pass but I'll be refactoring with ejecting to SQL for best performance. Just trying to get it out the door quickly.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🚀
Changes
GenerateLocal
class to generate data for local developmentmicroseconds_from_days
to convert days to microsecondsconversion window
for funnelsGenerateLocal Usage
Open django shell with Clickhouse environment variables
You can also cleanup the data with but you'll need to drop the Clickhouse db manually.