... | @@ -648,7 +648,7 @@ There is a quasi-related issue https://gitlab.isc.org/isc-projects/kea/-/issues/ |
... | @@ -648,7 +648,7 @@ There is a quasi-related issue https://gitlab.isc.org/isc-projects/kea/-/issues/ |
|
|
|
|
|
## Task Breakdown
|
|
## Task Breakdown
|
|
|
|
|
|
The work breaks down into two parallel tracks: Query fulfillment and LeaseQueryListener implementation. They interface at the class, BulkLeaseQuery, should be stubbed early on. A preliminary task break down is shown below:
|
|
The work breaks down into two parallel tracks: Query fulfillment and LeaseQueryListener implementation. They interface at LeaseMgr query functions, and these should be stubbed early on. A preliminary task break down is shown below:
|
|
|
|
|
|
```
|
|
```
|
|
1. Query Fulfillment
|
|
1. Query Fulfillment
|
... | @@ -657,20 +657,17 @@ The work breaks down into two parallel tracks: Query fulfillment and LeaseQueryL |
... | @@ -657,20 +657,17 @@ The work breaks down into two parallel tracks: Query fulfillment and LeaseQueryL |
|
Several query wrapper functions need to be added to support the new queries
|
|
Several query wrapper functions need to be added to support the new queries
|
|
(e.g. queryLeasesByRemoteId6, queryLeasesByRelayId4, etc..) See #2571
|
|
(e.g. queryLeasesByRemoteId6, queryLeasesByRelayId4, etc..) See #2571
|
|
|
|
|
|
1.3 BulkLeaseQuery class(es) and interface (in LeaseQuery hook)
|
|
1.3 Memfile Lease Mgr
|
|
Need stubs for this pretty early on so Track 2 can keep moving.
|
|
|
|
|
|
|
|
1.4 Memfile Lease Mgr
|
|
|
|
a. New index(es) using predicate objects
|
|
a. New index(es) using predicate objects
|
|
b. V6 cross-reference multi-index container
|
|
b. V6 cross-reference multi-index container
|
|
c. Implement new query functions
|
|
c. Implement new query functions
|
|
|
|
|
|
1.5 MySQL Lease Mgr
|
|
1.4 MySQL Lease Mgr
|
|
a. V4 Generated columns/indexes (schema + SQL queries)
|
|
a. V4 Generated columns/indexes (schema + SQL queries)
|
|
b. V6 Cross-reference table and triggers (schema + SQL queries)
|
|
b. V6 Cross-reference table and triggers (schema + SQL queries)
|
|
c. Implement new query functions
|
|
c. Implement new query functions
|
|
|
|
|
|
1.6 PostgresSQL Lease Mgr
|
|
1.5 PostgresSQL Lease Mgr
|
|
a. Change lease4/6 user_context column from TEXT to JSONB, update existing SQL as needed
|
|
a. Change lease4/6 user_context column from TEXT to JSONB, update existing SQL as needed
|
|
b. V4 JSONB/GIN (schema + SQL queries)
|
|
b. V4 JSONB/GIN (schema + SQL queries)
|
|
c. V6 JSONB/GIN (schema + SQL queries)
|
|
c. V6 JSONB/GIN (schema + SQL queries)
|
... | @@ -687,8 +684,9 @@ The work breaks down into two parallel tracks: Query fulfillment and LeaseQueryL |
... | @@ -687,8 +684,9 @@ The work breaks down into two parallel tracks: Query fulfillment and LeaseQueryL |
|
d. CmdHttpListener -> LeaseQueryListener, self explanatory
|
|
d. CmdHttpListener -> LeaseQueryListener, self explanatory
|
|
|
|
|
|
2.2 Implement LeaseQueryConnection packet read and write logic (i.e. replace Transaction logic)
|
|
2.2 Implement LeaseQueryConnection packet read and write logic (i.e. replace Transaction logic)
|
|
2.3 Implement query queueing and QueryWorker, QueryWorker management
|
|
2.3 Implement BulkLeaseQuery, XidQuery, XidResponse classes
|
|
2.4 Utilize LeaseMgr BLQ interface to fetch results and build responses
|
|
2.4 Implement query queueing and QueryWorker, QueryWorker management
|
|
|
|
2.5 Utilize LeaseMgr BLQ interface to fetch results and build responses
|
|
|
|
|
|
3. LeaseQuery Hook/Integration
|
|
3. LeaseQuery Hook/Integration
|
|
3.1 Add callouts as needed
|
|
3.1 Add callouts as needed
|
... | | ... | |